GCIC (and the older and discontinued OCIC ), because of its age, does not support the CDF stream within a program under control.
Any coding for such will result in a failure if you specify a listing during generate, such as when running GCIC against itself, i.e.,.
preprocessing: gcic.cbl -> /home/vince/tmp/cob1645944_0.cob
attempt to reference unallocated memory (signal SIGSEGV)
cobc: aborting compile of const-set-1.cpy at line 33 (unknown: unknown)
cobc: Please report this!
cobc (GnuCOBOL) 3.1.2.0
Built Dec 17 2021 17:51:35 Packaged Dec 23 2020 12:04:58 UTC
C version "10.3.0"
GNU COBOL Compilation HAS FAILED - See Above
The solution is to include code to support CDF possibly in the listing section of the code but definitely in the cross-referencing code section.
I will attempt to work on this as and when time is available and update the program.
In the meanwhile do not attempt to create a listing or remove any such CDF coding in the source program under control.
I'm confused, this looks like an abort of cobc itself, isn't it? What are the command line options used to generate that?
On 06/03/2022 20:01, Simon Sobisch wrote:
Cobxref also has an issue but that does not blow up, just reports any
constant as undefined in the cross referencing listing areas.
I was aware of this one but with the gcic issue it has reminded me to
deal with it :)
I suspect that fixing Cobxref might be easier but don't hold me to it.
What it is in Gcic I don't know.
I did have a quick look in the LISTING sections hoping I would spot it, but no.
However, I have a suspicion it is in the main part sections. as it bombs out very quickly but on a trace it was well over 50k lines processed.
Needless to say cobxref is now complete with the CDF feature and other updates, features all all known bug fixes.
This bug is actually not a bug of gcic/ocic but cobc and is tracked (and fixed because of) [bugs:#821].
Related
Bugs:
#821