ID:2958638
 
BYOND Version:515
Operating System:Windows 10 Pro 64-bit
Web Browser:Chrome 131.0.0.0
Applies to:Dream Maker
Status: Open

Issue hasn't been assigned a status value.
Descriptive Problem Summary:

parent
New()
var/parent/child/child = new .child()

child
New()


This creates an infinite cross-reference loop when it shouldn't. the . path operator should be getting processed here first from __TYPE__, which in this context is /parent.

It appears that somehow the compiler is interpreting child to be a reference to the variable we're creating, rather than an upward path search as intended.

Weirdly, this only happens when declaring a var:

parent
New()
var/parent/child/child
child = new .child()
child
New()


This compiles fine.

Login to reply.