When compiling const expressions with dm.exe -o, the output XML does not contain the result of the expression but a broken version of the expression instead.
Numbered Steps to Reproduce Problem:
Compile below code snippet with the command line compiler's -o option:
Code Snippet (if applicable) to Reproduce Problem:
var/const/one = 1
var/const/two = 2
var/something = one + two
The result of this code snippet is the following:
<var file="test.dm:1">one
<val file="test.dm:1">1</val>
</var>
<var file="test.dm:2">two
<val file="test.dm:2">2</val>
</var>
<var file="test.dm:4">something
<val file="test.dm:4">onetwo</val>
</var>
Expected Results:
The expression would either be unchanged in the output or the result of the expression would be put in the XML.
Actual Results:
It does not, and the expression gets non alphanumerical characters cut out, making it completely useless to parsing.
Does the problem occur:
Every time? Or how often? 100%
In other games? N/A
In other user accounts? N/A
On other computers? Yes
When does the problem NOT occur?
Don't use constant vars / don't try to parse dm.exe -o
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.) Untested
Workarounds:
Manually parse the expression based on line number, oh god.