diff options
author | Tom de Vries <tom@codesourcery.com> | 2016-03-24 11:29:27 +0000 |
---|---|---|
committer | Tom de Vries <vries@gcc.gnu.org> | 2016-03-24 11:29:27 +0000 |
commit | b2a4dd1ddc5eae14687c0b264f77bd4054ea18d7 (patch) | |
tree | 81f705e503d19e6c3ac92f68a3aa0b6586c67ca8 /gcc | |
parent | 72e7cd6e8ba6465010d4c97cab893d7f36cf72cb (diff) | |
download | gcc-b2a4dd1ddc5eae14687c0b264f77bd4054ea18d7.zip gcc-b2a4dd1ddc5eae14687c0b264f77bd4054ea18d7.tar.gz gcc-b2a4dd1ddc5eae14687c0b264f77bd4054ea18d7.tar.bz2 |
Add goacc/uninit-if-clause.{c,f95}
2016-03-24 Tom de Vries <tom@codesourcery.com>
* c-c++-common/goacc/uninit-if-clause.c: New test.
* gfortran.dg/goacc/uninit-if-clause.f95: New test.
From-SVN: r234451
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/c-c++-common/goacc/uninit-if-clause.c | 38 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/goacc/uninit-if-clause.f95 | 20 |
3 files changed, 63 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 16b718b..01c6f2f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2016-03-24 Tom de Vries <tom@codesourcery.com> + + * c-c++-common/goacc/uninit-if-clause.c: New test. + * gfortran.dg/goacc/uninit-if-clause.f95: New test. + 2016-03-24 Jakub Jelinek <jakub@redhat.com> PR target/70290 diff --git a/gcc/testsuite/c-c++-common/goacc/uninit-if-clause.c b/gcc/testsuite/c-c++-common/goacc/uninit-if-clause.c new file mode 100644 index 0000000..55caa4c --- /dev/null +++ b/gcc/testsuite/c-c++-common/goacc/uninit-if-clause.c @@ -0,0 +1,38 @@ +/* { dg-do compile } */ +/* { dg-additional-options "-Wuninitialized" } */ +/* { dg-excess-errors "PR70392" { xfail c++ } } */ + +#include <stdbool.h> + +int +main (void) +{ + int l, l2, l3, l4; + bool b, b2, b3, b4; + int i, i2; + + #pragma acc parallel if(l) /* { dg-warning "is used uninitialized in this function" } */ + ; + + #pragma acc parallel if(b) /* { dg-warning "is used uninitialized in this function" "" { xfail c++ } } */ + ; + + #pragma acc kernels if(l2) /* { dg-warning "is used uninitialized in this function" } */ + ; + + #pragma acc kernels if(b2) /* { dg-warning "is used uninitialized in this function" "" { xfail c++ } } */ + ; + + #pragma acc data if(l3) /* { dg-warning "is used uninitialized in this function" } */ + ; + + #pragma acc data if(b3) /* { dg-warning "is used uninitialized in this function" "" { xfail c++ } } */ + ; + + #pragma acc update if(l4) self(i) /* { dg-warning "is used uninitialized in this function" } */ + ; + + #pragma acc update if(b4) self(i2) /* { dg-warning "is used uninitialized in this function" "" { xfail c++ } } */ + ; + +} diff --git a/gcc/testsuite/gfortran.dg/goacc/uninit-if-clause.f95 b/gcc/testsuite/gfortran.dg/goacc/uninit-if-clause.f95 new file mode 100644 index 0000000..60dc53e --- /dev/null +++ b/gcc/testsuite/gfortran.dg/goacc/uninit-if-clause.f95 @@ -0,0 +1,20 @@ +! { dg-do compile } +! { dg-additional-options "-Wuninitialized" } + +program test + implicit none + logical :: b, b2, b3, b4 + integer :: data, data2 + + !$acc parallel if(b) ! { dg-warning "is used uninitialized in this function" } + !$acc end parallel + + !$acc kernels if(b2) ! { dg-warning "is used uninitialized in this function" } + !$acc end kernels + + !$acc data if(b3) ! { dg-warning "is used uninitialized in this function" } + !$acc end data + + !$acc update if(b4) self(data2) ! { dg-warning "is used uninitialized in this function" } + +end program test |