aboutsummaryrefslogtreecommitdiff
path: root/gas/sb.h
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2022-12-13 09:11:53 +0100
committerJan Beulich <jbeulich@suse.com>2022-12-13 09:11:53 +0100
commit969b9a36506bfb386f8ce30f88f1a6a6ebbaca6e (patch)
tree7cc916e6db68595bb894cd1675fb0112038ab218 /gas/sb.h
parentf2e469cb476a8fff9841914af6f8b5dead5c553a (diff)
downloadgdb-969b9a36506bfb386f8ce30f88f1a6a6ebbaca6e.zip
gdb-969b9a36506bfb386f8ce30f88f1a6a6ebbaca6e.tar.gz
gdb-969b9a36506bfb386f8ce30f88f1a6a6ebbaca6e.tar.bz2
gas: re-work line number tracking for macros and their expansions
The PR gas/16908 workaround aimed at uniformly reporting line numbers to reference macro invocation sites. As mentioned in a comment this may be desirable for small macros, but often isn't for larger ones. As a first step improve diagnostics to report both locations, while aiming at leaving generated debug info unaltered. Note that macro invocation context is lost for any diagnostics issued only after all input was processed (or more generally for any use of as_*_where(), as the functions can't know whether the passed in location is related to [part of] the present stack of locations). To maintain the intended workaround behavior for PR gas/16908, a new as_where() is introduced to "look through" macro invocations, while the existing as_where() is renamed (and used in only very few places for now). Down the road as_where() will likely want to return a list of (file,line) pairs.
Diffstat (limited to 'gas/sb.h')
-rw-r--r--gas/sb.h2
1 files changed, 0 insertions, 2 deletions
diff --git a/gas/sb.h b/gas/sb.h
index 4f23b3a..6d67ea4 100644
--- a/gas/sb.h
+++ b/gas/sb.h
@@ -66,11 +66,9 @@ extern size_t sb_skip_comma (size_t, sb *);
/* Actually in input-scrub.c. */
enum expansion {
- /* Note: Order matters! */
expanding_none,
expanding_repeat,
expanding_macro,
- expanding_nested, /* Only for internal use of input-scrub.c. */
};
extern void input_scrub_include_sb (sb *, char *, enum expansion);