error: CANCEL statement attempted on currently active subprogram in call hierarchy – COBOL CANCEL_MODULE_IN_USE

CANCEL_MODULE_IN_USE

L'istruzione 'CANCEL "SUBPROG"' tenta di scaricare dalla memoria un sottoprogramma che è ancora presente nello stack di esecuzione attivo della gerarchia di chiamate.

Cosa significa questo errore?

L'istruzione 'CANCEL "SUBPROG"' tenta di scaricare dalla memoria un sottoprogramma che è ancora presente nello stack di esecuzione attivo della gerarchia di chiamate.

Messaggio originale

error: CANCEL statement attempted on currently active subprogram in call hierarchy

Contesto e parole chiave

Alias

  • CANCEL statement attempted on active subprogram COBOL

Messaggi alternativi

  • istruzione CANCEL su sottoprogramma attualmente attivo

Prodotti

  • GnuCOBOL (cobc) / IBM Enterprise COBOL / Micro Focus

Piattaforme

  • AIX
  • IBM z/OS
  • Linux
  • Windows

Parole chiave

  • CALL e Linkage Subprogrammi
  • cobol
  • cobol.linkage.cancel-statement-module-in-use
  • errore-cobol-cancel-module-in-use
  • file-status
  • gnucobol

Cause possibili

Causa tecnica per Errore COBOL: CANCEL on currently active subprogram (Tentativo di Rilascio di Modulo Attivo)

L'istruzione 'CANCEL "SUBPROG"' tenta di scaricare dalla memoria un sottoprogramma che è ancora presente nello stack di esecuzione attivo della gerarchia di chiamate.

molto comune

Diagnosi

Diagnostica di esecuzione e file status per Errore COBOL: CANCEL on currently active subprogram (Tentativo di Rilascio di Modulo Attivo)

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.

terminal
cobc -x -Wall -Wextra main.cob -o app

Risoluzione

Risoluzione standard per Errore COBOL: CANCEL on currently active subprogram (Tentativo di Rilascio di Modulo Attivo)

Difficoltà: mediaRischio: basso

Applicare la correzione al codice sorgente COBOL secondo le specifiche ANSI/ISO COBOL.

  1. Ispezionare il valore della variabile FILE STATUS o il numero di riga del compilatore
  2. Correggere la dichiarazione FD, la PICTURE o la sequenza di OPEN/READ/WRITE
  3. Ricompilare ed eseguire verificando la corretta terminazione con RETURN-CODE 0
terminal
cobc -x main.cob

Domande frequenti

Cosa significa Errore COBOL: CANCEL on currently active subprogram (Tentativo di Rilascio di Modulo Attivo) in COBOL?

L'istruzione 'CANCEL "SUBPROG"' tenta di scaricare dalla memoria un sottoprogramma che è ancora presente nello stack di esecuzione attivo della gerarchia di chiamate.

Approfondimenti

Schede correlate