re PR c++/45983 (ICE: tree code 'template_parm_index' is not supported in gimple streams with -lto)
PR c++/45983 * tree.c (cp_build_qualified_type_real): Don't reuse a variant with a different typedef variant of the element type. From-SVN: r165521
This commit is contained in:
parent
ba49275257
commit
ef7659966d
@ -1,3 +1,9 @@
|
||||
2010-10-15 Jason Merrill <jason@redhat.com>
|
||||
|
||||
PR c++/45983
|
||||
* tree.c (cp_build_qualified_type_real): Don't reuse a variant
|
||||
with a different typedef variant of the element type.
|
||||
|
||||
2010-10-14 Iain Sandoe <iains@gcc.gnu.org>
|
||||
|
||||
merge from FSF apple 'trunk' branch.
|
||||
|
@ -810,7 +810,7 @@ cp_build_qualified_type_real (tree type,
|
||||
/* See if we already have an identically qualified type. Tests
|
||||
should be equivalent to those in check_qualified_type. */
|
||||
for (t = TYPE_MAIN_VARIANT (type); t; t = TYPE_NEXT_VARIANT (t))
|
||||
if (cp_type_quals (t) == type_quals
|
||||
if (TREE_TYPE (t) == element_type
|
||||
&& TYPE_NAME (t) == TYPE_NAME (type)
|
||||
&& TYPE_CONTEXT (t) == TYPE_CONTEXT (type)
|
||||
&& attribute_list_equal (TYPE_ATTRIBUTES (t),
|
||||
|
@ -1,3 +1,7 @@
|
||||
2010-10-15 Jason Merrill <jason@redhat.com>
|
||||
|
||||
* g++.dg/lto/pr45983_0.C: New.
|
||||
|
||||
2010-10-14 Michael Meissner <meissner@linux.vnet.ibm.com>
|
||||
|
||||
* gcc.target/powerpc/ppc-fma-1.c: New tests for powerpc FMA
|
||||
|
20
gcc/testsuite/g++.dg/lto/pr45983_0.C
Normal file
20
gcc/testsuite/g++.dg/lto/pr45983_0.C
Normal file
@ -0,0 +1,20 @@
|
||||
// PR c++/45983
|
||||
|
||||
template <int N>
|
||||
class T1 {
|
||||
int m[N];
|
||||
typedef float scalar_type_t;
|
||||
typedef scalar_type_t scalar_array_t[1];
|
||||
const scalar_array_t &decay(void) const;
|
||||
};
|
||||
class T2 {
|
||||
public:
|
||||
float vals[1];
|
||||
float get_value(void) const { return vals[0]; }
|
||||
};
|
||||
T2 channel_params;
|
||||
float output_audio(void) {
|
||||
return channel_params.get_value();
|
||||
}
|
||||
|
||||
int main(){}
|
Loading…
Reference in New Issue
Block a user