mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-05 15:15:42 +00:00
gas: Record file name in macro locations
This allows the correct file name to be used when emitting messages for lines within a macro. The line numbers were already set and displayed correctly, which resulted in mismatched file names and line numbers. PR 32738
This commit is contained in:
10
gas/macro.c
10
gas/macro.c
@@ -112,11 +112,13 @@ buffer_and_nest (const char *from, const char *to, sb *ptr,
|
||||
unsigned int line;
|
||||
char *linefile;
|
||||
|
||||
as_where_top (&line);
|
||||
if (!flag_m68k_mri)
|
||||
linefile = xasprintf ("\t.linefile %u .", line + 1);
|
||||
const char *prefix = flag_m68k_mri ? "" : ".";
|
||||
const char *file = as_where_top (&line);
|
||||
|
||||
if (file)
|
||||
linefile = xasprintf ("\t%slinefile %u \"%s\"", prefix, line + 1, file);
|
||||
else
|
||||
linefile = xasprintf ("\tlinefile %u .", line + 1);
|
||||
linefile = xasprintf ("\t%slinefile %u .", prefix, line + 1);
|
||||
sb_add_string (ptr, linefile);
|
||||
xfree (linefile);
|
||||
}
|
||||
|
||||
@@ -2,17 +2,17 @@
|
||||
|
||||
.*: Assembler messages:
|
||||
line\.s:[0-9]*18: Warning: \.warning .*
|
||||
line\.s:2: Warning: m1/1: 123
|
||||
.*line\.s:2: Warning: m1/1: 123
|
||||
line\.s:[0-9]*21: Info: .*
|
||||
line\.s:4: Warning: m1/2: 123
|
||||
.*line\.s:4: Warning: m1/2: 123
|
||||
line\.s:[0-9]*21: Info: .*
|
||||
line\.s:2: Warning: m1/1: abc
|
||||
.*line\.s:2: Warning: m1/1: abc
|
||||
line\.s:[0-9]*22: Info: .*
|
||||
line\.s:4: Warning: m1/2: abc
|
||||
.*line\.s:4: Warning: m1/2: abc
|
||||
line\.s:[0-9]*22: Info: .*
|
||||
line\.s:2: Warning: m1/1: XYZ
|
||||
.*line\.s:2: Warning: m1/1: XYZ
|
||||
line\.s:[0-9]*23: Info: .*
|
||||
line\.s:4: Warning: m1/2: XYZ
|
||||
.*line\.s:4: Warning: m1/2: XYZ
|
||||
line\.s:[0-9]*23: Info: .*
|
||||
line\.s:[0-9]*24: Warning: \.warning .*
|
||||
Line2\.s:10: Warning: m2/1: 987
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
.*line2\.s: Assembler messages:
|
||||
.*line2\.inc:2: Warning: inside macro
|
||||
.*line2\.inc:6: Info: macro invoked from here
|
||||
.*:2: Warning: inside macro
|
||||
.*line2\.inc:2: Warning: inside macro
|
||||
.*line2\.s:3: Info: macro invoked from here
|
||||
|
||||
Reference in New Issue
Block a user