Do not hide asm_out_file in ASM_OUTPUT_ASCII.
authorMartin Liska <mliska@suse.cz>
Wed, 15 Sep 2021 11:52:35 +0000 (13:52 +0200)
committerMartin Liska <mliska@suse.cz>
Thu, 30 Sep 2021 11:45:57 +0000 (13:45 +0200)
gcc/ChangeLog:

* defaults.h (ASM_OUTPUT_ASCII): Do not hide global variable
asm_out_file and stream directly to MYFILE.

gcc/defaults.h

index ba79a8e..04d9bb1 100644 (file)
@@ -61,36 +61,35 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 #ifndef ASM_OUTPUT_ASCII
 #define ASM_OUTPUT_ASCII(MYFILE, MYSTRING, MYLENGTH) \
   do {                                                                       \
-    FILE *_hide_asm_out_file = (MYFILE);                                     \
+    FILE *_my_file = (MYFILE);                               \
     const unsigned char *_hide_p = (const unsigned char *) (MYSTRING);       \
     int _hide_thissize = (MYLENGTH);                                         \
     {                                                                        \
-      FILE *asm_out_file = _hide_asm_out_file;                               \
       const unsigned char *p = _hide_p;                                              \
       int thissize = _hide_thissize;                                         \
       int i;                                                                 \
-      fprintf (asm_out_file, "\t.ascii \"");                                 \
+      fprintf (_my_file, "\t.ascii \"");                                     \
                                                                              \
       for (i = 0; i < thissize; i++)                                         \
        {                                                                     \
          int c = p[i];                                                       \
          if (c == '\"' || c == '\\')                                         \
-           putc ('\\', asm_out_file);                                        \
+           putc ('\\', _my_file);                                            \
          if (ISPRINT (c))                                                    \
-           putc (c, asm_out_file);                                           \
+           putc (c, _my_file);                                               \
          else                                                                \
            {                                                                 \
-             fprintf (asm_out_file, "\\%o", c);                              \
+             fprintf (_my_file, "\\%o", c);                                  \
              /* After an octal-escape, if a digit follows,                   \
                 terminate one string constant and start another.             \
                 The VAX assembler fails to stop reading the escape           \
                 after three digits, so this is the only way we               \
                 can get it to parse the data properly.  */                   \
              if (i < thissize - 1 && ISDIGIT (p[i + 1]))                     \
-               fprintf (asm_out_file, "\"\n\t.ascii \"");                    \
+               fprintf (_my_file, "\"\n\t.ascii \"");                        \
          }                                                                   \
        }                                                                     \
-      fprintf (asm_out_file, "\"\n");                                        \
+      fprintf (_my_file, "\"\n");                                            \
     }                                                                        \
   }                                                                          \
   while (0)