Signed32 and Unsigned32 will sometimes be set to 65536 on initialization with arguments that should set it to zero. Refer to the code snippet below for demonstration.
Error found by Reformist and reported to me by pager.
Numbered Steps to Reproduce Problem:
Refer to the code snippet below
Code Snippet (if applicable) to Reproduce Problem:
mob/Login()
var/pif_LongInt
Signed32/S = new(null)
Unsigned32/U = new(null)
world << S.Print()
world << U.Print()
Expected Results:
That both lines would output 0, per the specification.
Actual Results:
Both lines output 65536.
Workarounds:
Use other argument formats to indicate 0.