From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20409 invoked by alias); 6 Dec 2010 15:22:09 -0000 Received: (qmail 20397 invoked by uid 22791); 6 Dec 2010 15:22:08 -0000 X-SWARE-Spam-Status: No, hits=-2.8 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00,TW_BF X-Spam-Check-By: sourceware.org Received: from localhost (HELO gcc.gnu.org) (127.0.0.1) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 06 Dec 2010 15:22:03 +0000 From: "marc.glisse at normalesup dot org" To: gcc-bugs@gcc.gnu.org Subject: [Bug other/46823] New: ICE: edge points to wrong declaration X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: other X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: marc.glisse at normalesup dot org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Date: Mon, 06 Dec 2010 15:22:00 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2010-12/txt/msg00588.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46823 Summary: ICE: edge points to wrong declaration Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: other AssignedTo: unassigned@gcc.gnu.org ReportedBy: marc.glisse@normalesup.org Target: x86_64-unknown-linux-gnu With the file: http://geometrica.saclay.inria.fr/team/Marc.Glisse/tmp/ouin.cc.xz compiled with: c++ -frounding-math -O3 -c ouin.cc I get the error message below. A smaller version is available at: http://geometrica.saclay.inria.fr/team/Marc.Glisse/tmp/a.cc but delta made a number of illegal transformations. ouin.cc: In function 'CGAL::Polynomial CGAL::internal::gcd_(const CGAL::Polynomial&, const CGAL::Polynomial&, CGAL::Unique_factorization_domain_tag) [with NT = CGAL::Polynomial >]': ouin.cc:66187:57: error: edge points to wrong declaration: > QI size unit size align 8 symtab 0 alias set -1 canonical type 0x7fea4b2e3d20 method basetype arg-types chain chain >>> pointer_to_this > addressable asm_written used static autoinline decl_5 QI file ouin.cc line 63200 col 14 align 16 context initial abstract_origin arguments public unsigned DI size unit size align 64 symtab 0 alias set -1 canonical type 0x7fea4cc26000> readonly used unsigned DI file ouin.cc line 63200 col 37 size unit size align 64 context abstract_origin (reg/f:DI 3 bx [orig:64 this ] [64]) arg-type incoming-rtl (reg:DI 5 di [ this ]) chain readonly used unsigned DI file ouin.cc line 63200 col 35 size unit size align 64 context abstract_origin (reg/v/f:DI 1 dx [orig:65 a0 ] [65]) arg-type incoming-rtl (reg:DI 4 si [ a0 ])>> result used ignored VOID file ouin.cc line 63202 col 44 align 8 context abstract_origin > full-name "CGAL::Polynomial::Polynomial(const NT&) [with NT_ = CGAL::Polynomial >, CGAL::Polynomial::NT = CGAL::Polynomial >]" pending-inline-info 0x7fea4c02e310 template-info 0x7fea4cde7f20 (mem:QI (symbol_ref:DI ("_ZN4CGAL10PolynomialINS0_INS0_IN4CORE6BigIntEEEEEEC2ERKS4_.constprop.2093") [flags 0x3] ) [0 S1 A8])> Instead of: > QI size unit size align 8 symtab 0 alias set -1 canonical type 0x7fea4cc29930 method basetype arg-types chain chain >>> pointer_to_this > addressable used public static weak autoinline decl_5 QI defer-output file ouin.cc line 63200 col 14 align 16 context initial abstract_origin arguments public unsigned DI size unit size align 64 symtab 0 alias set -1 canonical type 0x7fea4cc26000> readonly used unsigned DI file ouin.cc line 63200 col 37 size unit size align 64 context abstract_origin arg-type chain readonly used unsigned DI file ouin.cc line 63200 col 35 size unit size align 64 context abstract_origin arg-type >> result ignored VOID file ouin.cc line 63202 col 44 align 8 context > full-name "CGAL::Polynomial::Polynomial(const NT&) [with NT_ = CGAL::Polynomial >, CGAL::Polynomial::NT = CGAL::Polynomial >]" pending-inline-info 0x7fea4c02e460 template-info 0x7fea4cde7f20 struct-function 0x7fea4c024be0 chain > CGAL::internal::Coercion_traits_for_polynomial_comp_d, B, false>::Type CGAL::internal::Coercion_traits_for_polynomial_comp_d, B, false>::Cast::operator()(const B&) const [with A = CGAL::Polynomial >, B = CORE::BigInt, CGAL::internal::Coercion_traits_for_polynomial_comp_d, B, false>::Type = CGAL::Polynomial > >, typename CGAL::Coercion_traits::Type = CGAL::Polynomial >]/6423(-1) @0x7fea4bd976e0 (asm: _ZNK4CGAL8internal37Coercion_traits_for_polynomial_comp_dINS_10PolynomialINS2_INS2_IN4CORE6BigIntEEEEEEES4_Lb0EE4CastclERKS4_.isra.1183.constprop.1969) (inline copy in CGAL::Polynomial CGAL::internal::gcd_(const CGAL::Polynomial&, const CGAL::Polynomial&, CGAL::Unique_factorization_domain_tag) [with NT = CGAL::Polynomial >]/7969) (clone of CGAL::internal::Coercion_traits_for_polynomial_comp_d, B, false>::Type CGAL::internal::Coercion_traits_for_polynomial_comp_d, B, false>::Cast::operator()(const B&) const [with A = CGAL::Polynomial >, B = CORE::BigInt, CGAL::internal::Coercion_traits_for_polynomial_comp_d, B, false>::Type = CGAL::Polynomial > >, typename CGAL::Coercion_traits::Type = CGAL::Polynomial >]/1325) availability:local analyzed 37 time, 14 benefit (76 after inlining) 15 size, 6 benefit (35 after inlining) 8 bytes stack usage reachable body local finalized inlinable called by: CGAL::Polynomial CGAL::internal::gcd_(const CGAL::Polynomial&, const CGAL::Polynomial&, CGAL::Unique_factorization_domain_tag) [with NT = CGAL::Polynomial >]/7969 (1.00 per call) (inlined) calls: CGAL::Handle_with_policy::~Handle_with_policy() [with T_ = CGAL::internal::Polynomial_rep >, HandlePolicy = CGAL::Handle_policy_no_union, Allocator_ = std::allocator > >]/5298 (can throw external) CGAL::Handle_with_policy::~Handle_with_policy() [with T_ = CGAL::internal::Polynomial_rep >, HandlePolicy = CGAL::Handle_policy_no_union, Allocator_ = std::allocator > >]/5298 (1.00 per call) (can throw external) CGAL::Polynomial::Polynomial(const NT&) [with NT_ = CGAL::Polynomial >, CGAL::Polynomial::NT = CGAL::Polynomial >]/4256 (1.00 per call) (can throw external) CGAL::internal::Coercion_traits_for_polynomial_comp_d, B, false>::Type CGAL::internal::Coercion_traits_for_polynomial_comp_d, B, false>::Cast::operator()(const B&) const [with A = CGAL::Polynomial, B = CORE::BigInt, CGAL::internal::Coercion_traits_for_polynomial_comp_d, B, false>::Type = CGAL::Polynomial >, typename CGAL::Coercion_traits::Type = CGAL::Polynomial]/10353 (inlined) (1.00 per call) (can throw external) References: Refering this function: ouin.cc:66187:57: internal compiler error: verify_cgraph_node failed