aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/resolve.c
diff options
context:
space:
mode:
authorTobias Burnus <tobias@codesourcery.com>2021-05-17 13:20:27 +0200
committerTobias Burnus <tobias@codesourcery.com>2021-05-17 13:23:22 +0200
commit582776eb1b62c32f5234566a01ea92247b7d6bcc (patch)
tree2f8d0a79c92e03650b4f8e928e5dad2b31ee46f6 /gcc/fortran/resolve.c
parente3b6d3a887fc0df09ea742c9c5a5acbc27c11ea7 (diff)
downloadgcc-582776eb1b62c32f5234566a01ea92247b7d6bcc.zip
gcc-582776eb1b62c32f5234566a01ea92247b7d6bcc.tar.gz
gcc-582776eb1b62c32f5234566a01ea92247b7d6bcc.tar.bz2
OpenMP/Fortran: Reject nonintrinsic assignments in OMP WORKSHARE [PR100633]
PR fortran/100633 gcc/fortran/ChangeLog: * resolve.c (gfc_resolve_code): Reject nonintrinsic assignments in OMP WORKSHARE. gcc/testsuite/ChangeLog: * gfortran.dg/gomp/workshare-59.f90: New test.
Diffstat (limited to 'gcc/fortran/resolve.c')
-rw-r--r--gcc/fortran/resolve.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c
index c02bbed..747516f 100644
--- a/gcc/fortran/resolve.c
+++ b/gcc/fortran/resolve.c
@@ -11940,6 +11940,12 @@ start:
if (resolve_ordinary_assign (code, ns))
{
+ if (omp_workshare_flag)
+ {
+ gfc_error ("Expected intrinsic assignment in OMP WORKSHARE "
+ "at %L", &code->loc);
+ break;
+ }
if (code->op == EXEC_COMPCALL)
goto compcall;
else