vendettaaaaa
29-05-2012, 12:44
Ciao,
sto lavorando su un codice FORTRAN per calcoli ingegneristici. Ho il problema che in certi casi il programma crasha generando un report tabulare con Program Counter, Routine, Line, eccetera.
Il problema è che Routine e Line sono "Unknown". Ho cercato un po' nel manuale di Compaq Visual Fortran e pure in rete, e ho capito che per creare una correlazione tra Program Counter (che non so bene cosa sia, immagino una specie di contatore che indica l'ordine con cui le varie routine sono chiamate in sequenza a run time) e Routine dove viene generata l'exception, bisogna spuntare "Generate traceback information" nelle impostazioni del progetto, nel menu "Fortran - Runtime" (oppure aggiungere manualmente la riga /traceback nelle impostazioni). In questo modo il report tabulare dovrebbe dirmi in quale riga di quale routine c'è l'errore (nel mio caso floating point underflow che va a generare un EXP domain error).
Ma non funziona. Perchè??
Purtroppo la rete non è molto fornita di info su Fortran, confido che qualche programmatore esperto mi sappia dare qualche dritta :cry:
sto lavorando su un codice FORTRAN per calcoli ingegneristici. Ho il problema che in certi casi il programma crasha generando un report tabulare con Program Counter, Routine, Line, eccetera.
Il problema è che Routine e Line sono "Unknown". Ho cercato un po' nel manuale di Compaq Visual Fortran e pure in rete, e ho capito che per creare una correlazione tra Program Counter (che non so bene cosa sia, immagino una specie di contatore che indica l'ordine con cui le varie routine sono chiamate in sequenza a run time) e Routine dove viene generata l'exception, bisogna spuntare "Generate traceback information" nelle impostazioni del progetto, nel menu "Fortran - Runtime" (oppure aggiungere manualmente la riga /traceback nelle impostazioni). In questo modo il report tabulare dovrebbe dirmi in quale riga di quale routine c'è l'errore (nel mio caso floating point underflow che va a generare un EXP domain error).
Ma non funziona. Perchè??
Purtroppo la rete non è molto fornita di info su Fortran, confido che qualche programmatore esperto mi sappia dare qualche dritta :cry: