This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/63405] [5 regression] ICE in cp_perform_integral_promotions, at cp/typeck.c:2084
- From: "trippels at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 29 Sep 2014 11:31:05 +0000
- Subject: [Bug c++/63405] [5 regression] ICE in cp_perform_integral_promotions, at cp/typeck.c:2084
- Auto-submitted: auto-generated
- References: <bug-63405-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63405
Markus Trippelsdorf <trippels at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2014-09-29
CC| |trippels at gcc dot gnu.org
Known to work| |4.8.3, 4.9.2
Version|4.9.1 |5.0
Target Milestone|--- |5.0
Summary|Internal compiler error |[5 regression] ICE in
|when building OpenAxiom on |cp_perform_integral_promoti
|linux/amd64 |ons, at cp/typeck.c:2084
Ever confirmed|0 |1
Known to fail| |5.0
--- Comment #1 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
I can only reproduce this on trunk. 4.9 branch is fine.
markus@x4 tmp % cat sex.ii
struct ListSyntax {
ListSyntax(int, bool);
};
struct A {
template <typename... Args>
ListSyntax *m_fn1(Args &... args) {
return new ListSyntax{args...};
}
};
struct B {
const ListSyntax *m_fn2(const int &, bool);
A lists;
};
const ListSyntax *B::m_fn2(const int &elts, bool dot) {
return lists.m_fn1(elts, dot);
}
markus@x4 tmp % /var/tmp/gcc_test/usr/local/bin/g++ -std=c++11 -c sex.ii
sex.ii: In instantiation of âListSyntax* A::m_fn1(Args& ...) [with Args =
{const int, bool}]â:
sex.ii:15:31: required from here
sex.ii:7:34: internal compiler error: in cp_perform_integral_promotions, at
cp/typeck.c:2084
return new ListSyntax{args...};
^
0x6b79d1 cp_perform_integral_promotions(tree_node*, int)
../../gcc/gcc/cp/typeck.c:2084
0x57335a convert_for_arg_passing(tree_node*, tree_node*, int)
../../gcc/gcc/cp/call.c:6799
0x577b83 build_over_call
../../gcc/gcc/cp/call.c:7211
0x5835f5 build_new_method_call_1
../../gcc/gcc/cp/call.c:8098
0x5835f5 build_new_method_call(tree_node*, tree_node*, vec<tree_node*, va_gc,
vl_embed>**, tree_node*, int, tree_node**, int)
../../gcc/gcc/cp/call.c:8168
0x584569 build_special_member_call(tree_node*, tree_node*, vec<tree_node*,
va_gc, vl_embed>**, tree_node*, int, int)
../../gcc/gcc/cp/call.c:7712
0x6e564b build_new_1
../../gcc/gcc/cp/init.c:2846
0x6e5d16 build_new(vec<tree_node*, va_gc, vl_embed>**, tree_node*, tree_node*,
vec<tree_node*, va_gc, vl_embed>**, int, int)
../../gcc/gcc/cp/init.c:3086
0x5fc209 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
../../gcc/gcc/cp/pt.c:14848
0x5db056 tsubst_expr
../../gcc/gcc/cp/pt.c:14272
0x5dc89c tsubst_expr
../../gcc/gcc/cp/pt.c:13679
0x5dbe60 tsubst_expr
../../gcc/gcc/cp/pt.c:13855
0x5d90fd instantiate_decl(tree_node*, int, bool)
../../gcc/gcc/cp/pt.c:20227
0x61f727 instantiate_pending_templates(int)
../../gcc/gcc/cp/pt.c:20343
0x65c9e4 cp_write_global_declarations()
../../gcc/gcc/cp/decl2.c:4367
Please submit a full bug report,