Bug 41548 - ICE: tree code 'lang_type' is not supported in gimple streams
Summary: ICE: tree code 'lang_type' is not supported in gimple streams
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: lto (show other bugs)
Version: 4.5.0
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords: ice-on-valid-code
Depends on:
Blocks:
 
Reported: 2009-10-02 14:29 UTC by Richard Biener
Modified: 2009-10-02 22:19 UTC (History)
2 users (show)

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Richard Biener 2009-10-02 14:29:12 UTC
class DataArray {
    int max() const    { }
};
template < class HashItem > 
class DataHashTable {
    template < class ElemHashItem >
        class Element    { };
    typedef Element< HashItem > Elem;
    DataArray m_elem;
};
class Name    { };
class NameSet {
    DataHashTable < Name > hashtab;
};
NameSet p;


./g++ -B. -nostdlib -fPIC -shared spxgeneralsm.3.2.ii -flto 
spxgeneralsm.3.2.ii:15:10: internal compiler error: tree code 'lang_type' is not supported in gimple streams
Comment 1 Diego Novillo 2009-10-02 21:31:57 UTC
Subject: Bug 41548

Author: dnovillo
Date: Fri Oct  2 21:31:43 2009
New Revision: 152422

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=152422
Log:
2009-10-02  Diego Novillo  <dnovillo@google.com>

	* sourcebuild.texi: Document lto-plugin.
	* invoke.texi: Add documentation for -use-linker-plugin
	and complete documentation for -flto.
	* install.texi: Document --enable-gold.

2009-10-02  Richard Guenther  <rguenther@suse.de>

	PR lto/41547
	PR lto/41548
	* tree.h (is_lang_specific): Include LANG_TYPE.
	* tree.c (find_decls_types_r): Manually add interesting parts
	of TYPE_FIELDS.  Walk BINFO_VIRTUALS.  Do not walk TYPE_METHODS.

testsuite/ChangeLog.lto

	* g++.dg/lto/20091002-1_0.C: New testcase.
	* g++.dg/lto/20091002-2_0.C: Likewise..
	* g++.dg/lto/20091002-3_0.C: Likewise..

2009-10-02  Diego Novillo  <dnovillo@google.com>

	* gcc.c-torture/execute/builtins/builtins.exp: Re-enable
	LTO testing.

2009-10-02  Diego Novillo  <dnovillo@google.com>

	* lto-symtab.h: Update copyright boilerplate.
	* plugin-api.h: Likewise.

2009-10-02  Diego Novillo  <dnovillo@google.com>

	* Makefile.am (AM_CPPFLAGS): Remove -D_LARGEFILE_SOURCE
	and -D_FILE_OFFSET_BITS=64.
	* configure.ac: Add AC_SYS_LARGEFILE.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* lto-plugin.c: Fix copyright boilerplate.

2009-10-02  Diego Novillo  <dnovillo@google.com>

	* Makefile.am (ACLOCAL_AMFLAGS): Define.
	* aclocal.m4: Regenerate with aclocal-2.64
	* acinclude.m4: Remove.
	* Makefile.in: Regenerate with automake-1.11
	* configure.ac (AC_PREREQ): Update to 2.64.
	* configure: Regenerate.



Added:
    branches/lto/gcc/testsuite/g++.dg/lto/20091002-1_0.C
    branches/lto/gcc/testsuite/g++.dg/lto/20091002-2_0.C
    branches/lto/gcc/testsuite/g++.dg/lto/20091002-3_0.C
Removed:
    branches/lto/lto-plugin/acinclude.m4
Modified:
    branches/lto/gcc/ChangeLog.lto
    branches/lto/gcc/doc/install.texi
    branches/lto/gcc/doc/invoke.texi
    branches/lto/gcc/doc/sourcebuild.texi
    branches/lto/gcc/testsuite/ChangeLog.lto
    branches/lto/gcc/testsuite/gcc.c-torture/execute/builtins/builtins.exp
    branches/lto/gcc/tree.c
    branches/lto/gcc/tree.h
    branches/lto/include/ChangeLog.lto
    branches/lto/include/lto-symtab.h
    branches/lto/include/plugin-api.h
    branches/lto/lto-plugin/ChangeLog
    branches/lto/lto-plugin/Makefile.am
    branches/lto/lto-plugin/Makefile.in
    branches/lto/lto-plugin/aclocal.m4
    branches/lto/lto-plugin/configure
    branches/lto/lto-plugin/configure.ac
    branches/lto/lto-plugin/lto-plugin.c

Comment 2 Richard Biener 2009-10-02 22:19:42 UTC
Fixed.