Setting a variable to type::some_var doesn't work in the latest version of 515, whereas in 515.1635 it did.
parent_type::some_var works fine.
Numbered Steps to Reproduce Problem:
1. Try to define a variable's value as type::some_other_var.
2. Compilation error.
Code Snippet (if applicable) to Reproduce Problem:
/datum
var/my_thing = "waaa"
/datum/foo
var/my_other_thing = type::my_thing
/world/New()
world.log << json_encode(/datum/foo::my_other_thing)
Expected Results:
Outputs "waaa".
Actual Results:
error, line 6: /datum/foo::my_other_thing: compile failed (possible infinite cross-reference loop) error, line 4: type::my_thing: compile failed (possible infinite cross-reference loop)
Does the problem occur:
Every time? Or how often? Every time in the latest version of 515.
In other games? Yes.
In other user accounts? Yes.
On other computers? Yes.
When does the problem NOT occur?
On BYOND 515.1635.
Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)
I haven't tested it myself, but others report that 515.1635 and earlier work just fine.
Workarounds:
Use 515.1635 or earlier, or paste the type directly instead of being lazy like me. I tried using __TYPE__ instead of type, and that just gave a different error message. In circumstances where it can be used instead, parent_type::some_var works fine.