aboutsummaryrefslogtreecommitdiff
path: root/gas/cond.c
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2022-05-18 09:37:00 +0200
committerJan Beulich <jbeulich@suse.com>2022-05-18 09:37:00 +0200
commit43fe575c32f8d63e397280aa65e5fe39d587112e (patch)
tree18ed37cb49652a5e706e121f93bd6ecd29a5f8a0 /gas/cond.c
parent2e55c34282273f69099bf90bc6d2f38959545e10 (diff)
downloadgdb-43fe575c32f8d63e397280aa65e5fe39d587112e.zip
gdb-43fe575c32f8d63e397280aa65e5fe39d587112e.tar.gz
gdb-43fe575c32f8d63e397280aa65e5fe39d587112e.tar.bz2
gas: don't ignore .linefile inside false conditionals
When assembling code previously pre-processed by a C compiler, long enough comments may have been collapsed into "# <line> <file>" constructs. If we skip these, line numbers (and possibly even file names) will be off / wrong in both diagnostics and debug info.
Diffstat (limited to 'gas/cond.c')
-rw-r--r--gas/cond.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gas/cond.c b/gas/cond.c
index ee441e1..27977db 100644
--- a/gas/cond.c
+++ b/gas/cond.c
@@ -525,6 +525,10 @@ ignore_input (void)
|| !strncasecmp (s, "endc", 4))
return 0;
break;
+ case 'l': case 'L':
+ if (!strncasecmp (s, "linefile", 8))
+ return 0;
+ break;
}
return (current_cframe != NULL) && (current_cframe->ignoring);