From f77ec1c8032ebd559dbcb2070c8356d688e261cc Mon Sep 17 00:00:00 2001 From: Cyrill Gorcunov Date: Thu, 17 Sep 2020 01:13:25 +0300 Subject: [PATCH 1/5] nasm-t: no need to strip json files The json library can handle newlines by self. Signed-off-by: Cyrill Gorcunov --- travis/nasm-t.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/travis/nasm-t.py b/travis/nasm-t.py index adcdbab9..ac976431 100755 --- a/travis/nasm-t.py +++ b/travis/nasm-t.py @@ -182,7 +182,7 @@ def read_json(path): try: with open(path, "rb") as f: try: - desc = json.loads(f.read().decode("utf-8").strip("\n")) + desc = json.loads(f.read().decode("utf-8")) except: desc = None finally: From 2f8a50d11e9b2059c6866da7de3737e71d7c7398 Mon Sep 17 00:00:00 2001 From: Cyrill Gorcunov Date: Thu, 17 Sep 2020 01:15:17 +0300 Subject: [PATCH 2/5] nasm-t: add fixme about data reading Signed-off-by: Cyrill Gorcunov --- travis/nasm-t.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/travis/nasm-t.py b/travis/nasm-t.py index ac976431..8345968c 100755 --- a/travis/nasm-t.py +++ b/travis/nasm-t.py @@ -361,6 +361,9 @@ def exec_nasm(desc): test_fail(desc['_test-name'], "Unable to execute test") return None + # + # FIXME: For now 4M buffer is enough but + # better provide reading in a cycle. stderr = pnasm.stderr.read(4194304).decode("utf-8").strip("\n") stdout = pnasm.stdout.read(4194304).decode("utf-8").strip("\n") From c2ea414eb343c6335a225021730c2f29a17a01d4 Mon Sep 17 00:00:00 2001 From: Cyrill Gorcunov Date: Thu, 17 Sep 2020 01:23:25 +0300 Subject: [PATCH 3/5] nasm-t: do not strip newlines from output Currently we strip newlines from files on read and write procedures for better diff output, but as being pointed by hpa@ this makes quite inconvenient to work with tests in a manual mode. Thus lets left outputs as is. We have to update all tests with template outputs since by default output streams are ending with newline. Signed-off-by: Cyrill Gorcunov --- travis/nasm-t.py | 10 +++++----- travis/test/_version.stdout | 2 +- travis/test/addr64x.stderr | 2 +- travis/test/align13.stderr | 2 +- travis/test/align13s.stderr | 2 +- travis/test/aoutso.stderr | 2 +- travis/test/bcd.stderr | 2 +- travis/test/br2222615.stderr | 2 +- travis/test/br2496848.stderr | 2 +- travis/test/br3041451.stderr | 2 +- travis/test/br3104312.stderr | 2 +- travis/test/br3200749.stderr | 2 +- travis/test/br3392392.stderr | 2 +- travis/test/br3392442.stderr | 2 +- travis/test/br3392528.stderr | 2 +- travis/test/br3392707-error.stderr | 2 +- travis/test/br3392707.stderr | 2 +- travis/test/br560575.stderr | 2 +- travis/test/clzero.stderr | 2 +- travis/test/elfso-o0.stderr | 2 +- travis/test/elfso-ox.stderr | 2 +- travis/test/expimp-o0-error.stderr | 2 +- travis/test/expimp-o0.stderr | 2 +- travis/test/expimp-o1.stderr | 2 +- travis/test/expimp-ox-error.stderr | 2 +- travis/test/floatb.stderr | 2 +- travis/test/fwdoptpp.error.stderr | 2 +- travis/test/fwdoptpp.fatal.stderr | 2 +- travis/test/fwdoptpp.warning.stderr | 2 +- travis/test/gotoff64.stderr | 2 +- travis/test/ifelse.stderr | 2 +- travis/test/imm64-o0.stderr | 2 +- travis/test/imm64-o1.stderr | 2 +- travis/test/imm64-ox.stderr | 2 +- travis/test/immwarn-o.stderr | 2 +- travis/test/immwarn.stderr | 2 +- travis/test/mout.stderr | 3 ++- travis/test/movimm-o0.stderr | 2 +- travis/test/movimm-ox.stderr | 2 +- travis/test/obj.stderr | 2 +- travis/test/org.stderr | 2 +- travis/test/prefix66.stderr | 2 +- travis/test/ret-16.stderr | 2 +- travis/test/ret-32.stderr | 2 +- travis/test/ret-64.stderr | 2 +- travis/test/riprel.stderr | 2 +- travis/test/testnos3.stderr | 2 +- travis/test/tmap.stderr | 2 +- travis/test/v4.stderr | 2 +- travis/test/vex.stderr | 2 +- travis/test/vmread.stderr | 2 +- 51 files changed, 56 insertions(+), 55 deletions(-) diff --git a/travis/nasm-t.py b/travis/nasm-t.py index 8345968c..b22249ed 100755 --- a/travis/nasm-t.py +++ b/travis/nasm-t.py @@ -117,7 +117,7 @@ if args.cmd == None: def read_stdfile(path): with open(path, "rb") as f: - data = f.read().decode("utf-8").strip("\n") + data = f.read().decode("utf-8") f.close() return data @@ -297,8 +297,8 @@ def show_diff(test, patha, pathb): pb = run_hexdump(pathb) if pa == None or pb == None: return test_fail(test, "Can't create dumps") - sa = pa.stdout.read().decode("utf-8").strip("\n") - sb = pb.stdout.read().decode("utf-8").strip("\n") + sa = pa.stdout.read().decode("utf-8") + sb = pb.stdout.read().decode("utf-8") print("\t--- hexdump %s" % (patha)) for i in sa.split("\n"): print("\t%s" % i) @@ -364,8 +364,8 @@ def exec_nasm(desc): # # FIXME: For now 4M buffer is enough but # better provide reading in a cycle. - stderr = pnasm.stderr.read(4194304).decode("utf-8").strip("\n") - stdout = pnasm.stdout.read(4194304).decode("utf-8").strip("\n") + stderr = pnasm.stderr.read(4194304).decode("utf-8") + stdout = pnasm.stdout.read(4194304).decode("utf-8") pnasm.stdout.close() pnasm.stderr.close() diff --git a/travis/test/_version.stdout b/travis/test/_version.stdout index 60f885f2..d743a81d 100644 --- a/travis/test/_version.stdout +++ b/travis/test/_version.stdout @@ -1 +1 @@ -NASM version 2.15rc0 compiled on Nov 3 2018 \ No newline at end of file +NASM version 2.15.05 compiled on Sep 17 2020 diff --git a/travis/test/addr64x.stderr b/travis/test/addr64x.stderr index 4c53e22d..5d1b3184 100644 --- a/travis/test/addr64x.stderr +++ b/travis/test/addr64x.stderr @@ -1,4 +1,4 @@ ./travis/test/addr64x.asm:5: warning: byte data exceeds bounds [-w+number-overflow] ./travis/test/addr64x.asm:5: warning: byte data exceeds bounds [-w+number-overflow] ./travis/test/addr64x.asm:6: warning: byte data exceeds bounds [-w+number-overflow] -./travis/test/addr64x.asm:6: warning: byte data exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/addr64x.asm:6: warning: byte data exceeds bounds [-w+number-overflow] diff --git a/travis/test/align13.stderr b/travis/test/align13.stderr index bc2da8c8..31d6e310 100644 --- a/travis/test/align13.stderr +++ b/travis/test/align13.stderr @@ -1,4 +1,4 @@ ./travis/test/align13.asm:7: error: segment alignment `13' is not power of two ./travis/test/align13.asm:10: error: segment alignment `13' is not power of two ./travis/test/align13.asm:13: error: segment alignment `13' is not power of two -./travis/test/align13.asm:14: error: segment alignment `13' is not power of two \ No newline at end of file +./travis/test/align13.asm:14: error: segment alignment `13' is not power of two diff --git a/travis/test/align13s.stderr b/travis/test/align13s.stderr index fe0337ae..18b01bd0 100644 --- a/travis/test/align13s.stderr +++ b/travis/test/align13s.stderr @@ -1,3 +1,3 @@ ./travis/test/align13s.asm:9: error: segment alignment `13' is not power of two ./travis/test/align13s.asm:12: error: segment alignment `13' is not power of two -./travis/test/align13s.asm:15: error: segment alignment `13' is not power of two \ No newline at end of file +./travis/test/align13s.asm:15: error: segment alignment `13' is not power of two diff --git a/travis/test/aoutso.stderr b/travis/test/aoutso.stderr index a1e07239..16572184 100644 --- a/travis/test/aoutso.stderr +++ b/travis/test/aoutso.stderr @@ -1 +1 @@ -./travis/test/aoutso.asm:79: warning: label alone on a line without a colon might be in error [-w+label-orphan] \ No newline at end of file +./travis/test/aoutso.asm:79: warning: label alone on a line without a colon might be in error [-w+label-orphan] diff --git a/travis/test/bcd.stderr b/travis/test/bcd.stderr index 9c065dc4..f7ce9a8b 100644 --- a/travis/test/bcd.stderr +++ b/travis/test/bcd.stderr @@ -1,2 +1,2 @@ ./travis/test/bcd.asm:9: warning: packed BCD truncated to 18 digits [-w+other] -./travis/test/bcd.asm:20: warning: packed BCD truncated to 18 digits [-w+other] \ No newline at end of file +./travis/test/bcd.asm:20: warning: packed BCD truncated to 18 digits [-w+other] diff --git a/travis/test/br2222615.stderr b/travis/test/br2222615.stderr index af4fcb70..7a051009 100644 --- a/travis/test/br2222615.stderr +++ b/travis/test/br2222615.stderr @@ -1 +1 @@ -./travis/test/br2222615.asm:14: error: `%ifnmacro' expects a macro name \ No newline at end of file +./travis/test/br2222615.asm:14: error: `%ifnmacro' expects a macro name diff --git a/travis/test/br2496848.stderr b/travis/test/br2496848.stderr index 3792f370..f406a252 100644 --- a/travis/test/br2496848.stderr +++ b/travis/test/br2496848.stderr @@ -22,4 +22,4 @@ ./travis/test/br2496848.asm:38: warning: byte data exceeds bounds [-w+number-overflow] ./travis/test/br2496848.asm:38: warning: byte data exceeds bounds [-w+number-overflow] ./travis/test/br2496848.asm:39: warning: byte data exceeds bounds [-w+number-overflow] -./travis/test/br2496848.asm:39: warning: byte data exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/br2496848.asm:39: warning: byte data exceeds bounds [-w+number-overflow] diff --git a/travis/test/br3041451.stderr b/travis/test/br3041451.stderr index 802a799c..c6025281 100644 --- a/travis/test/br3041451.stderr +++ b/travis/test/br3041451.stderr @@ -1,4 +1,4 @@ ./travis/test/br3041451.asm:17: warning: negative `%rep' count: -2 [-w+negative-rep] ./travis/test/br3041451.asm:28: warning: negative `%rep' count: -1 [-w+negative-rep] ./travis/test/br3041451.asm:39: warning: negative `%rep' count: -2 [-w+negative-rep] -./travis/test/br3041451.asm:50: warning: negative `%rep' count: -1 [-w+negative-rep] \ No newline at end of file +./travis/test/br3041451.asm:50: warning: negative `%rep' count: -1 [-w+negative-rep] diff --git a/travis/test/br3104312.stderr b/travis/test/br3104312.stderr index a7fbdb69..7674ab2e 100644 --- a/travis/test/br3104312.stderr +++ b/travis/test/br3104312.stderr @@ -1,2 +1,2 @@ ./travis/test/br3104312.asm:2: warning: No bug with 8000_0002h [-w+user] -./travis/test/br3104312.asm:8: warning: No bug with 8000_0001h [-w+user] \ No newline at end of file +./travis/test/br3104312.asm:8: warning: No bug with 8000_0001h [-w+user] diff --git a/travis/test/br3200749.stderr b/travis/test/br3200749.stderr index ce6ada2b..516edbc5 100644 --- a/travis/test/br3200749.stderr +++ b/travis/test/br3200749.stderr @@ -1,2 +1,2 @@ ./travis/test/br3200749.asm:4: error: label or instruction expected at start of line -./travis/test/br3200749.asm:6: error: label or instruction expected at start of line \ No newline at end of file +./travis/test/br3200749.asm:6: error: label or instruction expected at start of line diff --git a/travis/test/br3392392.stderr b/travis/test/br3392392.stderr index a40a0d48..3bc92fbe 100644 --- a/travis/test/br3392392.stderr +++ b/travis/test/br3392392.stderr @@ -1 +1 @@ -./travis/test/br3392392.asm:14: error: broadcast not allowed with register operand \ No newline at end of file +./travis/test/br3392392.asm:14: error: broadcast not allowed with register operand diff --git a/travis/test/br3392442.stderr b/travis/test/br3392442.stderr index cce8581a..c82b6305 100644 --- a/travis/test/br3392442.stderr +++ b/travis/test/br3392442.stderr @@ -1,2 +1,2 @@ ./travis/test/br3392442.asm:2: warning: byte data exceeds bounds [-w+number-overflow] -./travis/test/br3392442.asm:4: warning: byte data exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/br3392442.asm:4: warning: byte data exceeds bounds [-w+number-overflow] diff --git a/travis/test/br3392528.stderr b/travis/test/br3392528.stderr index 36fe3268..8a50487c 100644 --- a/travis/test/br3392528.stderr +++ b/travis/test/br3392528.stderr @@ -1,2 +1,2 @@ ./travis/test/br3392528.asm:1: error: parameter count `2222222222' is out of bounds [0; 2147483647] -./travis/test/br3392528.asm:1: error: parameter count `222222222211' is out of bounds [0; 2147483647] \ No newline at end of file +./travis/test/br3392528.asm:1: error: parameter count `222222222211' is out of bounds [0; 2147483647] diff --git a/travis/test/br3392707-error.stderr b/travis/test/br3392707-error.stderr index 837c1842..33d16321 100644 --- a/travis/test/br3392707-error.stderr +++ b/travis/test/br3392707-error.stderr @@ -1 +1 @@ -./travis/test/br3392707.asm:6: error: expecting `)' \ No newline at end of file +./travis/test/br3392707.asm:6: error: expecting `)' diff --git a/travis/test/br3392707.stderr b/travis/test/br3392707.stderr index 50b45dd2..023e0818 100644 --- a/travis/test/br3392707.stderr +++ b/travis/test/br3392707.stderr @@ -19,4 +19,4 @@ ./travis/test/br3392707.asm:22: warning: uninitialized space declared in .text section: zeroing [-w+zeroing] ./travis/test/br3392707.asm:22: warning: uninitialized space declared in .text section: zeroing [-w+zeroing] ./travis/test/br3392707.asm:22: warning: uninitialized space declared in .text section: zeroing [-w+zeroing] -./travis/test/br3392707.asm:23: warning: uninitialized space declared in .text section: zeroing [-w+zeroing] \ No newline at end of file +./travis/test/br3392707.asm:23: warning: uninitialized space declared in .text section: zeroing [-w+zeroing] diff --git a/travis/test/br560575.stderr b/travis/test/br560575.stderr index 873f9081..510e45a5 100644 --- a/travis/test/br560575.stderr +++ b/travis/test/br560575.stderr @@ -1,3 +1,3 @@ ./travis/test/br560575.asm:3: error: cannot apply SEG to a non-relocatable value ./travis/test/br560575.asm:4: error: cannot apply SEG to a non-relocatable value -./travis/test/br560575.asm:5: error: cannot apply SEG to a non-relocatable value \ No newline at end of file +./travis/test/br560575.asm:5: error: cannot apply SEG to a non-relocatable value diff --git a/travis/test/clzero.stderr b/travis/test/clzero.stderr index 1b312d33..0d89b423 100644 --- a/travis/test/clzero.stderr +++ b/travis/test/clzero.stderr @@ -1,3 +1,3 @@ ./travis/test/clzero.asm:7: error: instruction not supported in 16-bit mode ./travis/test/clzero.asm:16: error: instruction not supported in 32-bit mode -./travis/test/clzero.asm:23: error: instruction not supported in 64-bit mode \ No newline at end of file +./travis/test/clzero.asm:23: error: instruction not supported in 64-bit mode diff --git a/travis/test/elfso-o0.stderr b/travis/test/elfso-o0.stderr index bffa758b..853ae39f 100644 --- a/travis/test/elfso-o0.stderr +++ b/travis/test/elfso-o0.stderr @@ -1 +1 @@ -./travis/test/elfso.asm:83: warning: label alone on a line without a colon might be in error [-w+label-orphan] \ No newline at end of file +./travis/test/elfso.asm:83: warning: label alone on a line without a colon might be in error [-w+label-orphan] diff --git a/travis/test/elfso-ox.stderr b/travis/test/elfso-ox.stderr index bffa758b..853ae39f 100644 --- a/travis/test/elfso-ox.stderr +++ b/travis/test/elfso-ox.stderr @@ -1 +1 @@ -./travis/test/elfso.asm:83: warning: label alone on a line without a colon might be in error [-w+label-orphan] \ No newline at end of file +./travis/test/elfso.asm:83: warning: label alone on a line without a colon might be in error [-w+label-orphan] diff --git a/travis/test/expimp-o0-error.stderr b/travis/test/expimp-o0-error.stderr index 6fb20f52..3bbaf6f8 100644 --- a/travis/test/expimp-o0-error.stderr +++ b/travis/test/expimp-o0-error.stderr @@ -5,4 +5,4 @@ ./travis/test/expimp.asm:59: error: short jump is out of range ./travis/test/expimp.asm:59: warning: byte data exceeds bounds [-w+number-overflow] ./travis/test/expimp.asm:77: error: short jump is out of range -./travis/test/expimp.asm:77: warning: byte data exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/expimp.asm:77: warning: byte data exceeds bounds [-w+number-overflow] diff --git a/travis/test/expimp-o0.stderr b/travis/test/expimp-o0.stderr index 9a336950..aabd8cd3 100644 --- a/travis/test/expimp-o0.stderr +++ b/travis/test/expimp-o0.stderr @@ -1,4 +1,4 @@ ./travis/test/expimp.asm:17: warning: signed byte value exceeds bounds [-w+number-overflow] ./travis/test/expimp.asm:24: warning: signed byte value exceeds bounds [-w+number-overflow] ./travis/test/expimp.asm:31: warning: signed byte value exceeds bounds [-w+number-overflow] -./travis/test/expimp.asm:38: warning: signed byte value exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/expimp.asm:38: warning: signed byte value exceeds bounds [-w+number-overflow] diff --git a/travis/test/expimp-o1.stderr b/travis/test/expimp-o1.stderr index 9a336950..aabd8cd3 100644 --- a/travis/test/expimp-o1.stderr +++ b/travis/test/expimp-o1.stderr @@ -1,4 +1,4 @@ ./travis/test/expimp.asm:17: warning: signed byte value exceeds bounds [-w+number-overflow] ./travis/test/expimp.asm:24: warning: signed byte value exceeds bounds [-w+number-overflow] ./travis/test/expimp.asm:31: warning: signed byte value exceeds bounds [-w+number-overflow] -./travis/test/expimp.asm:38: warning: signed byte value exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/expimp.asm:38: warning: signed byte value exceeds bounds [-w+number-overflow] diff --git a/travis/test/expimp-ox-error.stderr b/travis/test/expimp-ox-error.stderr index 6fb20f52..3bbaf6f8 100644 --- a/travis/test/expimp-ox-error.stderr +++ b/travis/test/expimp-ox-error.stderr @@ -5,4 +5,4 @@ ./travis/test/expimp.asm:59: error: short jump is out of range ./travis/test/expimp.asm:59: warning: byte data exceeds bounds [-w+number-overflow] ./travis/test/expimp.asm:77: error: short jump is out of range -./travis/test/expimp.asm:77: warning: byte data exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/expimp.asm:77: warning: byte data exceeds bounds [-w+number-overflow] diff --git a/travis/test/floatb.stderr b/travis/test/floatb.stderr index 1c52aa05..5e1ee38f 100644 --- a/travis/test/floatb.stderr +++ b/travis/test/floatb.stderr @@ -3,4 +3,4 @@ ./travis/test/floatb.asm:53: warning: overflow in floating-point constant [-w+float-overflow] ./travis/test/floatb.asm:54: warning: overflow in floating-point constant [-w+float-overflow] ./travis/test/floatb.asm:55: warning: overflow in floating-point constant [-w+float-overflow] -./travis/test/floatb.asm:56: warning: overflow in floating-point constant [-w+float-overflow] \ No newline at end of file +./travis/test/floatb.asm:56: warning: overflow in floating-point constant [-w+float-overflow] diff --git a/travis/test/fwdoptpp.error.stderr b/travis/test/fwdoptpp.error.stderr index 73d62864..bdc17622 100644 --- a/travis/test/fwdoptpp.error.stderr +++ b/travis/test/fwdoptpp.error.stderr @@ -1 +1 @@ -./travis/test/fwdoptpp.asm:142: error: Out of space! \ No newline at end of file +./travis/test/fwdoptpp.asm:142: error: Out of space! diff --git a/travis/test/fwdoptpp.fatal.stderr b/travis/test/fwdoptpp.fatal.stderr index 14aef370..27a445e3 100644 --- a/travis/test/fwdoptpp.fatal.stderr +++ b/travis/test/fwdoptpp.fatal.stderr @@ -1 +1 @@ -./travis/test/fwdoptpp.asm:140: fatal: Out of space! \ No newline at end of file +./travis/test/fwdoptpp.asm:140: fatal: Out of space! diff --git a/travis/test/fwdoptpp.warning.stderr b/travis/test/fwdoptpp.warning.stderr index b861e96a..0c5db36b 100644 --- a/travis/test/fwdoptpp.warning.stderr +++ b/travis/test/fwdoptpp.warning.stderr @@ -1 +1 @@ -./travis/test/fwdoptpp.asm:144: warning: Out of space! [-w+user] \ No newline at end of file +./travis/test/fwdoptpp.asm:144: warning: Out of space! [-w+user] diff --git a/travis/test/gotoff64.stderr b/travis/test/gotoff64.stderr index f800f201..f4293a15 100644 --- a/travis/test/gotoff64.stderr +++ b/travis/test/gotoff64.stderr @@ -1,4 +1,4 @@ ./travis/test/gotoff64.asm:9: error: ELF64 requires ..gotoff references to be qword absolute ./travis/test/gotoff64.asm:10: error: ELF64 requires ..gotoff references to be qword absolute ./travis/test/gotoff64.asm:19: error: ELF64 requires ..gotoff references to be qword -./travis/test/gotoff64.asm:20: error: ELF64 requires ..gotoff references to be qword \ No newline at end of file +./travis/test/gotoff64.asm:20: error: ELF64 requires ..gotoff references to be qword diff --git a/travis/test/ifelse.stderr b/travis/test/ifelse.stderr index 1dddf4e2..5322c0c5 100644 --- a/travis/test/ifelse.stderr +++ b/travis/test/ifelse.stderr @@ -1,4 +1,4 @@ ./travis/test/ifelse.asm:17: warning: trailing garbage after `%else' ignored [-w+other] ./travis/test/ifelse.asm:19: warning: `%elif' after `%else' ignored [-w+other] ./travis/test/ifelse.asm:26: warning: trailing garbage after `%endif' ignored [-w+other] -./travis/test/ifelse.asm:33: warning: `%else' after `%else' ignored. [-w+other] \ No newline at end of file +./travis/test/ifelse.asm:33: warning: `%else' after `%else' ignored. [-w+other] diff --git a/travis/test/imm64-o0.stderr b/travis/test/imm64-o0.stderr index 4a6921de..5614f777 100644 --- a/travis/test/imm64-o0.stderr +++ b/travis/test/imm64-o0.stderr @@ -13,4 +13,4 @@ ./travis/test/imm64.asm:55: warning: signed dword immediate exceeds bounds [-w+number-overflow] ./travis/test/imm64.asm:55: warning: dword data exceeds bounds [-w+number-overflow] ./travis/test/imm64.asm:56: warning: signed dword immediate exceeds bounds [-w+number-overflow] -./travis/test/imm64.asm:56: warning: dword data exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/imm64.asm:56: warning: dword data exceeds bounds [-w+number-overflow] diff --git a/travis/test/imm64-o1.stderr b/travis/test/imm64-o1.stderr index 4a6921de..5614f777 100644 --- a/travis/test/imm64-o1.stderr +++ b/travis/test/imm64-o1.stderr @@ -13,4 +13,4 @@ ./travis/test/imm64.asm:55: warning: signed dword immediate exceeds bounds [-w+number-overflow] ./travis/test/imm64.asm:55: warning: dword data exceeds bounds [-w+number-overflow] ./travis/test/imm64.asm:56: warning: signed dword immediate exceeds bounds [-w+number-overflow] -./travis/test/imm64.asm:56: warning: dword data exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/imm64.asm:56: warning: dword data exceeds bounds [-w+number-overflow] diff --git a/travis/test/imm64-ox.stderr b/travis/test/imm64-ox.stderr index 4a6921de..5614f777 100644 --- a/travis/test/imm64-ox.stderr +++ b/travis/test/imm64-ox.stderr @@ -13,4 +13,4 @@ ./travis/test/imm64.asm:55: warning: signed dword immediate exceeds bounds [-w+number-overflow] ./travis/test/imm64.asm:55: warning: dword data exceeds bounds [-w+number-overflow] ./travis/test/imm64.asm:56: warning: signed dword immediate exceeds bounds [-w+number-overflow] -./travis/test/imm64.asm:56: warning: dword data exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/imm64.asm:56: warning: dword data exceeds bounds [-w+number-overflow] diff --git a/travis/test/immwarn-o.stderr b/travis/test/immwarn-o.stderr index 66291360..d0b8a59c 100644 --- a/travis/test/immwarn-o.stderr +++ b/travis/test/immwarn-o.stderr @@ -7,4 +7,4 @@ ./travis/test/immwarn.asm:75: warning: signed dword immediate exceeds bounds [-w+number-overflow] ./travis/test/immwarn.asm:75: warning: dword data exceeds bounds [-w+number-overflow] ./travis/test/immwarn.asm:79: warning: signed dword value exceeds bounds [-w+number-overflow] -./travis/test/immwarn.asm:89: warning: signed byte value exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/immwarn.asm:89: warning: signed byte value exceeds bounds [-w+number-overflow] diff --git a/travis/test/immwarn.stderr b/travis/test/immwarn.stderr index 95f34488..7fb73db6 100644 --- a/travis/test/immwarn.stderr +++ b/travis/test/immwarn.stderr @@ -8,4 +8,4 @@ ./travis/test/immwarn.asm:75: warning: dword data exceeds bounds [-w+number-overflow] ./travis/test/immwarn.asm:79: warning: signed dword immediate exceeds bounds [-w+number-overflow] ./travis/test/immwarn.asm:79: warning: dword data exceeds bounds [-w+number-overflow] -./travis/test/immwarn.asm:89: warning: signed byte value exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/immwarn.asm:89: warning: signed byte value exceeds bounds [-w+number-overflow] diff --git a/travis/test/mout.stderr b/travis/test/mout.stderr index 91148947..1fced891 100644 --- a/travis/test/mout.stderr +++ b/travis/test/mout.stderr @@ -1 +1,2 @@ -mout.bin: fatal: more than one output file specified: mout.bin \ No newline at end of file +mout.bin: fatal: more than one output file specified: mout.bin + diff --git a/travis/test/movimm-o0.stderr b/travis/test/movimm-o0.stderr index 916171b6..77ffe77e 100644 --- a/travis/test/movimm-o0.stderr +++ b/travis/test/movimm-o0.stderr @@ -7,4 +7,4 @@ ./travis/test/movimm.asm:11: warning: dword data exceeds bounds [-w+number-overflow] ./travis/test/movimm.asm:12: warning: signed dword immediate exceeds bounds [-w+number-overflow] ./travis/test/movimm.asm:12: warning: dword data exceeds bounds [-w+number-overflow] -./travis/test/movimm.asm:15: warning: dword data exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/movimm.asm:15: warning: dword data exceeds bounds [-w+number-overflow] diff --git a/travis/test/movimm-ox.stderr b/travis/test/movimm-ox.stderr index 916171b6..77ffe77e 100644 --- a/travis/test/movimm-ox.stderr +++ b/travis/test/movimm-ox.stderr @@ -7,4 +7,4 @@ ./travis/test/movimm.asm:11: warning: dword data exceeds bounds [-w+number-overflow] ./travis/test/movimm.asm:12: warning: signed dword immediate exceeds bounds [-w+number-overflow] ./travis/test/movimm.asm:12: warning: dword data exceeds bounds [-w+number-overflow] -./travis/test/movimm.asm:15: warning: dword data exceeds bounds [-w+number-overflow] \ No newline at end of file +./travis/test/movimm.asm:15: warning: dword data exceeds bounds [-w+number-overflow] diff --git a/travis/test/obj.stderr b/travis/test/obj.stderr index 7aba8112..01586d31 100644 --- a/travis/test/obj.stderr +++ b/travis/test/obj.stderr @@ -1,3 +1,3 @@ ./travis/test/obj.asm:70: warning: 32-bit segment relocation zero-extended from 16 bits [-w+zext-reloc] ./travis/test/obj.asm:71: warning: 64-bit unsigned relocation zero-extended from 32 bits [-w+zext-reloc] -./travis/test/obj.asm:71: warning: 64-bit segment relocation zero-extended from 16 bits [-w+zext-reloc] \ No newline at end of file +./travis/test/obj.asm:71: warning: 64-bit segment relocation zero-extended from 16 bits [-w+zext-reloc] diff --git a/travis/test/org.stderr b/travis/test/org.stderr index 431c1fdd..36fd0d42 100644 --- a/travis/test/org.stderr +++ b/travis/test/org.stderr @@ -1 +1 @@ -./travis/test/org.asm:5: error: parser: instruction expected \ No newline at end of file +./travis/test/org.asm:5: error: parser: instruction expected diff --git a/travis/test/prefix66.stderr b/travis/test/prefix66.stderr index 0d452455..850733fc 100644 --- a/travis/test/prefix66.stderr +++ b/travis/test/prefix66.stderr @@ -3,4 +3,4 @@ ./travis/test/prefix66.asm:13: warning: invalid operand size prefix [-w+other] ./travis/test/prefix66.asm:16: warning: invalid operand size prefix [-w+other] ./travis/test/prefix66.asm:22: warning: invalid operand size prefix [-w+other] -./travis/test/prefix66.asm:25: warning: invalid operand size prefix [-w+other] \ No newline at end of file +./travis/test/prefix66.asm:25: warning: invalid operand size prefix [-w+other] diff --git a/travis/test/ret-16.stderr b/travis/test/ret-16.stderr index 1994fe9d..6d901faf 100644 --- a/travis/test/ret-16.stderr +++ b/travis/test/ret-16.stderr @@ -1 +1 @@ -./travis/test/ret.asm:18: error: expression syntax error \ No newline at end of file +./travis/test/ret.asm:18: error: expression syntax error diff --git a/travis/test/ret-32.stderr b/travis/test/ret-32.stderr index b971af0e..1a42014b 100644 --- a/travis/test/ret-32.stderr +++ b/travis/test/ret-32.stderr @@ -1 +1 @@ -./travis/test/ret.asm:37: error: expression syntax error \ No newline at end of file +./travis/test/ret.asm:37: error: expression syntax error diff --git a/travis/test/ret-64.stderr b/travis/test/ret-64.stderr index f06987b3..47223e27 100644 --- a/travis/test/ret-64.stderr +++ b/travis/test/ret-64.stderr @@ -1 +1 @@ -./travis/test/ret.asm:53: error: expression syntax error \ No newline at end of file +./travis/test/ret.asm:53: error: expression syntax error diff --git a/travis/test/riprel.stderr b/travis/test/riprel.stderr index 80fbb9ea..782a615a 100644 --- a/travis/test/riprel.stderr +++ b/travis/test/riprel.stderr @@ -11917,4 +11917,4 @@ ./travis/test/riprel.asm:5354: warning: displacement size ignored on absolute address [-w+other] ./travis/test/riprel.asm:5354: warning: es segment base generated, but will be ignored in 64-bit mode [-w+other] ./travis/test/riprel.asm:5354: warning: es segment base generated, but will be ignored in 64-bit mode [-w+other] -./travis/test/riprel.asm:5354: warning: displacement size ignored on absolute address [-w+other] \ No newline at end of file +./travis/test/riprel.asm:5354: warning: displacement size ignored on absolute address [-w+other] diff --git a/travis/test/testnos3.stderr b/travis/test/testnos3.stderr index 84a1e476..6963a90f 100644 --- a/travis/test/testnos3.stderr +++ b/travis/test/testnos3.stderr @@ -1 +1 @@ -./travis/test/testnos3.asm:967: warning: floating-point constant significand contains more than 52 digits [-w+float-toolong] \ No newline at end of file +./travis/test/testnos3.asm:967: warning: floating-point constant significand contains more than 52 digits [-w+float-toolong] diff --git a/travis/test/tmap.stderr b/travis/test/tmap.stderr index 3cf4d563..c6505d03 100644 --- a/travis/test/tmap.stderr +++ b/travis/test/tmap.stderr @@ -1 +1 @@ -./travis/test/tmap.asm:938: warning: label alone on a line without a colon might be in error [-w+label-orphan] \ No newline at end of file +./travis/test/tmap.asm:938: warning: label alone on a line without a colon might be in error [-w+label-orphan] diff --git a/travis/test/v4.stderr b/travis/test/v4.stderr index ea92399d..0c2c406c 100644 --- a/travis/test/v4.stderr +++ b/travis/test/v4.stderr @@ -1,3 +1,3 @@ ./travis/test/v4.asm:13: error: register set not valid for operand ./travis/test/v4.asm:14: error: invalid register set size -./travis/test/v4.asm:15: error: invalid register set size \ No newline at end of file +./travis/test/v4.asm:15: error: invalid register set size diff --git a/travis/test/vex.stderr b/travis/test/vex.stderr index 2d8858bc..b7645c38 100644 --- a/travis/test/vex.stderr +++ b/travis/test/vex.stderr @@ -1 +1 @@ -./travis/test/vex.asm:8: error: specific encoding scheme not available \ No newline at end of file +./travis/test/vex.asm:8: error: specific encoding scheme not available diff --git a/travis/test/vmread.stderr b/travis/test/vmread.stderr index 84fb5282..78e91df2 100644 --- a/travis/test/vmread.stderr +++ b/travis/test/vmread.stderr @@ -3,4 +3,4 @@ ./travis/test/vmread.asm:19: error: instruction not supported in 64-bit mode ./travis/test/vmread.asm:20: error: instruction not supported in 64-bit mode ./travis/test/vmread.asm:22: error: invalid combination of opcode and operands -./travis/test/vmread.asm:23: error: invalid combination of opcode and operands \ No newline at end of file +./travis/test/vmread.asm:23: error: invalid combination of opcode and operands From 723fb2cc3309b9963620e8b54f3709e7a3331c57 Mon Sep 17 00:00:00 2001 From: Ozkan Sezer Date: Mon, 5 Oct 2020 00:41:40 +0300 Subject: [PATCH 4/5] rdoff/rdfwriteheader: Write object length and header length in correct order Compared to 2.12.xx rdfwriteheader() writes the object length and header length in flipped order. Issue seems to have been introduced by commit 8dc965347ddf. BR3392717 Signed-off-by: Ozkan Sezer Signed-off-by: Cyrill Gorcunov --- rdoff/rdoff.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rdoff/rdoff.c b/rdoff/rdoff.c index 77f2b42f..3057f84f 100644 --- a/rdoff/rdoff.c +++ b/rdoff/rdoff.c @@ -612,8 +612,8 @@ int rdfwriteheader(FILE * fp, rdf_headerbuf * h) l = membuflength(h->buf); l2 = l + 14 + 10 * h->nsegments + h->seglength; - fwriteint32_t(l, fp); - fwriteint32_t(l2, fp); + fwriteint32_t(l2, fp); /* object length */ + fwriteint32_t(l, fp); /* header length */ membufdump(h->buf, fp); From e7c2f0e51cad609fb24f1cab5594c5b210f797b1 Mon Sep 17 00:00:00 2001 From: Cyrill Gorcunov Date: Sat, 10 Oct 2020 13:36:54 +0300 Subject: [PATCH 5/5] doc/changes: Document rdf header fix Signed-off-by: Cyrill Gorcunov --- doc/changes.src | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/doc/changes.src b/doc/changes.src index 8aab8fc5..cc695122 100644 --- a/doc/changes.src +++ b/doc/changes.src @@ -7,6 +7,11 @@ The NASM 2 series supports x86-64, and is the production version of NASM since 2007. +\S{cl-2.15.06} Version 2.15.06 + +\b Fix object and header length in \c{rdf} format. +It is been broken in 2.13.xx series. + \S{cl-2.15.05} Version 2.15.05 \b Fix \c{%ifid $} and \c{%ifid $$} incorrectly being treated as