From b7806f25b14395e5bd59bc09b7c6b0874468b006 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 14 Nov 2006 07:52:04 +0000 Subject: svn merge -r118772:118773 svn+ssh://gcc.gnu.org/svn/gcc/trunk/ git-svn-id: https://gcc.gnu.org/svn/gcc/branches/redhat/gcc-4_1-branch@118807 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/fortran/ChangeLog | 6 +++++ gcc/fortran/scanner.c | 1 + gcc/testsuite/ChangeLog | 5 ++++ gcc/testsuite/gfortran.dg/gomp/pr29759.f90 | 42 ++++++++++++++++++++++++++++++ 4 files changed, 54 insertions(+) create mode 100644 gcc/testsuite/gfortran.dg/gomp/pr29759.f90 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 016fe5a80f2..b4aa7325885 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2006-11-13 Jakub Jelinek + + PR fortran/29759 + * fortran/scanner.c (skip_free_comments): Clear openmp_flag + before returning true. + 2006-11-11 Francois-Xavier Coudert PR fortran/29713 diff --git a/gcc/fortran/scanner.c b/gcc/fortran/scanner.c index 021481be781..792b53388fa 100644 --- a/gcc/fortran/scanner.c +++ b/gcc/fortran/scanner.c @@ -385,6 +385,7 @@ skip_free_comments (void) { gfc_current_locus = old_loc; next_char (); + openmp_flag = 0; return; } } diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index e0467680fb9..fe2403dd8ea 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2006-11-13 Jakub Jelinek + + PR fortran/29759 + * gfortran.dg/gomp/pr29759.f90: New test. + 2006-11-13 Francois-Xavier Coudert PR libfortran/27895 diff --git a/gcc/testsuite/gfortran.dg/gomp/pr29759.f90 b/gcc/testsuite/gfortran.dg/gomp/pr29759.f90 new file mode 100644 index 00000000000..19a19c978ae --- /dev/null +++ b/gcc/testsuite/gfortran.dg/gomp/pr29759.f90 @@ -0,0 +1,42 @@ +! PR fortran/29759 +! { dg-do compile } + +PROGRAM test_omp +!$OMP PARALLEL & +!$OMP NUM_THREADS(2) +!$OMP END PARALLEL + +!$OMP PARALLEL & +!$OMP & NUM_THREADS(2) +!$OMP END PARALLEL + +!$OMP PARALLEL & +! +!$OMP NUM_THREADS(2) +!$OMP END PARALLEL + +!$OMP PARALLEL & +! +!$OMP & NUM_THREADS(2) +!$OMP END PARALLEL + + +!$OMP PARALLEL & ! { dg-error "Unclassifiable OpenMP" } +!$ NUM_THREADS(2) ! { dg-error "Unclassifiable" } +!$OMP END PARALLEL ! { dg-error "Unexpected" } + +!$OMP PARALLEL & ! { dg-error "Unclassifiable OpenMP" } +!$ & NUM_THREADS(2) ! { dg-error "Unclassifiable" } +!$OMP END PARALLEL ! { dg-error "Unexpected" } + +!$OMP PARALLEL & ! { dg-error "Unclassifiable OpenMP" } +! +!$ NUM_THREADS(2) ! { dg-error "Unclassifiable" } +!$OMP END PARALLEL ! { dg-error "Unexpected" } + +!$OMP PARALLEL & ! { dg-error "Unclassifiable OpenMP" } +! +!$ & NUM_THREADS(2) ! { dg-error "Unclassifiable" } +!$OMP END PARALLEL ! { dg-error "Unexpected" } + +END PROGRAM -- cgit v1.2.3