re PR fortran/26224 (ICE in C$OMP SINGLE / END SINGLE COPYPRIVATE( ) block)
authorJakub Jelinek <jakub@redhat.com>
Thu, 16 Feb 2006 21:35:38 +0000 (22:35 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 16 Feb 2006 21:35:38 +0000 (22:35 +0100)
PR fortran/26224
* parse.c (parse_omp_do, parse_omp_structured_block): Call
gfc_commit_symbols and gfc_warning_check.

* gfortran.dg/gomp/pr26224.f: New test.

From-SVN: r111153

gcc/fortran/ChangeLog
gcc/fortran/parse.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/gomp/pr26224.f [new file with mode: 0644]

index 3839c3f41b16531cee310f17fc16e19a7f324edc..324d013511b9ec8a4d434b1c8d989d182f3ba4ff 100644 (file)
@@ -1,5 +1,9 @@
 2006-02-16  Jakub Jelinek  <jakub@redhat.com>
 
+       PR fortran/26224
+       * parse.c (parse_omp_do, parse_omp_structured_block): Call
+       gfc_commit_symbols and gfc_warning_check.
+
        * openmp.c (resolve_omp_clauses): Add a dummy case label to workaround
        PR middle-end/26316.
 
index 832848237e907b10721c0e5f0734616962207cd1..b120bbb77efadefa088dcb5a60232c807d1050d6 100644 (file)
@@ -2348,6 +2348,8 @@ parse_omp_do (gfc_statement omp_st)
       else
        gcc_assert (new_st.op == EXEC_NOP);
       gfc_clear_new_st ();
+      gfc_commit_symbols ();
+      gfc_warning_check ();
       st = next_statement ();
     }
   return st;
@@ -2548,6 +2550,8 @@ parse_omp_structured_block (gfc_statement omp_st, bool workshare_stmts_only)
     }
 
   gfc_clear_new_st ();
+  gfc_commit_symbols ();
+  gfc_warning_check ();
   pop_state ();
 }
 
index 2ef471615b224fa1bf8c0a1a883c4a8c1a6209e0..621addaf706e1d1b2e083f9b7fd7a80c12ff3212 100644 (file)
@@ -1,3 +1,8 @@
+2006-02-16  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/26224
+       * gfortran.dg/gomp/pr26224.f: New test.
+
 2006-02-16  Victor Kaplansky  <victork@il.ibm.com>
 
        PR tree-opt/25918
diff --git a/gcc/testsuite/gfortran.dg/gomp/pr26224.f b/gcc/testsuite/gfortran.dg/gomp/pr26224.f
new file mode 100644 (file)
index 0000000..0446d52
--- /dev/null
@@ -0,0 +1,8 @@
+C PR fortran/26224
+C { dg-do compile }
+
+      PROGRAM PR26224
+      INTEGER FOO
+C$OMP SINGLE
+C$OMP END SINGLE COPYPRIVATE (FOO, BAR)
+      END