aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJan Hubicka <hubicka@ucw.cz>2018-06-22 11:45:54 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2018-06-22 09:45:54 +0000
commitebbb116851bd0b43e6c86cd719b7a70684991d66 (patch)
treefd03bb639d4e4e0451fef2b3977574cd3d0a55da /gcc
parente08bf12576ebab5ab1f0f368b03f86fc2cd463c0 (diff)
downloadgcc-ebbb116851bd0b43e6c86cd719b7a70684991d66.zip
gcc-ebbb116851bd0b43e6c86cd719b7a70684991d66.tar.gz
gcc-ebbb116851bd0b43e6c86cd719b7a70684991d66.tar.bz2
* tree.c (free_lang_data_in_type): Free all TYPE_VFIELDs.
From-SVN: r261883
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/tree.c5
2 files changed, 5 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 242c27d..89b8f92 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2018-06-22 Jan Hubicka <hubicka@ucw.cz>
+
+ * tree.c (free_lang_data_in_type): Free all TYPE_VFIELDs.
+
2018-06-22 Martin Liska <mliska@suse.cz>
* symbol-summary.h (get): Make it pure and inline move
diff --git a/gcc/tree.c b/gcc/tree.c
index 608ca7e..1cb51766 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -5134,10 +5134,7 @@ free_lang_data_in_type (tree type)
else
*prev = DECL_CHAIN (member);
- /* FIXME: C FE uses TYPE_VFIELD to record C_TYPE_INCOMPLETE_VARS
- and danagle the pointer from time to time. */
- if (TYPE_VFIELD (type) && TREE_CODE (TYPE_VFIELD (type)) != FIELD_DECL)
- TYPE_VFIELD (type) = NULL_TREE;
+ TYPE_VFIELD (type) = NULL_TREE;
if (TYPE_BINFO (type))
{