Procedure Division e Runtime
error: recursive or overlapping PERFORM ranges detected for paragraph '2000-PROCESS' – COBOL PERFORM_OVERLAPPING_RANGE
In COBOL standard le chiamate PERFORM non sono rientranti; eseguire un PERFORM su una procedura che esegue un altro PERFORM verso un paragrafo già nello stack attivo genera sovrapposizione e loop infinito.
Cosa significa questo errore?
In COBOL standard le chiamate PERFORM non sono rientranti; eseguire un PERFORM su una procedura che esegue un altro PERFORM verso un paragrafo già nello stack attivo genera sovrapposizione e loop infinito.
Messaggio originale
error: recursive or overlapping PERFORM ranges detected for paragraph '2000-PROCESS'Contesto e parole chiave
Alias
- overlapping PERFORM ranges COBOL
Messaggi alternativi
- intervalli perform sovrapposti ricorsione illegale
Prodotti
- GnuCOBOL (cobc) / IBM Enterprise COBOL / Micro Focus
Piattaforme
- AIX
- IBM z/OS
- Linux
- Windows
Parole chiave
- cobol
- cobol.procedure.perform-overlapping-range-recursion
- errore-cobol-perform-overlapping-range
- file-status
- gnucobol
- Procedure Division e Runtime
Cause possibili
Causa tecnica per Errore COBOL: Overlapping PERFORM ranges / Recursive PERFORM (Intervalli PERFORM Sovrapposti)
In COBOL standard le chiamate PERFORM non sono rientranti; eseguire un PERFORM su una procedura che esegue un altro PERFORM verso un paragrafo già nello stack attivo genera sovrapposizione e loop infinito.
molto comuneDiagnosi
Diagnostica di esecuzione e file status per Errore COBOL: Overlapping PERFORM ranges / Recursive PERFORM (Intervalli PERFORM Sovrapposti)
Ispezionare la variabile FILE-STATUS, i log di runtime o compilare con i controlli di integrità di GnuCOBOL (-Wall -Wextra -fdebugging-line).
Come leggere il risultato. Evidenzia violazioni dei margini di colonna, disallineamenti nelle clausole PIC o codici di ritorno anomali.
cobc -x -Wall -Wextra main.cob -o appRisoluzione
Risoluzione standard per Errore COBOL: Overlapping PERFORM ranges / Recursive PERFORM (Intervalli PERFORM Sovrapposti)
Applicare la correzione al codice sorgente COBOL secondo le specifiche ANSI/ISO COBOL.
- Ispezionare il valore della variabile FILE STATUS o il numero di riga del compilatore
- Correggere la dichiarazione FD, la PICTURE o la sequenza di OPEN/READ/WRITE
- Ricompilare ed eseguire verificando la corretta terminazione con RETURN-CODE 0
cobc -x main.cobDomande frequenti
Cosa significa Errore COBOL: Overlapping PERFORM ranges / Recursive PERFORM (Intervalli PERFORM Sovrapposti) in COBOL?
In COBOL standard le chiamate PERFORM non sono rientranti; eseguire un PERFORM su una procedura che esegue un altro PERFORM verso un paragrafo già nello stack attivo genera sovrapposizione e loop infinito.
Approfondimenti
- GnuCOBOL Manual / IBM Enterprise COBOL Documentation documentazione_ufficiale