diff --git a/gcc/cobol/parse.y b/gcc/cobol/parse.y
index 33333c911490c10c3a3a1c80046be430656da914..2c490aae24d79a42a3859fe4eec782697d128ea0 100644
--- a/gcc/cobol/parse.y
+++ b/gcc/cobol/parse.y
@@ -920,7 +920,9 @@ programs:       program
 
 program:        cdf_empty id_div options_para env_div data_div
                 {
-                  if( ! data_division_ready() ) YYERROR;
+                  if( ! data_division_ready() ) {
+		    mode_syntax_only(procedure_div_e);
+		  }
                   current_division = procedure_div_e;
                 }
                 procedure_div