From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by sourceware.org (Postfix) with ESMTPS id 66C013858022 for ; Tue, 4 Oct 2022 17:08:14 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 66C013858022 Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-245-XoSb3UAXP6GijJ0L5cfDog-1; Tue, 04 Oct 2022 13:08:12 -0400 X-MC-Unique: XoSb3UAXP6GijJ0L5cfDog-1 Received: from smtp.corp.redhat.com (int-mx10.intmail.prod.int.rdu2.redhat.com [10.11.54.10]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 74E913C0CD3F for ; Tue, 4 Oct 2022 17:08:12 +0000 (UTC) Received: from fedora.redhat.com (unknown [10.40.192.57]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9735D492B04; Tue, 4 Oct 2022 17:08:11 +0000 (UTC) From: Bruno Larsen To: gdb-patches@sourceware.org Subject: [PATCH 05/11] gdb/testsuite: allow for clang style destructors on gdb.cp/m-static.exp Date: Tue, 4 Oct 2022 19:07:41 +0200 Message-Id: <20221004170747.154307-7-blarsen@redhat.com> In-Reply-To: <20221004170747.154307-1-blarsen@redhat.com> References: <20221004170747.154307-1-blarsen@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.10 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII"; x-default=true X-Spam-Status: No, score=-12.9 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_LOW, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Oct 2022 17:08:20 -0000 when running gdb.cp/m-static.exp using clang, we get the following failures: print test1.~gnu_obj_1^M $6 = {void (gnu_obj_1 * const)} 0x555555555470 ^M (gdb) FAIL: gdb.cp/m-static.exp: simple object instance, print destructor ptype test1.~gnu_obj_1^M type = void (gnu_obj_1 * const)^M (gdb) FAIL: gdb.cp/m-static.exp: simple object instance, ptype destructor print test1.'~gnu_obj_1'^M $7 = {void (gnu_obj_1 * const)} 0x555555555470 ^M (gdb) FAIL: gdb.cp/m-static.exp: simple object instance, print quoted destructor This is because the test is expecting an extra integer parameter on the destructor. Looking at the debuginfo, it seems that there is nothing actually wrong with this output, so these tests were changed to test multiple possible regexps. --- gdb/testsuite/gdb.cp/m-static.exp | 36 ++++++++++++++++++++++--------- 1 file changed, 26 insertions(+), 10 deletions(-) diff --git a/gdb/testsuite/gdb.cp/m-static.exp b/gdb/testsuite/gdb.cp/m-static.exp index 979de23a44f..332e1cbe1f9 100644 --- a/gdb/testsuite/gdb.cp/m-static.exp +++ b/gdb/testsuite/gdb.cp/m-static.exp @@ -102,16 +102,32 @@ if { [is_aarch32_target] } { {type = void \(single_constructor \* const\)} \ "simple object class, ptype constructor" - gdb_test "print test1.~gnu_obj_1" \ - { = {void \(gnu_obj_1 \* const, int\)} 0x[0-9a-f]+ } \ - "simple object instance, print destructor" - gdb_test "ptype test1.~gnu_obj_1" \ - {type = void \(gnu_obj_1 \* const, int\)} \ - "simple object instance, ptype destructor" - - gdb_test "print test1.'~gnu_obj_1'" \ - { = {void \(gnu_obj_1 \*( const)?, int\)} 0x[0-9a-f]+ } \ - "simple object instance, print quoted destructor" + gdb_test_multiple "print test1.~gnu_obj_1" "simple object instance, print destructor" { + -re -wrap { = {void \(gnu_obj_1 \* const, int\)} 0x[0-9a-f]+ } { + pass $gdb_test_name + } + -re -wrap { = {void \(gnu_obj_1 \* const\)} 0x[0-9a-f]+ } { + pass $gdb_test_name + } + } + + gdb_test_multiple "ptype test1.~gnu_obj_1" "simple object instance, ptype destructor" { + -re -wrap {type = void \(gnu_obj_1 \* const, int\)} { + pass $gdb_test_name + } + -re -wrap {type = void \(gnu_obj_1 \* const\)} { + pass $gdb_test_name + } + } + + gdb_test_multiple "print test1.'~gnu_obj_1'" "simple object instance, print quoted destructor" { + -re -wrap { = {void \(gnu_obj_1 \*( const)?, int\)} 0x[0-9a-f]+ } { + pass $gdb_test_name + } + -re -wrap { = {void \(gnu_obj_1 \*( const)?\)} 0x[0-9a-f]+ } { + pass $gdb_test_name + } + } gdb_test "ptype gnu_obj_1::'~gnu_obj_1'" \ {type = void \(gnu_obj_1 \* const\)} \ -- 2.37.3