gas: .irp/.irpc are macro-like

Message ID d5498ec7-7ff5-45b5-967c-0484a683f858@suse.com
State New
Headers
Series gas: .irp/.irpc are macro-like |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_binutils_build--master-aarch64 success Build passed
linaro-tcwg-bot/tcwg_binutils_build--master-arm success Build passed
linaro-tcwg-bot/tcwg_binutils_check--master-aarch64 success Test passed
linaro-tcwg-bot/tcwg_binutils_check--master-arm success Test passed

Commit Message

Jan Beulich June 26, 2024, 3:28 p.m. UTC
  ... for the purposes of get_line_sb() and _find_end_of_line(): They
support \@ just like macros do, and hence the special casing there also
needs applying.
---
A testcase in a future series will be covering this, as there is how I
noticed the issue. (I was actually on the edge whether to make this part
of that series, but it's entirely unrelated to what is done there.)
  

Patch

--- a/gas/read.c
+++ b/gas/read.c
@@ -262,7 +262,7 @@  static int hex_float (int, char *);
 static segT get_known_segmented_expression (expressionS * expP);
 static void pobegin (void);
 static void poend (void);
-static size_t get_non_macro_line_sb (sb *);
+static size_t get_macro_line_sb (sb *);
 static void generate_file_debug (void);
 static char *_find_end_of_line (char *, int, int, int);
 
@@ -2402,7 +2402,7 @@  s_irp (int irpc)
 
   sb_new (&out);
 
-  err = expand_irp (irpc, 0, &s, &out, get_non_macro_line_sb);
+  err = expand_irp (irpc, 0, &s, &out, get_macro_line_sb);
   if (err != NULL)
     as_bad_where (file, line, "%s", err);