https://sourceware.org/bugzilla/show_bug.cgi?id=30162
Bug ID: 30162 Summary: Discrepancy in the interface exposed to tc_frob_label Product: binutils Version: unspecified Status: UNCONFIRMED Severity: normal Priority: P2 Component: gas Assignee: unassigned at sourceware dot org Reporter: piannetta at kalrayinc dot com Target Milestone: --- After reading a label in gas/read.c, a CPU-specific back-end can register the TC_FROB_LABEL hook. However, the position of the INPUT_LINE_POINTER is not the same whether the label is surrounded by quotes or not: - when the label is not surrounded by quotes, *INPUT_LINE_POINTER is the character after the colon; - when the label is surrounded by quotes, *INPUT_LINE_POINTER is the colon itself. I would expect that in both cases, *INPUT_LINE_POINTER is the character after the colon. A simple fix would be to move the INPUT_LINE_POINTER once more when the label symbol is terminated by a '"'. diff --git a/gas/read.c b/gas/read.c --- a/gas/read.c +++ b/gas/read.c @@ -986,6 +986,8 @@ read_a_source_file (const char *name) nul_char = get_symbol_name (& s); /* name's delimiter. */ next_char = (nul_char == '"' ? input_line_pointer[1] : nul_char); rest = input_line_pointer + (nul_char == '"' ? 2 : 1); + if (nul_char == '"') + ++input_line_pointer; -- You are receiving this mail because: You are on the CC list for the bug.