lex.c (handle_pragma_interface): Don't copy the filename.
authorTom Tromey <tromey@redhat.com>
Mon, 24 Mar 2008 18:53:34 +0000 (18:53 +0000)
committerTom Tromey <tromey@gcc.gnu.org>
Mon, 24 Mar 2008 18:53:34 +0000 (18:53 +0000)
* lex.c (handle_pragma_interface): Don't copy the filename.
(handle_pragma_implementation): Copy filename using xstrdup.

From-SVN: r133487

gcc/cp/ChangeLog
gcc/cp/lex.c

index eaaddc8bf43a50b06a5e970d51e2cdcc0e5b4ca2..ce147f76da19d5b6825d4c70b0e28cf1e229fe27 100644 (file)
@@ -1,3 +1,8 @@
+2008-03-24  Tom Tromey  <tromey@redhat.com>
+
+       * lex.c (handle_pragma_interface): Don't copy the filename.
+       (handle_pragma_implementation): Copy filename using xstrdup.
+
 2008-03-21  Paolo Carlini  <pcarlini@suse.de>
 
        * cp-tree.h (IS_AGGR_TYPE): Rename to MAYBE_CLASS_TYPE_P.
index adf793b1d4269fbef3bd5bb34046f2c0f18fb65a..45523059af34f28cbaa55509374ae4cbcd0e1a50 100644 (file)
@@ -518,7 +518,7 @@ handle_pragma_interface (cpp_reader* dfile ATTRIBUTE_UNUSED )
   else if (fname == 0)
     filename = lbasename (input_filename);
   else
-    filename = ggc_strdup (TREE_STRING_POINTER (fname));
+    filename = TREE_STRING_POINTER (fname);
 
   finfo = get_fileinfo (input_filename);
 
@@ -566,7 +566,7 @@ handle_pragma_implementation (cpp_reader* dfile ATTRIBUTE_UNUSED )
     }
   else
     {
-      filename = ggc_strdup (TREE_STRING_POINTER (fname));
+      filename = TREE_STRING_POINTER (fname);
       if (cpp_included_before (parse_in, filename, input_location))
        warning (0, "#pragma implementation for %qs appears after "
                 "file is included", filename);
@@ -580,7 +580,7 @@ handle_pragma_implementation (cpp_reader* dfile ATTRIBUTE_UNUSED )
   if (ifiles == 0)
     {
       ifiles = XNEW (struct impl_files);
-      ifiles->filename = filename;
+      ifiles->filename = xstrdup (filename);
       ifiles->next = impl_file_chain;
       impl_file_chain = ifiles;
     }