ecoff testsuite fixes
[deliverable/binutils-gdb.git] / gas / read.c
index e53dd0232d9caecd5868aab4cb1d0cfbf76b949b..8f93c2ba2b461a22440889e67875fb40a34275f4 100644 (file)
@@ -1,5 +1,5 @@
 /* read.c - read a source file -
-   Copyright (C) 1986-2019 Free Software Foundation, Inc.
+   Copyright (C) 1986-2020 Free Software Foundation, Inc.
 
    This file is part of GAS, the GNU Assembler.
 
@@ -1052,7 +1052,8 @@ read_a_source_file (const char *name)
                  {
                    char *s2 = s;
 
-                   strncpy (original_case_string, s2, sizeof (original_case_string));
+                   strncpy (original_case_string, s2,
+                            sizeof (original_case_string) - 1);
                    original_case_string[sizeof (original_case_string) - 1] = 0;
 
                    while (*s2)
@@ -1331,8 +1332,7 @@ read_a_source_file (const char *name)
                  new_length += 100;
                }
 
-             if (tmp_buf)
-               free (tmp_buf);
+             free (tmp_buf);
 
              /* We've "scrubbed" input to the preferred format.  In the
                 process we may have consumed the whole of the remaining
@@ -1800,8 +1800,7 @@ s_comm_internal (int param,
  out:
   if (flag_mri)
     mri_comment_end (stop, stopc);
-  if (name != NULL)
-    free (name);
+  free (name);
   return symbolP;
 }
 
@@ -1861,8 +1860,7 @@ s_mri_common (int small ATTRIBUTE_UNUSED)
 
   sym = symbol_find_or_make (name);
   c = restore_line_pointer (c);
-  if (alc != NULL)
-    free (alc);
+  free (alc);
 
   if (*input_line_pointer != ',')
     align = 0;
@@ -2464,7 +2462,7 @@ bss_alloc (symbolS *symbolP, addressT size, unsigned int align)
        {
          bss_seg = subseg_new (".sbss", 1);
          seg_info (bss_seg)->bss = 1;
-         if (!bfd_set_section_flags (bss_seg, SEC_ALLOC))
+         if (!bfd_set_section_flags (bss_seg, SEC_ALLOC | SEC_SMALL_DATA))
            as_warn (_("error setting flags for \".sbss\": %s"),
                     bfd_errmsg (bfd_get_error ()));
        }
@@ -5435,8 +5433,9 @@ next_char_of_string (void)
       bump_line_counters ();
       break;
 
-#ifndef NO_STRING_ESCAPES
     case '\\':
+      if (!TC_STRING_ESCAPES)
+       break;
       switch (c = *input_line_pointer++ & CHAR_MASK)
        {
        case 'b':
@@ -5538,7 +5537,6 @@ next_char_of_string (void)
          break;
        }
       break;
-#endif /* ! defined (NO_STRING_ESCAPES) */
 
     default:
       break;
@@ -5810,11 +5808,10 @@ s_incbin (int x ATTRIBUTE_UNUSED)
        as_warn (_("truncated file `%s', %ld of %ld bytes read"),
                 path, bytes, count);
     }
-done:
+ done:
   if (binfile != NULL)
     fclose (binfile);
-  if (path)
-    free (path);
+  free (path);
 }
 
 /* .include -- include a file at this point.  */
@@ -5874,7 +5871,7 @@ s_include (int arg ATTRIBUTE_UNUSED)
 
   free (path);
   path = filename;
-gotit:
+ gotit:
   /* malloc Storage leak when file is found on path.  FIXME-SOMEDAY.  */
   register_dependency (path);
   input_scrub_insert_file (path);
This page took 0.026369 seconds and 4 git commands to generate.