Successivo: Controllo esecuzione debugger, Su: Lista dei comandi di debug [Contenuti][Indice]
Come abbiamo già visto, la prima cosa che si dovrebbe fare in una sessione di debug è quella di definire dei punti d’interruzione, poiché altrimenti il programma verrà eseguito come se non fosse sotto il debugger. I comandi per controllare i punti d’interruzione sono:
break
[[nome-file:
]n | funzione] ["espressione"
]b
[[nome-file:
]n | funzione] ["espressione"
]Senza argomenti, imposta un punto d’interruzione alla prossima istruzione da eseguire nello stack frame selezionato. Gli argomenti possono essere uno dei seguenti:
Imposta un punto d’interruzione alla riga numero n nel file sorgente corrente.
:
nImposta un punto d’interruzione alla riga numero n nel file sorgente nome-file.
Imposta un punto d’interruzione all’ingresso (la prima istruzione eseguibile) della funzione funzione.
A ogni punto d’interruzione è assegnato un numero che può essere usato per
cancellarlo dalla lista dei punti d’interruzione usando il comando
delete
.
Specificando un punto d’interruzione, si può fornire anche una condizione.
Questa è
un’espressione awk
(racchiusa tra doppi apici) che il debugger
valuta ogni volta che viene raggiunto quel punto d’interruzione. Se la
condizione è vera, il debugger ferma l’esecuzione e rimane in attesa di un
comando. Altrimenti, continua l’esecuzione del programma.
clear
[[nome-file:
]n | funzione]Senza argomenti, cancella ogni eventuale punto d’interruzione all’istruzione successiva da eseguirsi nello stack frame selezionato. Se il programma si ferma in un punto d’interruzione, quel punto d’interruzione viene cancellato in modo che il programma non si fermi più in quel punto. Gli argomenti possono essere uno tra i seguenti:
Cancella il punto (o i punti) d’interruzione impostato/i alla riga n nel file sorgente corrente.
:
nCancella il punto (o i punti) d’interruzione impostato/i alla riga n nel file sorgente nome-file.
Cancella il punto (o i punti) d’interruzione impostato/i all’ingresso della funzione funzione.
condition
n "espressione"
Aggiunge una condizione al punto d’interruzione o al punto d’osservazione
esistente n. La condizione è un’espressione awk
racchiusa tra doppi apici che il debugger valuta ogni volta che viene
raggiunto il punto d’interruzione o il punto d’osservazione. Se la condizione è
vera, il debugger ferma l’esecuzione e attende l’immissione di un comando.
Altrimenti, il debugger continua l’esecuzione del programma. Se l’espressione
della condizione non viene specificata, tutte le condizioni esistenti vengono
rimosse (cioè, il punto d’interruzione o di osservazione viene considerato
incondizionato).
delete
[n1 n2 …] [n–m]d
[n1 n2 …] [n–m]Cancella i punti d’interruzione specificati o un intervallo di punti d’interruzione. Se non vengono forniti argomenti, cancella tutti i punti d’interruzione esistenti.
disable
[n1 n2 … | n–m]Disabilita punti d’interruzione specificati o un intervallo di essi. Senza argomenti, disabilita tutti i punti d’interruzione.
enable
[del
| once
] [n1 n2 …] [n–m]e
[del
| once
] [n1 n2 …] [n–m]Abilita specifici punti d’interruzione o un intervallo di essi. Senza argomenti, abilita tutti i punti d’interruzione. Opzionalmente, si può specificare come abilitare i punti d’interruzione:
del
Abilita dei punti d’interruzione una tantum, poi li cancella quando il programma si ferma in quel punto.
once
Abilita dei punti d’interruzione una tantum, poi li cancella quando il programma si ferma in quel punto.
ignore
n contatoreIgnora il punto d’interruzione numero n le successive contatore volte in cui viene raggiunto.
tbreak
[[nome-file:
]n | funzione]t
[[nome-file:
]n | funzione]Imposta un punto d’interruzione temporaneo (abilitato solo per la prima volta
che viene raggiunto). Gli argomenti sono gli stessi di break
.
Successivo: Controllo esecuzione debugger, Su: Lista dei comandi di debug [Contenuti][Indice]