mirror of
https://github.com/gbdev/rgbds.git
synced 2025-11-20 10:12:06 +00:00
Add -B/--backtrace option to RGBASM and RGBLINK (#1787)
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
warning: assert.asm(5): [-Wassert]
|
||||
Worry about me, but not too much.
|
||||
error: assert.asm(6): Okay, this is getting serious!
|
||||
FATAL: assert.asm(7): It all ends now.
|
||||
warning: Worry about me, but not too much. [-Wassert]
|
||||
at assert.asm(5)
|
||||
error: Okay, this is getting serious!
|
||||
at assert.asm(6)
|
||||
FATAL: It all ends now.
|
||||
at assert.asm(7)
|
||||
Linking aborted with 2 errors
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
error: bank-const/b.asm(2): Requested BANK() of non-label symbol "CONSTANT"
|
||||
error: Requested BANK() of non-label symbol "CONSTANT"
|
||||
at bank-const/b.asm(2)
|
||||
Linking failed with 1 error
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
error: bit-res-set-bad.asm(5): Value $ff00 is not a bit index
|
||||
error: bit-res-set-bad.asm(4): Value $8 is not a bit index
|
||||
error: bit-res-set-bad.asm(3): Value $ffffffff is not a bit index
|
||||
error: Value $ff00 is not a bit index
|
||||
at bit-res-set-bad.asm(5)
|
||||
error: Value $8 is not a bit index
|
||||
at bit-res-set-bad.asm(4)
|
||||
error: Value $ffffffff is not a bit index
|
||||
at bit-res-set-bad.asm(3)
|
||||
Linking failed with 3 errors
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
error: cascading-errors-fatal-assert.asm(1): Undefined symbol "UnknownSymbol"
|
||||
FATAL: cascading-errors-fatal-assert.asm(1): Failed to evaluate assertion
|
||||
error: Undefined symbol "UnknownSymbol"
|
||||
at cascading-errors-fatal-assert.asm(1)
|
||||
FATAL: Failed to evaluate assertion
|
||||
at cascading-errors-fatal-assert.asm(1)
|
||||
Linking aborted with 2 errors
|
||||
|
||||
@@ -1,11 +1,21 @@
|
||||
error: cascading-errors.asm(18): Undefined symbol "Foo"
|
||||
error: cascading-errors.asm(19): Undefined symbol "Bar"
|
||||
error: cascading-errors.asm(16): Undefined symbol "hNonExist"
|
||||
error: cascading-errors.asm(14): Undefined symbol "NonExist"
|
||||
error: cascading-errors.asm(12): Undefined symbol "Foo"
|
||||
error: cascading-errors.asm(10): Undefined symbol "Foo"
|
||||
error: cascading-errors.asm(10): Division by 0
|
||||
error: cascading-errors.asm(9): Undefined symbol "Foo"
|
||||
error: cascading-errors.asm(9): Undefined symbol "Bar"
|
||||
error: cascading-errors.asm(8): Undefined symbol "Bar"
|
||||
error: Undefined symbol "Foo"
|
||||
at cascading-errors.asm(18)
|
||||
error: Undefined symbol "Bar"
|
||||
at cascading-errors.asm(19)
|
||||
error: Undefined symbol "hNonExist"
|
||||
at cascading-errors.asm(16)
|
||||
error: Undefined symbol "NonExist"
|
||||
at cascading-errors.asm(14)
|
||||
error: Undefined symbol "Foo"
|
||||
at cascading-errors.asm(12)
|
||||
error: Undefined symbol "Foo"
|
||||
at cascading-errors.asm(10)
|
||||
error: Division by 0
|
||||
at cascading-errors.asm(10)
|
||||
error: Undefined symbol "Foo"
|
||||
at cascading-errors.asm(9)
|
||||
error: Undefined symbol "Bar"
|
||||
at cascading-errors.asm(9)
|
||||
error: Undefined symbol "Bar"
|
||||
at cascading-errors.asm(8)
|
||||
Linking failed with 10 errors
|
||||
|
||||
@@ -1 +1,5 @@
|
||||
error: Section "Frag" is defined with 2-byte alignment (offset 1) at fragment-align/base-bad/a.asm(2), but with 4-byte alignment (offset 3) at fragment-align/base-bad/b.asm(2)
|
||||
FATAL: Section "Frag" is defined with 2-byte alignment (offset 1), but also with 4-byte alignment (offset 3)
|
||||
at fragment-align/base-bad/a.asm(2)
|
||||
and also:
|
||||
at fragment-align/base-bad/b.asm(2)
|
||||
Linking aborted with 1 error
|
||||
|
||||
@@ -1 +1,5 @@
|
||||
error: Section "Frag" is defined with address $0000 at fragment-align/org-bad/a.asm(2), but with 4-byte alignment (offset 2) at fragment-align/org-bad/b.asm(2)
|
||||
FATAL: Section "Frag" is defined with address $0000, but also with 4-byte alignment (offset 2)
|
||||
at fragment-align/org-bad/a.asm(2)
|
||||
and also:
|
||||
at fragment-align/org-bad/b.asm(2)
|
||||
Linking aborted with 1 error
|
||||
|
||||
@@ -1 +1,5 @@
|
||||
error: Section "Frag" is defined with 4-byte alignment (offset 1) at fragment-align/org-rev-bad/a.asm(6), but with address $0006 at fragment-align/org-rev-bad/b.asm(2)
|
||||
FATAL: Section "Frag" is defined with 4-byte alignment (offset 1), but also with address $0006
|
||||
at fragment-align/org-rev-bad/a.asm(6)
|
||||
and also:
|
||||
at fragment-align/org-rev-bad/b.asm(2)
|
||||
Linking aborted with 1 error
|
||||
|
||||
@@ -1,9 +1,17 @@
|
||||
error: invalid-patches.asm(10): JR target must be between -128 and 127 bytes away, not 190; use JP instead
|
||||
error: invalid-patches.asm(9): Address $0 for LDH is not in HRAM range
|
||||
error: invalid-patches.asm(8): Requested SIZEOF() of undefined section "NonexistentSection"
|
||||
error: invalid-patches.asm(7): Requested STARTOF() of undefined section "NonexistentSection"
|
||||
error: invalid-patches.asm(6): Requested BANK() of undefined section "NonexistentSection"
|
||||
error: invalid-patches.asm(5): Requested BANK() of undefined symbol "NonexistentSymbol"
|
||||
error: invalid-patches.asm(4): Exponent by negative value -1
|
||||
error: invalid-patches.asm(3): Modulo by 0
|
||||
error: JR target must be between -128 and 127 bytes away, not 190; use JP instead
|
||||
at invalid-patches.asm(10)
|
||||
error: Address $0 for LDH is not in HRAM range
|
||||
at invalid-patches.asm(9)
|
||||
error: Requested SIZEOF() of undefined section "NonexistentSection"
|
||||
at invalid-patches.asm(8)
|
||||
error: Requested STARTOF() of undefined section "NonexistentSection"
|
||||
at invalid-patches.asm(7)
|
||||
error: Requested BANK() of undefined section "NonexistentSection"
|
||||
at invalid-patches.asm(6)
|
||||
error: Requested BANK() of undefined symbol "NonexistentSymbol"
|
||||
at invalid-patches.asm(5)
|
||||
error: Exponent by negative value -1
|
||||
at invalid-patches.asm(4)
|
||||
error: Modulo by 0
|
||||
at invalid-patches.asm(3)
|
||||
Linking failed with 8 errors
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
error: ldh-bad.asm(2): Address $1234 for LDH is not in HRAM range
|
||||
error: Address $1234 for LDH is not in HRAM range
|
||||
at ldh-bad.asm(2)
|
||||
Linking failed with 1 error
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
warning: patch-diagnostics.asm(10): [-Wshift-amount]
|
||||
Shifting right by large amount 32
|
||||
warning: patch-diagnostics.asm(9): [-Wshift-amount]
|
||||
Shifting right by negative amount -1
|
||||
warning: patch-diagnostics.asm(8): [-Wshift-amount]
|
||||
Shifting right by large amount 32
|
||||
warning: patch-diagnostics.asm(7): [-Wshift-amount]
|
||||
Shifting right by negative amount -1
|
||||
warning: patch-diagnostics.asm(6): [-Wshift]
|
||||
Shifting right negative value -1
|
||||
warning: patch-diagnostics.asm(5): [-Wshift-amount]
|
||||
Shifting left by large amount 32
|
||||
warning: patch-diagnostics.asm(4): [-Wshift-amount]
|
||||
Shifting left by negative amount -1
|
||||
warning: patch-diagnostics.asm(3): [-Wdiv]
|
||||
Division of -2147483648 by -1 yields -2147483648
|
||||
warning: patch-diagnostics.asm(3): [-Wtruncation]
|
||||
Value $80000000 (may be negative?) is not 8-bit
|
||||
warning: Shifting right by large amount 32 [-Wshift-amount]
|
||||
at patch-diagnostics.asm(10)
|
||||
warning: Shifting right by negative amount -1 [-Wshift-amount]
|
||||
at patch-diagnostics.asm(9)
|
||||
warning: Shifting right by large amount 32 [-Wshift-amount]
|
||||
at patch-diagnostics.asm(8)
|
||||
warning: Shifting right by negative amount -1 [-Wshift-amount]
|
||||
at patch-diagnostics.asm(7)
|
||||
warning: Shifting right negative value -1 [-Wshift]
|
||||
at patch-diagnostics.asm(6)
|
||||
warning: Shifting left by large amount 32 [-Wshift-amount]
|
||||
at patch-diagnostics.asm(5)
|
||||
warning: Shifting left by negative amount -1 [-Wshift-amount]
|
||||
at patch-diagnostics.asm(4)
|
||||
warning: Division of -2147483648 by -1 yields -2147483648 [-Wdiv]
|
||||
at patch-diagnostics.asm(3)
|
||||
warning: Value $80000000 (may be negative?) is not 8-bit [-Wtruncation]
|
||||
at patch-diagnostics.asm(3)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
warning: patch-overflow.asm(3): [-Wtruncation]
|
||||
Value $14000 is not 16-bit
|
||||
warning: patch-overflow.asm(2): [-Wtruncation]
|
||||
Value $4000 is not 8-bit
|
||||
warning: Value $14000 is not 16-bit [-Wtruncation]
|
||||
at patch-overflow.asm(3)
|
||||
warning: Value $4000 is not 8-bit [-Wtruncation]
|
||||
at patch-overflow.asm(2)
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
error: rst-bad.asm(2): Value $1 is not a RST vector
|
||||
error: Value $1 is not a RST vector
|
||||
at rst-bad.asm(2)
|
||||
Linking failed with 1 error
|
||||
|
||||
@@ -1 +1,5 @@
|
||||
error: Section "test" is defined as SECTION FRAGMENT at section-conflict/different-mod/a.asm(1), but as SECTION UNION at section-conflict/different-mod/b.asm(1)
|
||||
FATAL: Section "test" is defined as SECTION FRAGMENT, but also as SECTION UNION
|
||||
at section-conflict/different-mod/a.asm(1)
|
||||
and also:
|
||||
at section-conflict/different-mod/b.asm(1)
|
||||
Linking aborted with 1 error
|
||||
|
||||
@@ -1 +1,5 @@
|
||||
error: Section "Same" is defined at section-normal/same-name/a.asm(1), but also at section-normal/same-name/b.asm(1)
|
||||
FATAL: Section "Same" is already defined
|
||||
at section-normal/same-name/a.asm(1)
|
||||
and also:
|
||||
at section-normal/same-name/b.asm(1)
|
||||
Linking aborted with 1 error
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
error: Section "conflicting alignment" is defined with 4-byte alignment (offset 0) at section-union/align-conflict.asm(7), but with address $cafe at section-union/align-conflict.asm(7)
|
||||
FATAL: Section "conflicting alignment" is defined with 4-byte alignment (offset 0), but also with address $cafe
|
||||
at section-union/align-conflict.asm(7)
|
||||
and also:
|
||||
at section-union/align-conflict.asm(7)
|
||||
Linking aborted with 1 error
|
||||
---
|
||||
error: <stdin>(18):
|
||||
Section already declared as aligned to 4 bytes (offset 0)
|
||||
FATAL: <stdin>(18):
|
||||
Cannot create section "conflicting alignment" (1 error)
|
||||
error: Section already declared as aligned to 4 bytes (offset 0)
|
||||
at <stdin>(18)
|
||||
FATAL: Cannot create section "conflicting alignment" (1 error)
|
||||
at <stdin>(18)
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
error: Section "conflicting alignment" is defined with 8-byte alignment (offset 7) at section-union/align-ofs-conflict.asm(7), but with 16-byte alignment (offset 14) at section-union/align-ofs-conflict.asm(7)
|
||||
FATAL: Section "conflicting alignment" is defined with 8-byte alignment (offset 7), but also with 16-byte alignment (offset 14)
|
||||
at section-union/align-ofs-conflict.asm(7)
|
||||
and also:
|
||||
at section-union/align-ofs-conflict.asm(7)
|
||||
Linking aborted with 1 error
|
||||
---
|
||||
error: <stdin>(18):
|
||||
Section already declared with incompatible 8-byte alignment (offset 7)
|
||||
FATAL: <stdin>(18):
|
||||
Cannot create section "conflicting alignment" (1 error)
|
||||
error: Section already declared with incompatible 8-byte alignment (offset 7)
|
||||
at <stdin>(18)
|
||||
FATAL: Cannot create section "conflicting alignment" (1 error)
|
||||
at <stdin>(18)
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
error: section-union/assert.asm(11): Force failing the build
|
||||
error: Force failing the build
|
||||
at section-union/assert.asm(11)
|
||||
Linking failed with 1 error
|
||||
---
|
||||
error: <stdin>(30):
|
||||
Assertion failed: Force failing the build
|
||||
error: Assertion failed: Force failing the build
|
||||
at <stdin>(30)
|
||||
Assembly aborted with 1 error!
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
error: Section "conflicting types" is defined with type HRAM at section-union/bad-types.asm(7), but with type WRAM0 at section-union/bad-types.asm(7)
|
||||
FATAL: Section "conflicting types" is defined with type HRAM, but also with type WRAM0
|
||||
at section-union/bad-types.asm(7)
|
||||
and also:
|
||||
at section-union/bad-types.asm(7)
|
||||
Linking aborted with 1 error
|
||||
---
|
||||
error: <stdin>(18):
|
||||
Section already exists but with type HRAM
|
||||
FATAL: <stdin>(18):
|
||||
Cannot create section "conflicting types" (1 error)
|
||||
error: Section already exists but with type HRAM
|
||||
at <stdin>(18)
|
||||
FATAL: Cannot create section "conflicting types" (1 error)
|
||||
at <stdin>(18)
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
error: Section "conflicting banks" is defined with bank 4 at section-union/bank-conflict.asm(5), but with bank 1 at section-union/bank-conflict.asm(5)
|
||||
FATAL: Section "conflicting banks" is defined with bank 4, but also with bank 1
|
||||
at section-union/bank-conflict.asm(5)
|
||||
and also:
|
||||
at section-union/bank-conflict.asm(5)
|
||||
Linking aborted with 1 error
|
||||
---
|
||||
error: <stdin>(14):
|
||||
Section already declared with different bank 4
|
||||
FATAL: <stdin>(14):
|
||||
Cannot create section "conflicting banks" (1 error)
|
||||
error: Section already declared with different bank 4
|
||||
at <stdin>(14)
|
||||
FATAL: Cannot create section "conflicting banks" (1 error)
|
||||
at <stdin>(14)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
FATAL: Section "overlaid data" is of type ROM0, which cannot be unionized
|
||||
Linking aborted with 1 error
|
||||
---
|
||||
error: <stdin>(18):
|
||||
Cannot declare ROM sections as UNION
|
||||
FATAL: <stdin>(18):
|
||||
Cannot create section "overlaid data" (1 error)
|
||||
error: Cannot declare ROM sections as UNION
|
||||
at <stdin>(18)
|
||||
FATAL: Cannot create section "overlaid data" (1 error)
|
||||
at <stdin>(18)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
FATAL: Section "different data" is of type ROM0, which cannot be unionized
|
||||
Linking aborted with 1 error
|
||||
---
|
||||
error: <stdin>(16):
|
||||
Cannot declare ROM sections as UNION
|
||||
FATAL: <stdin>(16):
|
||||
Cannot create section "different data" (1 error)
|
||||
error: Cannot declare ROM sections as UNION
|
||||
at <stdin>(16)
|
||||
FATAL: Cannot create section "different data" (1 error)
|
||||
at <stdin>(16)
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
error: Section "conflicting alignment" is defined with 8-byte alignment (offset 7) at section-union/different-ofs.asm(7), but with 8-byte alignment (offset 6) at section-union/different-ofs.asm(7)
|
||||
FATAL: Section "conflicting alignment" is defined with 8-byte alignment (offset 7), but also with 8-byte alignment (offset 6)
|
||||
at section-union/different-ofs.asm(7)
|
||||
and also:
|
||||
at section-union/different-ofs.asm(7)
|
||||
Linking aborted with 1 error
|
||||
---
|
||||
error: <stdin>(18):
|
||||
Section already declared with incompatible 8-byte alignment (offset 7)
|
||||
FATAL: <stdin>(18):
|
||||
Cannot create section "conflicting alignment" (1 error)
|
||||
error: Section already declared with incompatible 8-byte alignment (offset 7)
|
||||
at <stdin>(18)
|
||||
FATAL: Cannot create section "conflicting alignment" (1 error)
|
||||
at <stdin>(18)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
FATAL: Section "different section sizes" is of type ROM0, which cannot be unionized
|
||||
Linking aborted with 1 error
|
||||
---
|
||||
error: <stdin>(16):
|
||||
Cannot declare ROM sections as UNION
|
||||
FATAL: <stdin>(16):
|
||||
Cannot create section "different section sizes" (1 error)
|
||||
error: Cannot declare ROM sections as UNION
|
||||
at <stdin>(16)
|
||||
FATAL: Cannot create section "different section sizes" (1 error)
|
||||
at <stdin>(16)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
FATAL: Section "different syntaxes" is of type ROM0, which cannot be unionized
|
||||
Linking aborted with 1 error
|
||||
---
|
||||
error: <stdin>(18):
|
||||
Cannot declare ROM sections as UNION
|
||||
FATAL: <stdin>(18):
|
||||
Cannot create section "different syntaxes" (1 error)
|
||||
error: Cannot declare ROM sections as UNION
|
||||
at <stdin>(18)
|
||||
FATAL: Cannot create section "different syntaxes" (1 error)
|
||||
at <stdin>(18)
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
error: Section "conflicting address" is defined with address $beef at section-union/org-conflict.asm(7), but with address $babe at section-union/org-conflict.asm(7)
|
||||
FATAL: Section "conflicting address" is defined with address $beef, but also with address $babe
|
||||
at section-union/org-conflict.asm(7)
|
||||
and also:
|
||||
at section-union/org-conflict.asm(7)
|
||||
Linking aborted with 1 error
|
||||
---
|
||||
error: <stdin>(16):
|
||||
Section already declared as fixed at different address $beef
|
||||
FATAL: <stdin>(16):
|
||||
Cannot create section "conflicting address" (1 error)
|
||||
error: Section already declared as fixed at different address $beef
|
||||
at <stdin>(16)
|
||||
FATAL: Cannot create section "conflicting address" (1 error)
|
||||
at <stdin>(16)
|
||||
|
||||
@@ -1 +1,5 @@
|
||||
error: "Same" is defined as a label at section-union/same-export/b.asm(2), but as another label at section-union/same-export/a.asm(2)
|
||||
FATAL: "Same" is defined as a label, but also as another label
|
||||
at section-union/same-export/b.asm(2)
|
||||
and also:
|
||||
at section-union/same-export/a.asm(2)
|
||||
Linking aborted with 1 error
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
FATAL: Section "mutually-overlaid data" is of type ROM0, which cannot be unionized
|
||||
Linking aborted with 1 error
|
||||
---
|
||||
error: <stdin>(18):
|
||||
Cannot declare ROM sections as UNION
|
||||
FATAL: <stdin>(18):
|
||||
Cannot create section "mutually-overlaid data" (1 error)
|
||||
error: Cannot declare ROM sections as UNION
|
||||
at <stdin>(18)
|
||||
FATAL: Cannot create section "mutually-overlaid data" (1 error)
|
||||
at <stdin>(18)
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
error: sym-noexist.asm(3): Undefined symbol "nothing"
|
||||
error: sym-noexist.asm(2): Undefined symbol "where"
|
||||
error: Undefined symbol "nothing"
|
||||
at sym-noexist.asm(3)
|
||||
error: Undefined symbol "where"
|
||||
at sym-noexist.asm(2)
|
||||
Linking failed with 2 errors
|
||||
|
||||
@@ -1 +1,5 @@
|
||||
error: "SAME" is defined as 2 at symbols/conflict/b.asm(1), but as 1 at symbols/conflict/a.asm(1)
|
||||
FATAL: "SAME" is defined as 2, but also as 1
|
||||
at symbols/conflict/b.asm(1)
|
||||
and also:
|
||||
at symbols/conflict/a.asm(1)
|
||||
Linking aborted with 1 error
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
error: symbols/unknown/a.asm(2): Undefined symbol "Label"
|
||||
A label with that name is defined but not exported at symbols/unknown/b.asm(2)
|
||||
A constant with that name is defined but not exported at symbols/unknown/c.asm(1)
|
||||
A constant with that name is defined but not exported at symbols/unknown/d.asm(1)
|
||||
...and 1 more symbol with that name is defined but not exported
|
||||
error: Undefined symbol "Label"
|
||||
at symbols/unknown/a.asm(2)
|
||||
4 symbols with that name are defined but not exported:
|
||||
at symbols/unknown/b.asm(2)
|
||||
at symbols/unknown/c.asm(1)
|
||||
at symbols/unknown/d.asm(1)
|
||||
...and 1 more
|
||||
Linking failed with 1 error
|
||||
|
||||
@@ -71,7 +71,7 @@ tryCmpRomSize () {
|
||||
}
|
||||
|
||||
rgblinkQuiet () {
|
||||
out="$(env $RGBLINK -Weverything "$@")" || return $?
|
||||
out="$(env $RGBLINK -Weverything -B collapse "$@")" || return $?
|
||||
if [[ -n "$out" ]]; then
|
||||
echo "$bold${red}Linking shouldn't produce anything on stdout!${rescolors}${resbold}"
|
||||
false
|
||||
|
||||
Reference in New Issue
Block a user