From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2140) id BC6E5385783F; Thu, 23 Feb 2023 13:27:29 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BC6E5385783F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1677158849; bh=9FsPVJY7QTtKkYS5W2r4AcdyEGmHHz6Yk0LyLJhrG6A=; h=From:To:Subject:Date:From; b=PLG0YsnLEjwoAdESlUhIQOBwL4Ne+Hnzw2QmME+HXDeqA1cu6ZyJ+dPCJ/KnrYGI0 qxhLehBzoYhwyYDW0h9jqwCm1ZBeLO3bQ/PV9LKcRlbXtWcTbYxh/Tx08nB8LrdTOo szkDksoq3Xmb4xltN0OJwQ83oasYLQm/e5VTDvB0= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Alexandre Oliva To: gcc-cvs@gcc.gnu.org Subject: [gcc(refs/users/aoliva/heads/testme)] [PR105224] C++ modules and AAPCS/ARM EABI clash on inline key methods X-Act-Checkin: gcc X-Git-Author: Alexandre Oliva X-Git-Refname: refs/users/aoliva/heads/testme X-Git-Oldrev: 86b4c702b17a76cd437cfdec93dbc323099dedff X-Git-Newrev: 9bd607ecf8cab3f79f73b5a682df4c331b7e67c5 Message-Id: <20230223132729.BC6E5385783F@sourceware.org> Date: Thu, 23 Feb 2023 13:27:29 +0000 (GMT) List-Id: https://gcc.gnu.org/g:9bd607ecf8cab3f79f73b5a682df4c331b7e67c5 commit 9bd607ecf8cab3f79f73b5a682df4c331b7e67c5 Author: Alexandre Oliva Date: Thu Feb 16 06:35:35 2023 -0300 [PR105224] C++ modules and AAPCS/ARM EABI clash on inline key methods g++.dg/modules/virt-2_a.C fails on arm-eabi and many other arm targets that use the AAPCS variant. ARM is the only target that overrides TARGET_CXX_KEY_METHOD_MAY_BE_INLINE. It's not clear to me which way the clash between AAPCS and C++ Modules design should be resolved, but currently it favors AAPCS and thus the test fails, so skip it on arm_eabi. for gcc/testsuite/ChangeLog PR c++/105224 * g++.dg/modules/virt-2_a.C: Skip on arm_eabi. Diff: --- gcc/testsuite/g++.dg/modules/virt-2_a.C | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/gcc/testsuite/g++.dg/modules/virt-2_a.C b/gcc/testsuite/g++.dg/modules/virt-2_a.C index 580552be5a0..8f9ede3427d 100644 --- a/gcc/testsuite/g++.dg/modules/virt-2_a.C +++ b/gcc/testsuite/g++.dg/modules/virt-2_a.C @@ -1,4 +1,6 @@ -// { dg-module-do run } +// AAPCS overrides TARGET_CXX_KEY_METHOD_MAY_BE_INLINE, +// in a way that invalidates this test. +// { dg-module-do run { target { ! arm_eabi } } } // { dg-additional-options -fmodules-ts } export module foo; // { dg-module-cmi foo } @@ -22,6 +24,6 @@ export int Visit (Visitor *v) } // Emit here -// { dg-final { scan-assembler {_ZTVW3foo7Visitor:} } } -// { dg-final { scan-assembler {_ZTIW3foo7Visitor:} } } -// { dg-final { scan-assembler {_ZTSW3foo7Visitor:} } } +// { dg-final { scan-assembler {_ZTVW3foo7Visitor:} } +// { dg-final { scan-assembler {_ZTIW3foo7Visitor:} } +// { dg-final { scan-assembler {_ZTSW3foo7Visitor:} }