re PR fortran/77374 (ICE in resolve_omp_atomic, at fortran/openmp.c:3949)
authorJakub Jelinek <jakub@gcc.gnu.org>
Wed, 31 Aug 2016 18:42:08 +0000 (20:42 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Wed, 31 Aug 2016 18:42:08 +0000 (20:42 +0200)
commitf25f40be277fe6687e86b6395a55781211811bef
tree9c780ac0e723481df09dc6e41511db61ca68b25f
parent9ff6fb6ede9ac2902088514067aca53e1133cc80
re PR fortran/77374 (ICE in resolve_omp_atomic, at fortran/openmp.c:3949)

PR fortran/77374
* parse.c (parse_omp_oacc_atomic): Copy over cp->ext.omp_atomic
to cp->block->ext.omp_atomic.
* resolve.c (gfc_resolve_blocks): Assert block with one or two
EXEC_ASSIGNs for EXEC_*_ATOMIC.
* openmp.c (resolve_omp_atomic): Don't assert one or two
EXEC_ASSIGNs, instead return quietly for EXEC_NOPs and otherwise
error unexpected statements.

* gfortran.dg/gomp/pr77374.f08: New test.

From-SVN: r239903
gcc/fortran/ChangeLog
gcc/fortran/openmp.c
gcc/fortran/parse.c
gcc/fortran/resolve.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/gomp/pr77374.f08 [new file with mode: 0644]