tree.c (free_lang_data_in_decl): Free DECL_FCONTEXT.
authorRichard Guenther <rguenther@suse.de>
Thu, 15 Oct 2009 08:53:35 +0000 (08:53 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Thu, 15 Oct 2009 08:53:35 +0000 (08:53 +0000)
2009-10-15  Richard Guenther  <rguenther@suse.de>

* tree.c (free_lang_data_in_decl): Free DECL_FCONTEXT.

From-SVN: r152841

gcc/ChangeLog
gcc/tree.c

index f7743f6c3e6b4ca029bcf45f98447e9bbaee23d2..2ca7ca47c10da2753c143083f989cae89ae665e5 100644 (file)
@@ -1,3 +1,7 @@
+2009-10-15  Richard Guenther  <rguenther@suse.de>
+
+       * tree.c (free_lang_data_in_decl): Free DECL_FCONTEXT.
+
 2009-10-15  Jakub Jelinek  <jakub@redhat.com>
 
        * config/rs6000/option-defaults.h (OPTION_DEFAULT_SPECS): Don't
index b58767a159080971668b6ea8378dc599ab8cd0db..5da346c52f87581b426a3969d9cdc96014dd9d86 100644 (file)
@@ -4402,6 +4402,10 @@ free_lang_data_in_decl (tree decl)
          && DECL_FIELD_OFFSET (decl)
          && TREE_CODE (DECL_FIELD_OFFSET (decl)) != INTEGER_CST)
        DECL_FIELD_OFFSET (decl) = NULL_TREE;
+
+      /* DECL_FCONTEXT is only used for debug info generation.  */
+      if (TREE_CODE (decl) == FIELD_DECL)
+       DECL_FCONTEXT (decl) = NULL_TREE;
     }
   else if (TREE_CODE (decl) == FUNCTION_DECL)
     {