public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "manu at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug middle-end/67133] [6 Regression] ICE at -Os and above on x86_64-linux-gnu in gimple_op, at gimple.h:2274 Date: Thu, 06 Aug 2015 18:28:00 -0000 [thread overview] Message-ID: <bug-67133-4-vKJLYj6HfX@http.gcc.gnu.org/bugzilla/> (raw) In-Reply-To: <bug-67133-4@http.gcc.gnu.org/bugzilla/> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67133 Manuel López-Ibáñez <manu at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |law at gcc dot gnu.org --- Comment #7 from Manuel López-Ibáñez <manu at gcc dot gnu.org> --- (In reply to Zhendong Su from comment #0) > The following code causes an ICE when compiled with the current gcc trunk at > -Os and above on x86_64-linux-gnu in both 32-bit and 64-bit modes. > > It is a regression from 5.1.x. This was already latent in r226635, just compile with options: -Os -fisolate-erroneous-paths-dereference -fisolate-erroneous-paths-attribute The problem is that infer_nonnull_range gets: (gdb) p debug_gimple_stmt(stmt) __builtin_unreachable (); which is decorated with attributes: (gdb) p debug_tree(attrs) <tree_list 0x7ffff64b3bb8 purpose <identifier_node 0x7ffff644b3c0 nonnull> value <tree_list 0x7ffff645edc0 value <integer_cst 0x7ffff6444060 constant 1>> chain <tree_list 0x7ffff64b3b90 purpose <identifier_node 0x7ffff644b2d0 format> value <tree_list 0x7ffff6460730 value <identifier_node 0x7ffff644b550 printf> chain <tree_list 0x7ffff645ef00 value <integer_cst 0x7ffff6444060 1> chain <tree_list 0x7ffff645ede8 value <integer_cst 0x7ffff6444318 constant 2>>>>>> That is, this __builtin_unreachable has __attribute__((nonnull(1))), which doesn't make any sense and breaks infer_nonnull_range when it tries to access its first argument. I have no idea whatsoever how __builtin_unreachable gets to have attribute nonnull, but that is a pre-existing bug. Surprising it doesn't break more stuff. >From gcc-bugs-return-494314-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Thu Aug 06 18:36:06 2015 Return-Path: <gcc-bugs-return-494314-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org> Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 20014 invoked by alias); 6 Aug 2015 18:36:06 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: <gcc-bugs.gcc.gnu.org> List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/> List-Post: <mailto:gcc-bugs@gcc.gnu.org> List-Help: <mailto:gcc-bugs-help@gcc.gnu.org> Sender: gcc-bugs-owner@gcc.gnu.org Delivered-To: mailing list gcc-bugs@gcc.gnu.org Received: (qmail 18169 invoked by uid 48); 6 Aug 2015 18:36:01 -0000 From: "manu at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug middle-end/67133] [6 Regression] ICE at -Os and above on x86_64-linux-gnu in gimple_op, at gimple.h:2274 Date: Thu, 06 Aug 2015 18:36:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: middle-end X-Bugzilla-Version: 6.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: manu at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: <bug-67133-4-TA55TiHlcV@http.gcc.gnu.org/bugzilla/> In-Reply-To: <bug-67133-4@http.gcc.gnu.org/bugzilla/> References: <bug-67133-4@http.gcc.gnu.org/bugzilla/> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-08/txt/msg00456.txt.bz2 Content-length: 248 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67133 --- Comment #8 from Manuel López-Ibáñez <manu at gcc dot gnu.org> --- Or even with options: -O2 -fisolate-erroneous-paths-attribute (why is the latter not enabled by default?) >From gcc-bugs-return-494315-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Thu Aug 06 18:41:43 2015 Return-Path: <gcc-bugs-return-494315-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org> Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 42620 invoked by alias); 6 Aug 2015 18:41:43 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: <gcc-bugs.gcc.gnu.org> List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/> List-Post: <mailto:gcc-bugs@gcc.gnu.org> List-Help: <mailto:gcc-bugs-help@gcc.gnu.org> Sender: gcc-bugs-owner@gcc.gnu.org Delivered-To: mailing list gcc-bugs@gcc.gnu.org Received: (qmail 42561 invoked by uid 48); 6 Aug 2015 18:41:39 -0000 From: "trippels at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/67139] [concepts] ICE on checking concepts with void Date: Thu, 06 Aug 2015 18:41:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c++ X-Bugzilla-Version: c++-concepts X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: trippels at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_status cf_reconfirmed_on cc everconfirmed Message-ID: <bug-67139-4-pIulJJAaDi@http.gcc.gnu.org/bugzilla/> In-Reply-To: <bug-67139-4@http.gcc.gnu.org/bugzilla/> References: <bug-67139-4@http.gcc.gnu.org/bugzilla/> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-08/txt/msg00457.txt.bz2 Content-length: 2983 https://gcc.gnu.org/bugzilla/show_bug.cgi?idg139 Markus Trippelsdorf <trippels at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2015-08-06 CC| |trippels at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #1 from Markus Trippelsdorf <trippels at gcc dot gnu.org> --- markus@x4 tmp % cat o.ii template <typename T> typename T::typevalue_type _v; template <class T> concept bool Constructible() { return _v<T>; } template <class T> concept bool MoveConstructible() { return Constructible<T &&>(); } template <class> constexpr bool move_constructible() { return false; } MoveConstructible { T } constexpr bool move_constructible() { return true; } static_assert((!move_constructible<void>()), ""); markus@x4 tmp % g++ -std=gnu++1z -c o.ii o.ii:12:42: internal compiler error: Segmentation fault static_assert((!move_constructible<void>()), ""); ^ 0xc7f85f crash_signal ../../gcc/gcc/toplev.c:352 0x7fab31e0770f ??? /var/tmp/glibc/signal/../sysdeps/unix/sysv/linux/x86_64/sigaction.c:0 0xef7bd0 strip_array_types(tree_node*) ../../gcc/gcc/tree.c:8194 0x71a2e8 cp_type_quals(tree_node const*) ../../gcc/gcc/cp/typeck.c:9006 0x790024 cv_unqualified(tree_node*) ../../gcc/gcc/cp/tree.c:1161 0x7fc8c4 satisfy_predicate_constraint ../../gcc/gcc/cp/constraint.cc:1705 0x7fc8c4 satisfy_constraint_1 ../../gcc/gcc/cp/constraint.cc:1901 0x7fd5f6 satisfy_constraint ../../gcc/gcc/cp/constraint.cc:1952 0x7fd74c constraints_satisfied_p(tree_node*) ../../gcc/gcc/cp/constraint.cc:2059 0x5d832c add_function_candidate ../../gcc/gcc/cp/call.c:1986 0x5d8e88 add_template_candidate_real ../../gcc/gcc/cp/call.c:3109 0x5d957c add_template_candidate ../../gcc/gcc/cp/call.c:3151 0x5d957c add_candidates ../../gcc/gcc/cp/call.c:5307 0x5dbc03 perform_overload_resolution ../../gcc/gcc/cp/call.c:4003 0x5de10e build_new_function_call(tree_node*, vec<tree_node*, va_gc, vl_embed>**, bool, int) ../../gcc/gcc/cp/call.c:4080 0x76b998 finish_call_expr(tree_node*, vec<tree_node*, va_gc, vl_embed>**, bool, bool, int) ../../gcc/gcc/cp/semantics.c:2391 0x6e9737 cp_parser_postfix_expression ../../gcc/gcc/cp/parser.c:6421 0x6ee229 cp_parser_unary_expression ../../gcc/gcc/cp/parser.c:7485 0x6ee188 cp_parser_unary_expression ../../gcc/gcc/cp/parser.c:7438 0x6eee57 cp_parser_binary_expression ../../gcc/gcc/cp/parser.c:8222 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions.
next prev parent reply other threads:[~2015-08-06 18:28 UTC|newest] Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <bug-67133-4@http.gcc.gnu.org/bugzilla/> 2015-08-06 8:58 ` trippels at gcc dot gnu.org 2015-08-06 9:00 ` rguenth at gcc dot gnu.org 2015-08-06 9:00 ` rguenth at gcc dot gnu.org 2015-08-06 9:00 ` trippels at gcc dot gnu.org 2015-08-06 9:03 ` manu at gcc dot gnu.org 2015-08-06 18:28 ` manu at gcc dot gnu.org [this message] 2015-08-06 18:48 ` trippels at gcc dot gnu.org 2015-08-06 19:21 ` manu at gcc dot gnu.org 2015-08-13 15:29 ` mpolacek at gcc dot gnu.org 2015-08-13 15:56 ` mpolacek at gcc dot gnu.org 2015-08-13 16:03 ` mpolacek at gcc dot gnu.org 2015-08-13 16:13 ` mpolacek at gcc dot gnu.org 2015-08-14 8:34 ` rguenth at gcc dot gnu.org 2015-08-14 9:02 ` mpolacek at gcc dot gnu.org 2015-08-14 10:04 ` jamborm at gcc dot gnu.org 2015-08-14 12:36 ` mpolacek at gcc dot gnu.org 2015-08-14 12:43 ` jamborm at gcc dot gnu.org 2015-08-14 13:11 ` rguenth at gcc dot gnu.org 2015-08-17 11:34 ` jamborm at gcc dot gnu.org 2015-08-17 14:09 ` rguenth at gcc dot gnu.org 2015-08-17 14:46 ` jamborm at gcc dot gnu.org 2015-08-18 7:37 ` rguenth at gcc dot gnu.org 2015-08-19 14:23 ` mpolacek at gcc dot gnu.org 2015-08-19 14:23 ` mpolacek at gcc dot gnu.org 2015-08-24 16:07 ` mpolacek at gcc dot gnu.org
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=bug-67133-4-vKJLYj6HfX@http.gcc.gnu.org/bugzilla/ \ --to=gcc-bugzilla@gcc.gnu.org \ --cc=gcc-bugs@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).