# testing file to try to reproduce bugs as best as possible # 8x4 bytes struct AddressError { uint a, b, c, d } /; method AddressError /; if_check [bool] /; if (self.a < 0 && self.b !< self.d / 4) return true ;; else if (self.c == 0) return false ;/ return self.d != 1 ;/ ;/ /; main (int argc, ~~uint argv) [int] # On windows, the first two arguments are passed in RCX and RDX, so we need to # update their positions here or else tnsl will have garbage values in r8 and r9 asm "mov r8, rcx" asm "mov r9, rdx" AddressError ae ae.a = ae.b = ae.c = ae.d = 0 /; if (ae.if_check()) return 1 ;/ return 0 ;/