ID:2130844
 
BYOND Version:510.1346
Operating System:Linux
Web Browser:Chrome 52.0.2743.85
Applies to:Dream Maker
Status: Open

Issue hasn't been assigned a status value.
Descriptive Problem Summary:
DM accepts pretty much anything that could be the name or path of a variable between var/ and /var/const/<name>

Numbered Steps to Reproduce Problem:
see code below

Code Snippet (if applicable) to Reproduce Problem:
var/foo/bar/var/const/x = 5
var/./var/const/y = 10

/world/New()
world.log << x // 5
world.log << y // 10

or
var/foo
var/const/x = 5

/world/New()
world.log << x // 5


Expected Results: Compilation failure due to weird var declarations

Actual Results: Compilation success, variables work as if defined as 'var/const/x' and 'var/const/y'

Does the problem occur:
Every time? Or how often? Every time
In other games? Yes
In other user accounts? Yes
On other computers? Yes

When does the problem NOT occur? N/A

Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? Unknown

Workarounds: Be careful with your vars?
Silly Dan.
This is related.

Here is a reason to be very careful what you name your vars, and procs as well.

This part of the language is a jumbled mess of undocumented quirks, where half of the time you can't figure out what DM is doing and DM doesn't know how to make sense of what you are telling it to do. Many things are incomplete and inconsistent. Using these features without knowing what problems they have is like naively climbing a mountain covered in land mines. You need a bunch of workarounds to actually reach the summit.