ID:2321852
 
Resolved
A change to the compilation of various arithmetic operators turned out to be broken, so it has been reverted.
BYOND Version:512.1396
Operating System:Windows 7 Ultimate 64-bit
Web Browser:Chrome 63.0.3239.70
Applies to:Dream Maker
Status: Resolved (512.1397)

This issue has been resolved.
Descriptive Problem Summary:
/client/verb/test()
var/test = "sometext"
test = " " + test


runtime error: type mismatch: "sometext" + 5.03066e-043


dmb compiled with 1396 ran in 1395 break

dmb compiled with 1395 ran in 1396 are fine.
There were other bugs relating to +.

A system that did a lot of list merging using + and | was flat broke, likely similar issue (but not immediately reproducing)

because our world/Error() did string appending like this, it also broke, so I don't have as much info about the runtimes we were seeing, but a 20 minute round on 1396 had 12 thousand runtimes. (meaning we also know that ++ was working)
Dang. I'll take a look at this and get 1397 out ASAP to patch the issue. Something must have gone wrong in the new logic when I adjusted the way the compiler tries to shortcut math operations.
Lummox JR resolved issue with message:
A change to the compilation of various arithmetic operators turned out to be broken, so it has been reverted.