From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 2B219385842C; Wed, 7 Jun 2023 16:39:51 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 2B219385842C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1686155991; bh=wEfMl0008+yRSLvS/16UeDxy2HoUYp0EDC8K/F9l8+k=; h=From:To:Subject:Date:From; b=rphLxWAmZkj0jodJcgBcezMZUUnGCzwkRbjTpP0NlRL6oyyq7ps/aUyiBh9YFvG1r bga48jk8aDEThLvAiuR7f6kW3bf/F96a6QvPzEo6tmMtu9ymqJIAbwn2Q+Y7bldkH5 Kb5Hg6omVXzziB2cKi12tWiyLmjWSI1NQEZa0+ME= From: "tschwinge at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/110159] New: ICEs for C++ Contracts test cases with '-fno-exceptions' Date: Wed, 07 Jun 2023 16:39:49 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c++ X-Bugzilla-Version: 14.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: tschwinge at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED 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_id short_desc product version bug_status bug_severity priority component assigned_to reporter cc target_milestone Message-ID: 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 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D110159 Bug ID: 110159 Summary: ICEs for C++ Contracts test cases with '-fno-exceptions' Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: tschwinge at gcc dot gnu.org CC: jason at gcc dot gnu.org Target Milestone: --- Given native x86_64-pc-linux-gnu build of one-week-old commit 2720bbd597f56742a17119dfe80edc2ba86af255, running 'check-gcc-c++' with '-fno-exceptions': $ make check-gcc-c++ RUNTESTFLAGS=3D'--target_board=3Dunix/-fno-excepti= ons dg.exp=3Dcontracts\*' ..., I see ICEs for C++ Contracts test cases, see below. [...]/g++.dg/contracts/contracts-assume6.C: In function 'void fun(int)': [...]/g++.dg/contracts/contracts-assume6.C:13:1: internal compiler erro= r: Segmentation fault 0x16ffb4f crash_signal [...]/gcc/toplev.cc:314 0xe41fc8 contains_struct_check(tree_node*, tree_node_structure_enum, ch= ar const*, int, char const*) [...]/gcc/tree.h:3656 0xe41fc8 build_addr_func(tree_node*, int) [...]/gcc/cp/call.cc:278 0xe4220d build_call_a(tree_node*, int, tree_node**) [...]/gcc/cp/call.cc:366 0xed0dff build_contract_check(tree_node*) [...]/gcc/cp/contracts.cc:1814 0xebdec7 cp_genericize_r [...]/gcc/cp/cp-gimplify.cc:1500 0x19ed0e4 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 >*)) [...]/gcc/tree.cc:11341 0x1140b3f c_genericize_control_stmt(tree_node**, int*, void*, tree_node* (*)(tree_node**, int*, void*), tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*, hash_set >*)) [...]/gcc/c-family/c-gimplify.cc:534 0xebdbf1 cp_genericize_r [...]/gcc/cp/cp-gimplify.cc:1861 0x19ed0e4 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 >*)) [...]/gcc/tree.cc:11341 0xebd1b9 cp_genericize_tree [...]/gcc/cp/cp-gimplify.cc:1894 0xebd536 cp_genericize(tree_node*) [...]/gcc/cp/cp-gimplify.cc:2036 0xf0a5ff finish_function(bool) [...]/gcc/cp/decl.cc:18312 0xed2729 finish_function_contracts(tree_node*) [...]/gcc/cp/contracts.cc:2050 0xf09895 finish_function(bool) [...]/gcc/cp/decl.cc:18354 0x1008677 cp_parser_function_definition_after_declarator [...]/gcc/cp/parser.cc:32057 0x1009b53 cp_parser_function_definition_from_specifiers_and_declarator [...]/gcc/cp/parser.cc:31971 0x1009b53 cp_parser_init_declarator [...]/gcc/cp/parser.cc:22822 0xfde638 cp_parser_simple_declaration [...]/gcc/cp/parser.cc:15435 0x10143db cp_parser_declaration [...]/gcc/cp/parser.cc:15121 'gcc/cp/call.cc': 275 tree 276 build_addr_func (tree function, tsubst_flags_t complain) 277 { 278 tree type =3D TREE_TYPE (function); 358 tree 359 build_call_a (tree function, int n, tree *argarray) 360 { 361 tree decl; 362 tree result_type; 363 tree fntype; 364 int i; 365=20 366 function =3D build_addr_func (function, tf_warning_or_error); 'gcc/cp/contracts.cc': 1775 tree 1776 build_contract_check (tree contract) 1777 { [...] 1814 finish_expr_stmt (build_call_a (terminate_fn, 0, nullptr)); So I suppose 'terminate_fn' isn't initialized here, which is normally done = by 'init_exception_processing', which isn't called for '-fno-exceptions'. I'm happy to have a try at addressing this, but will need guidance at which lev= el additional 'if (flag_exceptions)' or similar is necessary. This code exists as of the initial commit r13-4160-g2efb237ffc68ec9bb17982434f5941bfa14f8b50 "c++: implement P1492 contracts". [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-assume6.C (test for errors, line 29) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-assume6.C (test for errors, line 42) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-assume6.C (test for errors, line 49) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-assume6.C (test for warnings, line 24) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-assume6.C (internal compi= ler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-assume6.C (test for excess error= s) UNSUPPORTED: g++.dg/contracts/contracts-comdat1.C -std=3Dc++14 UNSUPPORTED: g++.dg/contracts/contracts-comdat1.C -std=3Dc++17 [-PASS:-]{+UNRESOLVED:+} g++.dg/contracts/contracts-comdat1.C -std=3Dc= ++20=20 scan-assembler-not (weak|globl)[^\\n]*_Z1fi.pre [-PASS:-]{+UNRESOLVED:+} g++.dg/contracts/contracts-comdat1.C -std=3Dc= ++20=20 scan-assembler-not _Z1fi.pre,comdat [-PASS:-]{+FAIL: g++.dg/contracts/contracts-comdat1.C -std=3Dc++20 (in= ternal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-comdat1.C -std=3Dc++20 (test for = excess errors) UNSUPPORTED: g++.dg/contracts/contracts-comdat1.C -std=3Dc++98 [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-conversion1.C (test for errors, line 9) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-conversion1.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-conversion1.C (test for excess errors) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-ctor-dtor1.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-ctor-dtor1.C (test for excess errors) PASS: g++.dg/contracts/contracts-cv1.C (test for errors, line 11) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-cv1.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-cv1.C (test for excess errors) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-deduced1.C (test for errors, line 100) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-deduced1.C (test for errors, line 28) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-deduced1.C (test for errors, line 70) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-deduced1.C (test for errors, line 75) PASS: g++.dg/contracts/contracts-deduced1.C (test for errors, line 8) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-deduced1.C (test for errors, line 82) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-deduced1.C (test for errors, line 86) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-deduced1.C (internal comp= iler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-deduced1.C (test for excess erro= rs) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-large-return.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-large-return.C (test for excess errors) PASS: g++.dg/contracts/contracts-nested-class1.C (test for errors, l= ine 13) PASS: g++.dg/contracts/contracts-nested-class1.C (test for errors, l= ine 16) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-nested-class1.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-nested-class1.C (test for excess errors) UNSUPPORTED: g++.dg/contracts/contracts-nocopy1.C -std=3Dc++14 UNSUPPORTED: g++.dg/contracts/contracts-nocopy1.C -std=3Dc++17 [-PASS:-]{+FAIL: g++.dg/contracts/contracts-nocopy1.C -std=3Dc++20 (in= ternal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-nocopy1.C -std=3Dc++20 (test for = excess errors) UNSUPPORTED: g++.dg/contracts/contracts-nocopy1.C -std=3Dc++98 [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C (test for errors, line 21) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C (test for errors, line 22) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C (test for errors, line 23) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C (test for errors, line 24) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C (test for errors, line 25) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C (test for errors, line 26) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C (test for errors, line 34) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C (test for errors, line 39) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C (test for errors, line 40) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C (test for errors, line 41) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C at line 28 (test for errors, line 27) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C at line 29 (test for errors, line 27) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C at line 30 (test for errors, line 27) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C at line 31 (test for errors, line 27) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-override.C at line 33 (test for errors, line 32) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-override.C (internal comp= iler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-override.C (test for excess erro= rs) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-post1.C (test for erro= rs, line 25) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-post1.C (test for erro= rs, line 35) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-post1.C (test for erro= rs, line 41) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-post1.C (test for erro= rs, line 53) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-post1.C (test for erro= rs, line 59) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-post1.C (test for erro= rs, line 66) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-post1.C (test for erro= rs, line 72) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-post1.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-post1.C (test for excess errors) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-post2.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-post2.C (test for excess errors) [-PASS:-]{+UNRESOLVED:+} g++.dg/contracts/contracts-post2.C [-executi= on test-]{+compilation failed to produce executable+} [-PASS:-]{+FAIL: g++.dg/contracts/contracts-post3.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-post3.C (test for excess errors) [-PASS: g++.dg/contracts/contracts-post3.C execution test-] [-PASS:-]{+UNRESOLVED:+} g++.dg/contracts/contracts-post3.C [-output pattern test-]{+compilation failed to produce executable+} PASS: g++.dg/contracts/contracts-post4.C (test for errors, line 20) PASS: g++.dg/contracts/contracts-post4.C (test for errors, line 26) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-post4.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-post4.C (test for excess errors) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-post5.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-post5.C (test for excess errors) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-post6.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-post6.C (test for excess errors) PASS: g++.dg/contracts/contracts-pre1.C (test for bogus messages, li= ne 23) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 14) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 15) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 16) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 19) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 20) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 21) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 22) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 26) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 28) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 29) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 30) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 32) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 33) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 34) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for error= s, line 35) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-pre1.C at line 27 (test for warnings, line 26) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-pre1.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-pre1.C (test for excess errors) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-pre2a1.C -std=3Dc++14 (int= ernal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-pre2a1.C -std=3Dc++14 (test for e= xcess errors) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-pre2a1.C -std=3Dc++17 (int= ernal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-pre2a1.C -std=3Dc++17 (test for e= xcess errors) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-pre2a1.C -std=3Dc++20 (int= ernal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-pre2a1.C -std=3Dc++20 (test for e= xcess errors) UNSUPPORTED: g++.dg/contracts/contracts-pre2a1.C -std=3Dc++98 [-PASS:-]{+FAIL: g++.dg/contracts/contracts-pre6.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-pre6.C (test for excess errors) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl1.C (test for errors, line 107) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl1.C (test for errors, line 54) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl1.C (test for errors, line 57) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl1.C (test for errors, line 60) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl1.C (test for errors, line 63) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl1.C (test for errors, line 72) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl1.C (test for errors, line 80) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl1.C (test for errors, line 98) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-redecl1.C (internal compi= ler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-redecl1.C (test for excess error= s) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 106) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 114) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 115) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 120) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 126) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 134) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 146) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 49) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 52) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 55) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 64) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 73) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 81) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 88) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 95) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for errors, line 96) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for warnings, line 116) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-redecl2.C (internal compi= ler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-redecl2.C (test for excess error= s) PASS: g++.dg/contracts/contracts-redecl5.C (test for bogus messages, line 16) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl5.C (test for errors, line 58) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl5.C (test for errors, line 61) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl5.C (test for errors, line 64) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl5.C (test for errors, line 73) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl5.C (test for errors, line 82) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl5.C (test for errors, line 90) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl5.C (test for errors, line 97) PASS: g++.dg/contracts/contracts-redecl5.C (test for warnings, line = 15) PASS: g++.dg/contracts/contracts-redecl5.C (test for warnings, line = 24) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl5.C (test for warnings, line 34) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl5.C (test for warnings, line 54) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl5.C at line 35 (= test for warnings, line 34) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl5.C at line 38 (= test for warnings, line 37) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl5.C at line 41 (= test for warnings, line 40) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-redecl5.C (internal compi= ler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-redecl5.C (test for excess error= s) PASS: g++.dg/contracts/contracts-redecl8.C (test for bogus messages, line 48) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl8.C (test for errors, line 24) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl8.C (test for errors, line 43) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts-redecl8.C (test for errors, line 63) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-redecl8.C (internal compi= ler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-redecl8.C (test for excess error= s) PASS: g++.dg/contracts/contracts-tmpl-attr1.C (test for warnings, li= ne 15) PASS: g++.dg/contracts/contracts-tmpl-attr1.C (test for warnings, li= ne 16) PASS: g++.dg/contracts/contracts-tmpl-attr1.C (test for warnings, li= ne 9) [-PASS:-]{+FAIL: g++.dg/contracts/contracts-tmpl-attr1.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts-tmpl-attr1.C (test for excess errors) @@ -43656,45 +43563,45 @@ PASS: g++.dg/contracts/contracts1.C (test = for errors, line 42) PASS: g++.dg/contracts/contracts1.C (test for errors, line 43) PASS: g++.dg/contracts/contracts1.C (test for errors, line 44) PASS: g++.dg/contracts/contracts1.C (test for errors, line 45) [-PASS:-]{+FAIL: g++.dg/contracts/contracts1.C (internal compiler err= or: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts1.C (test for excess errors) PASS: g++.dg/contracts/contracts11.C (test for errors, line 19) PASS: g++.dg/contracts/contracts11.C (test for errors, line 25) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts11.C (test for errors, = line 43) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts11.C (test for errors, = line 58) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts11.C (test for errors, = line 97) [-PASS:-]{+FAIL: g++.dg/contracts/contracts11.C (internal compiler er= ror: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts11.C (test for excess errors) [-PASS:-]{+FAIL: g++.dg/contracts/contracts12.C (internal compiler er= ror: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts12.C (test for excess errors) [-PASS:-]{+UNRESOLVED:+} g++.dg/contracts/contracts12.C scan-assembler default [-PASS:-]{+UNRESOLVED:+} g++.dg/contracts/contracts12.C=20=20 scan-assembler-not audit [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts13.C (test for warnings, line 42) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts13.C (test for warnings, line 45) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts13.C (test for warnings, line 47) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts13.C at line 43 (test f= or errors, line 12) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts13.C at line 46 (test f= or errors, line 30) [-PASS:-]{+FAIL:+} g++.dg/contracts/contracts13.C at line 48 (test f= or errors, line 36) [-PASS:-]{+FAIL: g++.dg/contracts/contracts13.C (internal compiler er= ror: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts13.C (test for excess errors) [-PASS: g++.dg/contracts/contracts14.C (test for excess errors)-] [-PASS: g++.dg/contracts/contracts14.C execution test-] [-PASS:-]{+UNSUPPORTED:+} g++.dg/contracts/contracts14.C [-output patt= ern test-] [-PASS: g++.dg/contracts/contracts15.C (test for excess errors)-] [-PASS: g++.dg/contracts/contracts15.C execution test-] [-PASS:-]{+: exception handling disabled+} {+UNSUPPORTED:+} g++.dg/contracts/contracts15.C [-output pattern test-] [-PASS: g++.dg/contracts/contracts16.C (test for excess errors)-] [-PASS:-]{+: exception handling disabled+} {+FAIL:+} g++.dg/contracts/contracts16.C [-execution test-] [-PASS:-]{+(internal compiler error: Segmentation fault)+} {+UNSUPPORTED:+} g++.dg/contracts/contracts16.C [-output pattern test-] [-PASS:-]{+: exception handling disabled+} {+FAIL:+} g++.dg/contracts/contracts17.C [-(test for excess errors)-] [-PASS: g++.dg/contracts/contracts17.C execution test-] [-PASS:-]{+(internal compiler error: Segmentation fault)+} {+UNSUPPORTED:+} g++.dg/contracts/contracts17.C [-output pattern test-] [-PASS:-]{+: exception handling disabled+} {+FAIL: g++.dg/contracts/contracts18.C (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts18.C (test for excess errors) [-PASS:-]{+UNRESOLVED:+} g++.dg/contracts/contracts18.C [-execution test-]{+compilation failed to produce executable+} [-PASS:-]{+FAIL: g++.dg/contracts/contracts2.C (internal compiler err= or: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts2.C (test for excess errors) [-PASS:-]{+UNRESOLVED:+} g++.dg/contracts/contracts2.C [-execution test-]{+compilation failed to produce executable+} [-PASS:-]{+FAIL: g++.dg/contracts/contracts24.C (internal compiler er= ror: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts24.C (test for excess errors) [-PASS:-]{+UNRESOLVED:+} g++.dg/contracts/contracts24.C [-execution test-]{+compilation failed to produce executable+} [-PASS:-]{+FAIL: g++.dg/contracts/contracts3.C (internal compiler err= or: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts3.C (test for excess errors) [-PASS: g++.dg/contracts/contracts3.C execution test-] [-PASS:-]{+UNRESOLVED:+} g++.dg/contracts/contracts3.C [-output patte= rn test-]{+compilation failed to produce executable+} [-PASS:-]{+FAIL: g++.dg/contracts/contracts5.C (internal compiler err= or: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts5.C (test for excess errors) [-PASS: g++.dg/contracts/contracts5.C execution test-] [-PASS:-]{+UNRESOLVED:+} g++.dg/contracts/contracts5.C [-output patte= rn test-]{+compilation failed to produce executable+} @@ -43740,7 +43648,8 @@ PASS: g++.dg/contracts/contracts8.C at line = 34 (test for warnings, line 33) PASS: g++.dg/contracts/contracts8.C at line 36 (test for warnings, l= ine 35) PASS: g++.dg/contracts/contracts8.C at line 39 (test for warnings, l= ine 38) PASS: g++.dg/contracts/contracts8.C at line 41 (test for warnings, l= ine 40) [-PASS:-]{+FAIL: g++.dg/contracts/contracts8.C (internal compiler err= or: Segmentation fault)+} {+FAIL:+} g++.dg/contracts/contracts8.C (test for excess errors) [-PASS:-]{+FAIL: g++.dg/modules/contracts-tpl-friend-1_b.C -std=3Dc++17 (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/modules/contracts-tpl-friend-1_b.C -std=3Dc++17 (test = for excess errors) [-PASS:-]{+FAIL: g++.dg/modules/contracts-tpl-friend-1_b.C -std=3Dc++2a (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/modules/contracts-tpl-friend-1_b.C -std=3Dc++2a (test = for excess errors) [-PASS:-]{+FAIL: g++.dg/modules/contracts-tpl-friend-1_b.C -std=3Dc++2b (internal compiler error: Segmentation fault)+} {+FAIL:+} g++.dg/modules/contracts-tpl-friend-1_b.C -std=3Dc++2b (test = for excess errors)=