diff --git a/gcc/cobol/genapi.cc b/gcc/cobol/genapi.cc
index 1b94e76bc693bc4f402fa635af57dadd3a0e7c0f..9c2ab8ad207a7fb8b1aa174aec23ed646049f201 100644
--- a/gcc/cobol/genapi.cc
+++ b/gcc/cobol/genapi.cc
@@ -6134,6 +6134,8 @@ parser_allocate(cbl_refer_t size_or_based,
 void
 parser_free( size_t n, cbl_refer_t refers[] )
   {
+  if( mode_syntax_only() ) return; // Normally handled by SHOW_PARSE, if present
+
   Analyze();
   for( auto p = refers; p < refers + n; p++ )
     {