ID:83489
 
BYOND Version:454
Operating System:Windows XP Pro
Web Browser:
Status: Deferred

This issue may be low priority or very difficult to fix, and has been put on the back burner for the time being.
Descriptive Problem Summary:
Dream Maker seems not to error-check argument names and allows compilation even when there are ones that are completely invalid or don't even make sense at all.

Code Snippet (if applicable) to Reproduce Problem:
//note: the parentheses after arg names are optional for reproducing this

mob/proc/MyProc(a.b.c.d,src.Login(),src.Move()(),src.Del(),src.blabla6,world.contents,world.wtf)
src << "MYPROC START"
for(var/a in args)
src << "arg [a]"

//src << a.b.c.d
//src << src.blabla6
//src << world.wtf
src << src.Login
src << src.Move
src << "MYPROC END"


mob/verb/MYPROC_TEST()
src.MyProc(1,2,3,4,5,6,7)


Expected Results of Snippet:
The code does not compile, catching every single argument declaration as an error, as well as all the lines trying to access those arguments.

Actual Results:
Everything compiles fine with no errors (except the 3 commented out lines, which are correctly caught as an error).
At runtime, the arguments' values are read correctly using the for() loop, however the proc dies once it reaches a line that tries to access the args by var name.

Does the problem occur:
Every time? Or how often? Every time.
On other computers? Yes (inferred by ID 721979,ID 721838)
P.S. while we're on that, how about supporting the ID: notation here for the Dream Makers forums? Hey, we could use it when we had the Bug Reports section! >_>

Did the problem NOT occur in any earlier versions?

Unknown, I'd assume it's there for a long long time.

Workarounds:
Write your code properly. Heh.