Peter Bismuti said:
> My program is crashing giving the error message: Floating exception
> (core dumped) but I can't seem to get the compiler (NagF90) or the
> debugger (gdb/Linux) to show where the error is occuring. The best
Seems to be showing itself ok to me.
> I have gotten so far has been:
>
> k = 358
> k = 359
> Floating exception (core dumped)
> > gdb 2d core
> GDB is free software and you are welcome to distribute copies of it
> under certain conditions; type "show copying" to see the conditions.
> There is absolutely no warranty for GDB; type "show warranty" for details.
> GDB 4.16 (i486-slackware-linux), Copyright 1996 Free Software Foundation, Inc...
> Core was generated by `2d'.
> Program terminated with signal 8, Floating point exception.
> Reading symbols from /lib/libm.so.5...done.
> Reading symbols from /lib/libc.so.5...done.
> Reading symbols from /lib/ld-linux.so.1...done.
> #0 0x400433c5 in __kill ()
> (gdb) where
> #0 0x400433c5 in __kill ()
> #1 0x4002c39d in gsignal ()
> #2 0x805195c in equation_interface_MP_method_of_characteristics (ib20_=0xbffff30c,
> ib21_=0xbffff2e4, xnorm0_=0x81573f0, xnorm1_=0x8157408, q0_=0x8157420, q1_=0x8157448,
> q_=0xbffff2e8) at EQUATION/equation_interface.f90:131
> #3 0x80675e8 in mortar_operations_MP_project_from_layer_to_mortar (mrt_=0x8190738)
> at MORTAR/mortar_operations.f90:157
> #4 0x8075c7c in mortar_library_MP_traverse_mortar_list (head_=0x8190738,
> mortar_operation_=0x8064724 <mortar_operations_MP_project_from_layer_to_mortar>)
> at MORTAR/mortar_library.f90:23
> #5 0x8075d3c in mortar_library_MP_traverse_mortar_list (head_=0x8185c58,
> mortar_operation_=0x8064724 <mortar_operations_MP_project_from_layer_to_mortar>)
> at MORTAR/mortar_library.f90:27
> #6 0x804ace4 in main (argc=1, argv=0xbffff560) at driver.f90:241
> #7 0x8048fbe in ___crt_dummy__ ()
> (gdb)
>
> rather cryptic, not much help. Any tips?
Well, gdb output is always rather messy, but it is not impossible to read.
The floating-point exception is occurring (cutting out the junk):
> in equation_interface_MP_method_of_characteristics
which is procedure METHOD_OF_CHARACTERISTICS in module EQUATION_INTERFACE
(this naming convention is described in the NAGWare f90 manual).
> at EQUATION/equation_interface.f90:131
i.e. line 132 of file EQUATION/equation_interface.f90
And this procedure was called from
> mortar_operations_MP_project_from_layer_to_mortar
(procedure PROJECT_FROM_LAYER_TO_MORTAR in module MORTAR_OPERATIONS)
> at MORTAR/mortar_operations.f90:157
which was called from
> mortar_library_MP_traverse_mortar_list
> at MORTAR/mortar_library.f90:23
which was called from
> mortar_library_MP_traverse_mortar_list
> at MORTAR/mortar_library.f90:27
which was called from
> main
(i.e. the main program)
> at driver.f90:241
I take your point that the gdb output is not the world's most easy to read;
we are trying to improve dbx90 (our front-end to dbx/gdb that understands F90)
so that it should hopefully be sufficient to avoid having to resort to gdb so
often in future.
Cheers,
--
...........................Malcolm Cohen, NAG Ltd., Oxford, U.K.
([log in to unmask])
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|