Hi,

On Wed, Sep 26 2018, Joseph Myers wrote:
> On Wed, 26 Sep 2018, Martin Jambor wrote:
>
>> I see, I guess the easiest is to skip the test on targets that do not
>> really have long double, although if someone thinks that is too
>> restrictive, I can also split the test again and move long double bits
>> to a separate test.
>
> You should be able to use
>
> { dg-warning "warning regex" "test name" { target { large_long_double } } }
>
> to make the expectation of a warning conditional without making the whole 
> test conditional.

I hoped that Christophe would try this out because I do not have an easy
access to a problematic architecture, but I can at least confirm that
the following still passes on x86_64-linux (and should also pass on
archs without long double, if I understood Joseph well).

OK for trunk?

Thanks,

Martin


2018-10-10  Martin Jambor  <mjam...@suse.cz>

        testsuite/
        * gcc.dg/warn-abs-1.c: Guard tests assuming size of long double is
        greater that the size of double by target large_long double.
---
 gcc/testsuite/gcc.dg/warn-abs-1.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gcc/testsuite/gcc.dg/warn-abs-1.c 
b/gcc/testsuite/gcc.dg/warn-abs-1.c
index 1c487270042..3e8aa72d243 100644
--- a/gcc/testsuite/gcc.dg/warn-abs-1.c
+++ b/gcc/testsuite/gcc.dg/warn-abs-1.c
@@ -43,7 +43,7 @@ void
 tst_float_size (double *pd, long double *pld)
 {
   *pd = fabsf (*pd);   /* { dg-warning "may cause truncation of value" } */
-  *pld = fabs (*pld);  /* { dg-warning "may cause truncation of value" } */
+  *pld = fabs (*pld);  /* { dg-warning "may cause truncation of value" "fabs 
trunc" { target { large_long_double } } } */
   *pld = fabs ((double) *pld);
 }
 
@@ -57,7 +57,7 @@ void tst_notcomplex (int *pi, long *pl, long double *pld)
 void tst_cplx_size (complex double *pcd, complex long double *pcld)
 {
   *pcd = cabsf (*pcd);   /* { dg-warning "may cause truncation of value" } */
-  *pcld = cabs (*pcld);  /* { dg-warning "may cause truncation of value" } */
+  *pcld = cabs (*pcld);  /* { /* { dg-warning "may cause truncation of value" 
"cabs trunc" { target { large_long_double } } } */
   *pcld = cabs ((complex double) *pcld);
 }
 
-- 
2.19.0

Reply via email to