]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
[PR105224] C++ modules and AAPCS/ARM EABI clash on inline key methods
authorAlexandre Oliva <oliva@adacore.com>
Fri, 24 Feb 2023 14:31:05 +0000 (11:31 -0300)
committerAlexandre Oliva <oliva@gnu.org>
Fri, 24 Feb 2023 14:31:05 +0000 (11:31 -0300)
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.

gcc/testsuite/g++.dg/modules/virt-2_a.C

index 580552be5a0d845904f6d9914050333f460ad9ca..b5050445c3f15e7bf3d54c0e81dd9e1ce6d97b97 100644 (file)
@@ -1,3 +1,6 @@
+// AAPCS overrides TARGET_CXX_KEY_METHOD_MAY_BE_INLINE,
+// in a way that invalidates this test.
+// { dg-skip-if "!TARGET_CXX_KEY_METHOD_MAY_BE_INLINE" { arm_eabi } } 
 // { dg-module-do run }
 // { dg-additional-options -fmodules-ts }
 export module foo;