On Feb 21, 2023, Richard Earnshaw <richard.earns...@foss.arm.com> wrote:
> Rather than scanning for the triplet, a better test would be > { xfail { arm_eabi } } Indeed, thanks. Here's the updated patch, retested. Ok to install? [PR105224] C++ modules and AAPCS/ARM EABI clash on inline key methods From: Alexandre Oliva <ol...@adacore.com> 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. Skipping the test or conditionally dropping the inline keyword breaks subsequent tests, so I'm XFAILing the expectation that vtable and rtti symbols are output on arm_eabi targets. for gcc/testsuite/ChangeLog PR c++/105224 * g++.dg/modules/virt-2_a.C: XFAIL syms on arm_eabi. --- gcc/testsuite/g++.dg/modules/virt-2_a.C | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gcc/testsuite/g++.dg/modules/virt-2_a.C b/gcc/testsuite/g++.dg/modules/virt-2_a.C index 580552be5a0d8..f5d68878f50fb 100644 --- a/gcc/testsuite/g++.dg/modules/virt-2_a.C +++ b/gcc/testsuite/g++.dg/modules/virt-2_a.C @@ -22,6 +22,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:} { xfail { arm_eabi } } } } +// { dg-final { scan-assembler {_ZTIW3foo7Visitor:} { xfail { arm_eabi } } } } +// { dg-final { scan-assembler {_ZTSW3foo7Visitor:} { xfail { arm_eabi } } } } -- Alexandre Oliva, happy hacker https://FSFLA.org/blogs/lxo/ Free Software Activist GNU Toolchain Engineer Disinformation flourishes because many people care deeply about injustice but very few check the facts. Ask me about <https://stallmansupport.org>