Looks like vtv_generate_init_routine calls symtab->process_new_functions 
() which has seriously bad effects on GCCs internal memory state.

VTV has zero testsuite coverage it seems and besides its initial
commit didn't receive any love.

Can we rip it out please?

Is the patch OK?  (Pointless) bootstrap and regtest running on
x86_64-unknown-linux-gnu.

Has anybody "recently" tried to enable the feature and tested the
result?

Thanks,
Richard.

2019-02-19  Richard Biener  <rguent...@suse.de>

        PR middle-end/89392
        cp/
        * vtable-class-hierarchy.c (vtv_generate_init_routine): Do not
        make symtab process new functions here.

Index: gcc/cp/vtable-class-hierarchy.c
===================================================================
--- gcc/cp/vtable-class-hierarchy.c     (revision 269009)
+++ gcc/cp/vtable-class-hierarchy.c     (working copy)
@@ -1191,8 +1191,6 @@ vtv_generate_init_routine (void)
       gimplify_function_tree (vtv_fndecl);
       cgraph_node::add_new_function (vtv_fndecl, false);
 
-      symtab->process_new_functions ();
-
       if (flag_vtable_verify == VTV_PREINIT_PRIORITY && !TARGET_PECOFF)
         assemble_vtv_preinit_initializer (vtv_fndecl);
 

Reply via email to