re PR lto/45947 (ICE: tree code 'template_decl' is not supported in gimple streams with -flto/-fwhopr)

2010-10-09  Richard Guenther  <rguenther@suse.de>

	PR lto/45947
	* tree.c (free_lang_data_in_cgraph): Properly walk the varpool.

	* g++.dg/lto/20101009-1_0.C: New testcase.

From-SVN: r165234
This commit is contained in:
Richard Guenther 2010-10-09 15:59:50 +00:00 committed by Richard Biener
parent 9fb41e15f2
commit 865e8e8e51
4 changed files with 25 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2010-10-09 Richard Guenther <rguenther@suse.de>
PR lto/45947
* tree.c (free_lang_data_in_cgraph): Properly walk the varpool.
2010-10-09 Nathan Froyd <froydnj@codesourcery.com>
* config/mmix/mmix-protos.h (mmix_function_arg): Delete.

View file

@ -1,3 +1,8 @@
2010-10-09 Richard Guenther <rguenther@suse.de>
PR lto/45947
* g++.dg/lto/20101009-1_0.C: New testcase.
2010-10-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45945

View file

@ -0,0 +1,14 @@
// { dg-lto-do link }
template < typename > struct X
{
template < typename > static int test ();
static const int i = sizeof (test < int >());
};
template struct X < int >;
int main()
{
return 0;
}

View file

@ -4982,7 +4982,7 @@ free_lang_data_in_cgraph (void)
find_decls_types (p->decl, &fld);
/* Find decls and types in every varpool symbol. */
for (v = varpool_nodes_queue; v; v = v->next_needed)
for (v = varpool_nodes; v; v = v->next)
find_decls_types_in_var (v, &fld);
/* Set the assembler name on every decl found. We need to do this