This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug ipa/59882] [4.9 Regression] internal compiler error: Segmentation fault
- 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, 20 Jan 2014 06:38:42 +0000
- Subject: [Bug ipa/59882] [4.9 Regression] internal compiler error: Segmentation fault
- Auto-submitted: auto-generated
- References: <bug-59882-4 at http dot gcc dot gnu dot org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59882
Markus Trippelsdorf <trippels at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Keywords| |ice-on-valid-code
Last reconfirmed| |2014-01-20
Component|other |ipa
CC| |trippels at gcc dot gnu.org
Ever confirmed|0 |1
Summary|dev-cpp/xsd: internal |[4.9 Regression] internal
|compiler error: |compiler error:
|Segmentation fault |Segmentation fault
Target Milestone|--- |4.9.0
--- Comment #3 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
Confirmed. Another devirtualization issue.
markus@x4 tmp % cat test.ii
class A;
class B {};
struct C {
virtual void dispatch();
int traversal_map_;
};
template <typename> class F : public virtual C {};
struct I : F<A>, F<int> {};
struct J : B, I {};
class D {};
struct L {
L(D &, int &p2) : map_(p2) {}
virtual void traverse(int &p1) {
int &s = p1;
names<L>(s, names_);
}
int &map_;
J names_;
template <typename> void names(int &, C &p2) { p2.dispatch(); }
};
struct G : D {
G(D &, int &p2) : map_(p2) { L(*this, map_); }
int &map_;
};
int a;
void fn1(D &p1) { G(p1, a); }
markus@x4 tmp % g++ -c -O2 test.ii
test.ii: In member function âvirtual void L::traverse(int&)â:
test.ii:29:29: internal compiler error: Segmentation fault
void fn1(D &p1) { G(p1, a); }
^
0xb541af crash_signal
../../gcc/gcc/toplev.c:337
0x98e5eb tree_check
../../gcc/gcc/tree.h:2708
0x98e5eb gimple_get_virt_method_for_binfo(long, tree_node*)
../../gcc/gcc/gimple-fold.c:3242
0x9d35a9 possible_polymorphic_call_targets(tree_node*, long,
ipa_polymorphic_call_context, bool*, void**)
../../gcc/gcc/ipa-devirt.c:1312
0x9902ab possible_polymorphic_call_targets(tree_node*, bool*, void**)
../../gcc/gcc/ipa-utils.h:135
0x98d4a6 gimple_fold_call
../../gcc/gcc/gimple-fold.c:1185
0x98d4a6 fold_stmt_1
../../gcc/gcc/gimple-fold.c:1298
0xbaacb9 fold_marked_statements
../../gcc/gcc/tree-inline.c:4511
0xbb8374 optimize_inline_calls(tree_node*)
../../gcc/gcc/tree-inline.c:4592
0x1058409 early_inliner
../../gcc/gcc/ipa-inline.c:2272
0x1058409 execute
../../gcc/gcc/ipa-inline.c:2335
Please submit a full bug report,