Data Division e Troncamento PIC
Abend S0C4: Dereferencing NULL or uninitialized POINTER / BASED variable – COBOL POINTER_NULL_REFERENCE_ABEND
Nei dialetti COBOL moderni (IBM Enterprise COBOL, GnuCOBOL), accedere a una variabile dichiarata con 'BASED' senza aver prima assegnato il puntatore con 'SET ADDRESS OF item TO ptr' scatena l'abend S0C4.
Cosa significa questo errore?
Nei dialetti COBOL moderni (IBM Enterprise COBOL, GnuCOBOL), accedere a una variabile dichiarata con 'BASED' senza aver prima assegnato il puntatore con 'SET ADDRESS OF item TO ptr' scatena l'abend S0C4.
Messaggio originale
Abend S0C4: Dereferencing NULL or uninitialized POINTER / BASED variableContesto e parole chiave
Alias
- Abend S0C4 POINTER BASED COBOL
Messaggi alternativi
- dereferenziazione puntatore nullo variabile BASED abend S0C4
Prodotti
- GnuCOBOL (cobc) / IBM Enterprise COBOL / Micro Focus
Piattaforme
- AIX
- IBM z/OS
- Linux
- Windows
Parole chiave
- cobol
- cobol.data.pointer-null-reference-exception
- Data Division e Troncamento PIC
- errore-cobol-pointer-null-reference-abend
- file-status
- gnucobol
Cause possibili
Causa tecnica per Errore COBOL: Abend S0C4 on NULL POINTER / BASED item (Puntatore Nullo)
Nei dialetti COBOL moderni (IBM Enterprise COBOL, GnuCOBOL), accedere a una variabile dichiarata con 'BASED' senza aver prima assegnato il puntatore con 'SET ADDRESS OF item TO ptr' scatena l'abend S0C4.
molto comuneDiagnosi
Diagnostica di esecuzione e file status per Errore COBOL: Abend S0C4 on NULL POINTER / BASED item (Puntatore Nullo)
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: Abend S0C4 on NULL POINTER / BASED item (Puntatore Nullo)
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: Abend S0C4 on NULL POINTER / BASED item (Puntatore Nullo) in COBOL?
Nei dialetti COBOL moderni (IBM Enterprise COBOL, GnuCOBOL), accedere a una variabile dichiarata con 'BASED' senza aver prima assegnato il puntatore con 'SET ADDRESS OF item TO ptr' scatena l'abend S0C4.
Approfondimenti
- GnuCOBOL Manual / IBM Enterprise COBOL Documentation documentazione_ufficiale