diff options
author | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-05-13 12:02:50 +0000 |
---|---|---|
committer | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-05-13 12:02:50 +0000 |
commit | bb348f6843b09fce6b0b3b14104cd5542bb89b65 (patch) | |
tree | 968dcddb045fa5a13f020becad9a9ef77f7d4942 /gcc/fortran/openmp.c | |
parent | b52dd48bde461b54e25b36e3783c195a7e34c310 (diff) | |
download | gcc-bb348f6843b09fce6b0b3b14104cd5542bb89b65.tar.gz |
PR fortran/44036
* openmp.c (resolve_omp_clauses): Allow procedure pointers in clause
variable lists.
* trans-openmp.c (gfc_omp_privatize_by_reference): Don't privatize
by reference dummy procedures or non-dummy procedure pointers.
(gfc_omp_predetermined_sharing): Return
OMP_CLAUSE_DEFAULT_FIRSTPRIVATE for dummy procedures.
* gfortran.dg/gomp/pr44036-1.f90: New test.
* gfortran.dg/gomp/pr44036-2.f90: New test.
* gfortran.dg/gomp/pr44036-3.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159361 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fortran/openmp.c')
-rw-r--r-- | gcc/fortran/openmp.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/fortran/openmp.c b/gcc/fortran/openmp.c index bbf7e5a245d..4e965217cc7 100644 --- a/gcc/fortran/openmp.c +++ b/gcc/fortran/openmp.c @@ -837,6 +837,8 @@ resolve_omp_clauses (gfc_code *code) if (el) continue; } + if (n->sym->attr.proc_pointer) + continue; } gfc_error ("Object '%s' is not a variable at %L", n->sym->name, &code->loc); |