diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 0755ee768381992f8e1f8c19c55454e3bf1c4e56..3839c3f41b16531cee310f17fc16e19a7f324edc 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,8 @@
+2006-02-16  Jakub Jelinek  <jakub@redhat.com>
+
+	* openmp.c (resolve_omp_clauses): Add a dummy case label to workaround
+	PR middle-end/26316.
+
 2005-02-16  Paul Thomas  <pault@gcc.gnu.org>
 
 	PR fortran/24557
diff --git a/gcc/fortran/openmp.c b/gcc/fortran/openmp.c
index 312d5a1e49a0be0d11bb0ba1a7fe2fd41b81b56a..09ec255974cc8f787fbdbe60964427264bed39ae 100644
--- a/gcc/fortran/openmp.c
+++ b/gcc/fortran/openmp.c
@@ -865,6 +865,10 @@ resolve_omp_clauses (gfc_code *code)
 				 : list == OMP_LIST_MULT ? "IOR" : "IEOR",
 				 n->sym->name, &code->loc);
 		    break;
+		  /* Workaround for PR middle-end/26316, nothing really needs
+		     to be done here for OMP_LIST_PRIVATE.  */
+		  case OMP_LIST_PRIVATE:
+		    gcc_assert (code->op != EXEC_NOP);
 		  default:
 		    break;
 		  }