[PATCH] coroutines: Fix compile error with symmetric transfers [PR94359]
Iain Sandoe
iain@sandoe.co.uk
Mon Apr 13 14:37:48 GMT 2020
Hi Rainer,
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> wrote:
>> diff --git
>> a/gcc/testsuite/g++.dg/coroutines/torture/symmetric-transfer-00-basic.C
>> b/gcc/testsuite/g++.dg/coroutines/torture/symmetric-transfer-00-basic.C
>> index 864846e365c..8211e8250ff 100644
>> ---
>> a/gcc/testsuite/g++.dg/coroutines/torture/symmetric-transfer-00-basic.C
>> +++
>> b/gcc/testsuite/g++.dg/coroutines/torture/symmetric-transfer-00-basic.C
>> @@ -1,4 +1,5 @@
>> -// { dg-do run }
>> +// { dg-do run }
>> +// { dg-xfail-run-if "no indirect tailcall" { { lp64 && {
>> powerpc64*-linux-gnu } } || { *-*-solaris2* *-*-aix* } } }
>>
>> #if __has_include(<coroutine>)
>
> unfortunately, the dg-xfail-run-if is wrong. E.g. it causes XPASSes on
> i386-pc-solaris2.11.
.. so that behaves in a similar way to PPC?
fail on m64 pass on m32?
(I don’t have access to any x86 solaris testing)
according to my testing, sparc solaris fails for m32 and m64 (so the
condition doesn’t need any multilib discriminator there)
> You should base this on the cpu part of the triplet in general, not on
> the OS. Besides, according to gcc-testresults postings, the test FAILs
> on other targets as well: armv8l-unknown-linux-gnueabihf, hppa*, and ia64.
>
> Besides, unless you want to introduce an effective-target keyword (with
> documentation in sourcebuild.texi), probably overkill for a single use,
> you can have more than one dg-xfail-run-if line to improve readibility.
I’ll take a look at those and make multiple xfail-run-if’s
(one per target might be the neatest, and easier for a target maintainer to
add if one is missed).
thanks
Iain
More information about the Gcc-patches
mailing list