catching Fortran users forgetting ierr arg
Can we somehow use the PetscCheckPointer() in ALL our Fortran stubs to make sure the user has passed a reasonable ierr arg? Barry Begin forwarded message:
From: Jed Brown <[email protected]> Subject: Re: [petsc-maint #126615] Problem, please help me Date: August 2, 2012 9:51:11 AM CDT To: [email protected], Vahid Nekouie <[email protected]> Reply-To: [email protected], Jed Brown <[email protected]>
On Thu, Aug 2, 2012 at 6:56 AM, Vahid Nekouie <[email protected]>wrote:
(gdb) run Starting program: /home/mmvn-extra/programs/navid/update.out [Thread debugging using libthread_db enabled] g_1 1 224 0 g_2 224 224 0 Came IN STEP: 1 Size u,X,Z,alpha: 761 1701 762 1822 ______ INCREMENT = 1 current time= 1.0000000000000000 dtime= 1.0000000000000000
Program received signal SIGSEGV, Segmentation fault. 0x0000000000450b70 in iscreategeneral_ (comm=0x14b55e0, n=0x7ffffffa79e8, idx=0x191d5b0, mode=0x7ffffffa79f8, is=0x7ffffffa79ec, __ierr=0x80000000) at generalf.c:48 48 *__ierr = ISCreateGeneral(
The address of ierr does not look valid. What does the call site (in your Fortran) look like?
participants (1)
-
Barry Smith