Fix line numbers from nested expansions (#1802)

This commit is contained in:
Rangi
2025-08-14 11:13:50 -04:00
committed by GitHub
parent db6793f444
commit 272019beb0
6 changed files with 176 additions and 28 deletions

View File

@@ -278,13 +278,9 @@ void LexerState::clear(uint32_t lineNo_) {
} }
static void nextLine() { static void nextLine() {
++lexerState->lineNo;
}
static void nextLineOutsideExpansion() {
// Newlines read within an expansion should not increase the line count // Newlines read within an expansion should not increase the line count
if (lexerState->expansions.empty()) { if (lexerState->expansions.empty()) {
nextLine(); ++lexerState->lineNo;
} }
} }
@@ -872,7 +868,7 @@ static void discardBlockComment() {
handleCRLF(c); handleCRLF(c);
[[fallthrough]]; [[fallthrough]];
case '\n': case '\n':
nextLineOutsideExpansion(); nextLine();
continue; continue;
case '/': case '/':
if (peek() == '*') { if (peek() == '*') {
@@ -903,7 +899,7 @@ static void discardLineContinuation() {
} else if (isNewline(c)) { } else if (isNewline(c)) {
shiftChar(); shiftChar();
handleCRLF(c); handleCRLF(c);
nextLineOutsideExpansion(); nextLine();
break; break;
} else if (c == ';') { } else if (c == ';') {
discardComment(); discardComment();
@@ -2250,7 +2246,7 @@ yy::parser::symbol_type yylex() {
return yy::parser::make_YYEOF(); return yy::parser::make_YYEOF();
} }
if (lexerState->atLineStart) { if (lexerState->atLineStart) {
nextLineOutsideExpansion(); nextLine();
} }
static Token (* const lexerModeFuncs[NB_LEXER_MODES])() = { static Token (* const lexerModeFuncs[NB_LEXER_MODES])() = {

View File

@@ -0,0 +1,8 @@
MACRO outer
DEF s EQUS "MACRO inner\nREPT 1\nWARN \"hello\"\nENDR\nENDM\ninner\n"
{s}
PURGE s
inner
ENDM
outer
inner

View File

@@ -0,0 +1,14 @@
warning: hello [-Wuser]
at expansion-diagnostics.asm::outer::inner::REPT~1(5)
<- expansion-diagnostics.asm::outer::inner(4)
<- expansion-diagnostics.asm::outer(3)
<- expansion-diagnostics.asm(7)
warning: hello [-Wuser]
at expansion-diagnostics.asm::outer::inner::REPT~1(5)
<- expansion-diagnostics.asm::outer::inner(4)
<- expansion-diagnostics.asm::outer(5)
<- expansion-diagnostics.asm(7)
warning: hello [-Wuser]
at expansion-diagnostics.asm::outer::inner::REPT~1(5)
<- expansion-diagnostics.asm::outer::inner(4)
<- expansion-diagnostics.asm(8)

View File

@@ -0,0 +1 @@
-B 0

View File

@@ -1,40 +1,168 @@
warning: round 1 [-Wuser] warning: round 1 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1::REPT~1::REPT~1(13) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1(12) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~1(20) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1::REPT~1::REPT~1(13)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1(12)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~1(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 2 [-Wuser] warning: round 2 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1::REPT~1::REPT~2(13) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1(12) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~1(20) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1::REPT~1::REPT~2(13)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1(12)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~1(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 3 [-Wuser] warning: round 3 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2::REPT~2::REPT~1(13) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2(12) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~1(20) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2::REPT~2::REPT~1(13)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2(12)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~1(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 4 [-Wuser] warning: round 4 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2::REPT~2::REPT~2(13) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2(12) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~1(20) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2::REPT~2::REPT~2(13)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2(12)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~1(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 5 [-Wuser] warning: round 5 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1::REPT~1::REPT~1(13) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1(12) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~2(13) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1::REPT~1::REPT~1(13)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1(12)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~2(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 6 [-Wuser] warning: round 6 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1::REPT~1::REPT~2(13) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1(12) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~2(13) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1::REPT~1::REPT~2(13)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~1(12)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~2(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 7 [-Wuser] warning: round 7 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2::REPT~2::REPT~1(13) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2(12) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~2(13) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2::REPT~2::REPT~1(13)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2(12)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~2(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 8 [-Wuser] warning: round 8 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2::REPT~2::REPT~2(13) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2(12) <- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~2(13) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2::REPT~2::REPT~2(13)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner::REPT~2(12)
<- rept-macro-fstack-trace.asm::outer::REPT~1::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~2(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 9 [-Wuser] warning: round 9 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1::REPT~1::REPT~1(13) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1(12) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~3(20) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1::REPT~1::REPT~1(13)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1(12)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~3(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 10 [-Wuser] warning: round 10 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1::REPT~1::REPT~2(13) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1(12) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~3(20) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1::REPT~1::REPT~2(13)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1(12)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~3(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 11 [-Wuser] warning: round 11 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2::REPT~2::REPT~1(13) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2(12) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~3(20) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2::REPT~2::REPT~1(13)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2(12)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~3(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 12 [-Wuser] warning: round 12 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2::REPT~2::REPT~2(13) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2(12) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~3(20) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2::REPT~2::REPT~2(13)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2(12)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~3(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 13 [-Wuser] warning: round 13 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1::REPT~1::REPT~1(13) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1(12) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~4(13) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1::REPT~1::REPT~1(13)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1(12)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~4(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 14 [-Wuser] warning: round 14 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1::REPT~1::REPT~2(13) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1(12) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~4(13) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1::REPT~1::REPT~2(13)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~1(12)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~4(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 15 [-Wuser] warning: round 15 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2::REPT~2::REPT~1(13) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2(12) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~4(13) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2::REPT~2::REPT~1(13)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2(12)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~4(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 16 [-Wuser] warning: round 16 [-Wuser]
at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2::REPT~2::REPT~2(13) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2(12) <- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11) <- rept-macro-fstack-trace.asm::outer::REPT~4(13) <- rept-macro-fstack-trace.asm::outer(4) <- rept-macro-fstack-trace.asm::REPT~1(18) <- rept-macro-fstack-trace.asm(17) at rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2::REPT~2::REPT~2(13)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner::REPT~2(12)
<- rept-macro-fstack-trace.asm::outer::REPT~3::inner(11)
<- rept-macro-fstack-trace.asm::outer::REPT~4(13)
<- rept-macro-fstack-trace.asm::outer(4)
<- rept-macro-fstack-trace.asm::REPT~1(18)
<- rept-macro-fstack-trace.asm(17)
warning: round 17 [-Wuser] warning: round 17 [-Wuser]
at rept-macro-fstack-trace.asm::foo::REPT~1::REPT~1::REPT~1(24) <- rept-macro-fstack-trace.asm::foo::REPT~1(23) <- rept-macro-fstack-trace.asm::foo(22) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~1::REPT~1::REPT~1(34) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~1(33) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar(32) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::REPT~1(38) <- rept-macro-fstack-trace.asm::REPT~1(30) <- rept-macro-fstack-trace.asm(29) at rept-macro-fstack-trace.asm::foo::REPT~1::REPT~1::REPT~1(24)
<- rept-macro-fstack-trace.asm::foo::REPT~1(23)
<- rept-macro-fstack-trace.asm::foo(22)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~1::REPT~1::REPT~1(34)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~1(33)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar(32)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::REPT~1(38)
<- rept-macro-fstack-trace.asm::REPT~1(30)
<- rept-macro-fstack-trace.asm(29)
warning: round 18 [-Wuser] warning: round 18 [-Wuser]
at rept-macro-fstack-trace.asm::foo::REPT~1::REPT~1::REPT~1(24) <- rept-macro-fstack-trace.asm::foo::REPT~1(23) <- rept-macro-fstack-trace.asm::foo(22) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~1::REPT~1::REPT~2(34) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~1(33) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar(32) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::REPT~1(38) <- rept-macro-fstack-trace.asm::REPT~1(30) <- rept-macro-fstack-trace.asm(29) at rept-macro-fstack-trace.asm::foo::REPT~1::REPT~1::REPT~1(24)
<- rept-macro-fstack-trace.asm::foo::REPT~1(23)
<- rept-macro-fstack-trace.asm::foo(22)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~1::REPT~1::REPT~2(34)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~1(33)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar(32)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::REPT~1(38)
<- rept-macro-fstack-trace.asm::REPT~1(30)
<- rept-macro-fstack-trace.asm(29)
warning: round 19 [-Wuser] warning: round 19 [-Wuser]
at rept-macro-fstack-trace.asm::foo::REPT~1::REPT~1::REPT~1(24) <- rept-macro-fstack-trace.asm::foo::REPT~1(23) <- rept-macro-fstack-trace.asm::foo(22) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~2::REPT~2::REPT~1(34) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~2(33) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar(32) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::REPT~1(38) <- rept-macro-fstack-trace.asm::REPT~1(30) <- rept-macro-fstack-trace.asm(29) at rept-macro-fstack-trace.asm::foo::REPT~1::REPT~1::REPT~1(24)
<- rept-macro-fstack-trace.asm::foo::REPT~1(23)
<- rept-macro-fstack-trace.asm::foo(22)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~2::REPT~2::REPT~1(34)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~2(33)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar(32)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::REPT~1(38)
<- rept-macro-fstack-trace.asm::REPT~1(30)
<- rept-macro-fstack-trace.asm(29)
warning: round 20 [-Wuser] warning: round 20 [-Wuser]
at rept-macro-fstack-trace.asm::foo::REPT~1::REPT~1::REPT~1(24) <- rept-macro-fstack-trace.asm::foo::REPT~1(23) <- rept-macro-fstack-trace.asm::foo(22) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~2::REPT~2::REPT~2(34) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~2(33) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar(32) <- rept-macro-fstack-trace.asm::REPT~1::REPT~1::REPT~1(38) <- rept-macro-fstack-trace.asm::REPT~1(30) <- rept-macro-fstack-trace.asm(29) at rept-macro-fstack-trace.asm::foo::REPT~1::REPT~1::REPT~1(24)
<- rept-macro-fstack-trace.asm::foo::REPT~1(23)
<- rept-macro-fstack-trace.asm::foo(22)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~2::REPT~2::REPT~2(34)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar::REPT~2(33)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::bar(32)
<- rept-macro-fstack-trace.asm::REPT~1::REPT~1::REPT~1(38)
<- rept-macro-fstack-trace.asm::REPT~1(30)
<- rept-macro-fstack-trace.asm(29)

View File

@@ -0,0 +1 @@
-B 0