[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-GnuCOBOL] Cobc: Unallocated memory (signal SIGSEGV) - GnuCobol
From: |
Simon Sobisch |
Subject: |
Re: [Bug-GnuCOBOL] Cobc: Unallocated memory (signal SIGSEGV) - GnuCobol Version 3 Release 1 aunder MinGW |
Date: |
Mon, 4 Jun 2018 23:18:17 +0200 |
User-agent: |
Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 |
Hi Bruce,
I'd like to have a look at this, but something seems to be missing:
ENTERING VFILE
RETURN FROM VFILE
IN OPEN V
libcob: module 'GlobalAlloc' not found
BTW: Your report "sounds" like a wrong call convention and/or wrong
parameters are used for non-COBOL parts, which may corrupt the stack
Simon
Am 04.06.2018 um 19:25 schrieb Bruce Zupek:
> attempt to reference unallocated memory (signal SIGSEGV)
> abnormal termination - file contents may be incorrect
>
> I was in the process of creating the Micro Focus and Fujitsu
> CBL_XXXXX_VFILE subroutines in GNUCobol.
> Issuing a GOBACK in VFILE.COB (after doing the Windows API's
> successfully execute) results in a signal SIGSEGV interrupt.
> I added DISPLAYS to isolate the offending Cobol statement - it is the
> GOBACK.
> The stack must be corrupt. I have no visibility to what component is
> issuing the interrupt.
> I have attached the .DLL and the .EXE as well as the source code.
> Rename VFILE.DLX to VFILE.DLL
> Rename TESTVFX.xex to TESTVFX.EXE
> *TESTVFX* is the command line to invoke the program.
>
> C:\GNUCOBOL\LOADLIB>TESTVFX
> ENTERING VFILE
> RETURN FROM VFILE
> IN OPEN V
> AFTER ALLOC RC =:0013500448
> AFTER ALLOC RC =:+0010000000
> AFTER UNLOCK
> GOBACK FROM CBL_OPEN_VFILE ===> The last statement executed before the
> GOBACK
>
> These are the compile / link parameters.
> For TESTVFX.EXE:
> C:\FUJCBL>\GNUCOBOL\BIN\cobc C:\GEDIT\COBOL\TESTVFX.COB
> -tC:\GEDIT\COBOL\TESTVFX
> .LST -oC:\GNUCOBOL\LOADLIB\TESTVFX -L\GNUCOBOL\LIB -x
> -fbinary-size=2-4-8 --ts
> ymbols -Xref -fsign=ebcdic -fcomplex-odo -fimplicit-init
> -fsticky-linkage -fperf
> orm-osvs -fmove-ibm -fhostsign -fnotrunc -fno-recursive-check
> -fdefaultbyte=00
>
> For VFILE1.DLL:
> C:\FUJCBL>\GNUCOBOL\BIN\cobc C:\GEDIT\COBOL\VFILE1.COB
> -tC:\GEDIT\COBOL\VFILE1.L
> ST -oC:\GNUCOBOL\LOADLIB\VFILE1 -fbinary-size=2-4-8
> -fbinary-byteorder=native -f
> source-location -Xref --tsymbols -fsign=ebcdic -fcomplex-odo
> -fimplicit-init -f
> perform-osvs -fmove-ibm -fhostsign -fnotrunc -fno-recursive-check
> -fdefaultbyte=
> 00
>
>
> attempt to reference unallocated memory (signal SIGSEGV)
> abnormal termination - file contents may be incorrect