Hello!

>    PR c++/44282
>    gcc/cp/
>    * mangle.c (attr_strcmp): New.
>    (write_CV_qualifiers_for_type): Also write out attributes that
>    affect type identity.
>    (write_type): Strip all attributes after writing qualifiers.
>    libiberty/
>    * cp-demangle.c (cplus_demangle_type): Handle arguments to vendor
>    extended qualifier.

+++ b/gcc/testsuite/g++.dg/abi/mangle-regparm.C
@@ -0,0 +1,29 @@
+// { dg-do run { target i?86-*-* } }

This should read:

+// { dg-do run { target { { i?86-*-* x86_64-*-* } && ia32 } } }

The test wasn't actually run on x86_64-linux target. I'll commit the
following patch after regtest:

--cut here--
Index: mangle-regparm.C
===================================================================
--- mangle-regparm.C    (revision 224011)
+++ mangle-regparm.C    (working copy)
@@ -1,4 +1,4 @@
-// { dg-do run { target i?86-*-* } }
+// { dg-do run { target { { i?86-*-* x86_64-*-* } && ia32 } } }
// { dg-final { scan-assembler
"_Z18IndirectExternCallIPU7stdcallU7regparmILi3EEFviiEiEvT_T0_S3_" } }

typedef __SIZE_TYPE__ size_t;
--cut here--

Uros.

Reply via email to