https://gcc.gnu.org/g:e0b57c75e6daa1664bea03ce96733bf1ebb38ced

commit r15-9457-ge0b57c75e6daa1664bea03ce96733bf1ebb38ced
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Mon Apr 14 19:33:11 2025 +0200

    cobol: Fix -fmax-errors option [PR119776]
    
    There seems to be inconsistency in the -fmax-errors option
    naming.  It is a generic option in common.opt (so applies
    to all languages) but with the = character in it.
    The gcobol.1 man page in one spot documents the generic
    option (in the syntax, -fmax-errors=nerror) but in another
    spot without the = character.
    
    In common.opt it is
    fmax-errors=
    Common Joined RejectNegative UInteger Var(flag_max_errors)
    -fmax-errors=<number>   Maximum number of errors to report.
    
    I hope the cobol addition is just a mistake, having -fmax-errors variant
    without = character when Joined Separate would allow to specify
    -fmax-errors 10 with the same meaning as -fmax-errors=10
    but also -fmax-errors10 with the same meaning which is just weird.
    Also, there is no UInteger and RejectNegative on it, so one can
    also specific -fno-max-errors42 or -fmax-errors blah.
    
    So, unless the spelling without = is intentional, here is a patch
    to just remove it, the common option already should have arranged
    for flag_max_errors to be set to the right number.
    
    Or if it is intentional, I guess we'd need to at least add
    RejectNegative UInteger (plus using atoi is generally undesirable
    anywhere in the compiler because it does no error checking).
    And the man page would need to be updated to specify both forms.
    
    2025-04-14  Jakub Jelinek  <ja...@redhat.com>
    
            PR cobol/119776
            * lang.opt (fmax-errors): Remove.
            * lang.opt.urls: Regenerate.
            * cobol1.cc (cobol_langhook_handle_option) <case OPT_fmax_errors>:
            Remove.
            * gcobol.1: Document -fmax-errors=nerror rather than
            -fmax-errors nerror.

Diff:
---
 gcc/cobol/cobol1.cc     | 4 ----
 gcc/cobol/gcobol.1      | 2 +-
 gcc/cobol/lang.opt      | 4 ----
 gcc/cobol/lang.opt.urls | 3 ---
 4 files changed, 1 insertion(+), 12 deletions(-)

diff --git a/gcc/cobol/cobol1.cc b/gcc/cobol/cobol1.cc
index 7d742b907764..3bd21c783ded 100644
--- a/gcc/cobol/cobol1.cc
+++ b/gcc/cobol/cobol1.cc
@@ -385,10 +385,6 @@ cobol_langhook_handle_option (size_t scode,
             return true;
         }
 
-        case OPT_fmax_errors:
-            flag_max_errors = atoi(arg);
-            return true;
-
         case OPT_ffixed_form:
             cobol_set_indicator_column(-7);
             return true;
diff --git a/gcc/cobol/gcobol.1 b/gcc/cobol/gcobol.1
index 64c017c22144..4377c1401efe 100644
--- a/gcc/cobol/gcobol.1
+++ b/gcc/cobol/gcobol.1
@@ -224,7 +224,7 @@ had appeared.
 Not all exception conditions are implemented.  Any that are not
 produce a warning message.
 .
-.It Fl fmax-errors Ar nerror
+.It Fl fmax-errors Ns Li = Ns Ar nerror
 .Ar nerror
 represents the number of error messages produced.  Without this option,
 .Nm
diff --git a/gcc/cobol/lang.opt b/gcc/cobol/lang.opt
index 1d33f34aceeb..59278a147e99 100644
--- a/gcc/cobol/lang.opt
+++ b/gcc/cobol/lang.opt
@@ -89,10 +89,6 @@ finternal-ebcdic
 Cobol Var(cobol_ebcdic, 1) Init(0)
 -finternal-ebcdic      Internal processing is in EBCDIC Code Page 1140
 
-fmax-errors
-Cobol Joined Separate
-; Documented in C
-
 fstatic-call
 Cobol Var(cobol_static_call, 1) Init(1)
 Enable/disable static linkage for CALL literals
diff --git a/gcc/cobol/lang.opt.urls b/gcc/cobol/lang.opt.urls
index 75df59643eab..69f52973c025 100644
--- a/gcc/cobol/lang.opt.urls
+++ b/gcc/cobol/lang.opt.urls
@@ -16,9 +16,6 @@ 
LangUrlSuffix_Fortran(gfortran/Fortran-Dialect-Options.html#index-ffixed-form)
 ffree-form
 LangUrlSuffix_Fortran(gfortran/Fortran-Dialect-Options.html#index-ffree-form)
 
-fmax-errors
-UrlSuffix(gcc/Warning-Options.html#index-fmax-errors) 
LangUrlSuffix_D(gdc/Warnings.html#index-fmax-errors)
-
 iprefix
 UrlSuffix(gcc/Directory-Options.html#index-iprefix) 
LangUrlSuffix_D(gdc/Directory-Options.html#index-iprefix) 
LangUrlSuffix_Fortran(gfortran/Preprocessing-Options.html#index-iprefix)

Reply via email to