intnum folding on and leveling performed would result in terms getting copied
over due to hitting o != i case after i++ but no o++.
Bugzilla: #12.
Reported by: meor@softhome.net
svn path=/trunk/yasm/; revision=1009
} else if (o != i) {
/* copy term if it changed places */
e->terms[o++] = e->terms[i];
- }
+ } else
+ o++;
}
if (simplify_ident)
EXTRA_DIST += modules/objfmts/bin/tests/integer.asm
EXTRA_DIST += modules/objfmts/bin/tests/integer.hex
EXTRA_DIST += modules/objfmts/bin/tests/integer.errwarn
+EXTRA_DIST += modules/objfmts/bin/tests/levelop.asm
+EXTRA_DIST += modules/objfmts/bin/tests/levelop.hex
+EXTRA_DIST += modules/objfmts/bin/tests/levelop.errwarn
EXTRA_DIST += modules/objfmts/bin/tests/reserve.asm
EXTRA_DIST += modules/objfmts/bin/tests/reserve.hex
EXTRA_DIST += modules/objfmts/bin/tests/reserve.errwarn
--- /dev/null
+test1:
+mov word [0x0010 + (test2 - test1)], 0x0000
+mov word [0x0010 + test2 - test1], 0x0000
+test2:
--- /dev/null
+c7
+06
+1c
+00
+00
+00
+c7
+06
+1c
+00
+00
+00