From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id E0049387090F; Mon, 27 Apr 2020 17:19:41 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E0049387090F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1588007981; bh=Zc47mH2dU196QXFV4a8uRIbRsj3mPAvZgtAAfSrf0NE=; h=From:To:Subject:Date:In-Reply-To:References:From; b=nWYXzJDB7XcvtGZObnZlUkfuQQ0Z8yT02Xmf49u2QeQhYCFn6odhL3D9EF63PLQFv uqxVm+qpxhp2hIXPF7YUKnF9mcfqeeC1/4mFqFJleV75rC4W3jRnsUcaU0Fm/FvCzn z70bynkVJWlRh5UPD1PfYuCChPAPzvhde9MZ/wtc= From: "msebor at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/94775] [8/9/10 Regression] ICE in strip_typedefs, at cp/tree.c:1734 since r8-4668-g8a5ee94a082b3d48 Date: Mon, 27 Apr 2020 17:19:41 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: tree-optimization X-Bugzilla-Version: 10.0 X-Bugzilla-Keywords: ice-on-valid-code X-Bugzilla-Severity: normal X-Bugzilla-Who: msebor at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 8.5 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: 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-BeenThere: gcc-bugs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-bugs mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Apr 2020 17:19:42 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D94775 --- Comment #3 from Martin Sebor --- The full stack trace shows the ICE occurs while formatting the text of a warning. strip_typedefs is being called while formatting the type of an ar= ray of d and when assertion below fires: if (TYPE_USER_ALIGN (t) !=3D TYPE_USER_ALIGN (result) || TYPE_ALIGN (t) !=3D TYPE_ALIGN (result)) { gcc_assert (TYPE_USER_ALIGN (t)); if (remove_attributes) during GIMPLE pass: vrp in strip_typedefs, at cp/tree.c:1737 41 | m n::ad() const { | ^ 0xc6cab1 strip_typedefs(tree_node*, bool*, unsigned int) /src/gcc/master/gcc/cp/tree.c:1737 0xa823d8 type_to_string /src/gcc/master/gcc/cp/error.c:3214 0xa861d6 cp_printer /src/gcc/master/gcc/cp/error.c:4289 0x268d13a pp_format(pretty_printer*, text_info*) /src/gcc/master/gcc/pretty-print.c:1458 0x2666327 diagnostic_report_diagnostic(diagnostic_context*, diagnostic_info= *) /src/gcc/master/gcc/diagnostic.c:1159 0x266694b diagnostic_impl /src/gcc/master/gcc/diagnostic.c:1309 0x26671c7 warning_at(unsigned int, int, char const*, ...) /src/gcc/master/gcc/diagnostic.c:1446 0x19b82ae vrp_prop::check_array_ref(unsigned int, tree_node*, bool) /src/gcc/master/gcc/tree-vrp.c:3578 0x19ba715 check_array_bounds /src/gcc/master/gcc/tree-vrp.c:4062 0x19f1508 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*), void*, hash_set >*, tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*, hash_set >*)) /src/gcc/master/gcc/tree.c:12000 0x10ed4ac walk_gimple_op(gimple*, tree_node* (*)(tree_node**, int*, void*), walk_stmt_info*) /src/gcc/master/gcc/gimple-walk.c:202 0x19ba871 check_array_bounds_dom_walker::before_dom_children(basic_block_de= f*) /src/gcc/master/gcc/tree-vrp.c:4120 0x23f5aed dom_walker::walk(basic_block_def*) /src/gcc/master/gcc/domwalk.c:309 0x19ba8d5 vrp_prop::check_all_array_refs() /src/gcc/master/gcc/tree-vrp.c:4137 0x19bdb47 vrp_prop::vrp_finalize(bool) /src/gcc/master/gcc/tree-vrp.c:5209 0x19bdbdc execute_vrp /src/gcc/master/gcc/tree-vrp.c:5277 0x19bdddb execute /src/gcc/master/gcc/tree-vrp.c:5359 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See for instructions.=