COBOL 5.1 Compilation Error: ./CodeGenerator.cpp:4665



Support for OS/VS COBOL, VS COBOL II, COBOL for OS/390 & VM and Enterprise COBOL for z/OS

COBOL 5.1 Compilation Error: ./CodeGenerator.cpp:4665

Postby Aki88 » Wed May 18, 2016 9:24 pm

Hello,

My apologies for this very trivial query, but it has me stumped.

I haven't had a chance to play around with a machine that is running 5.1/5.2 versions; and then suddenly all prayers answered - a box with z/OS 2.1/COBOL- 5.1 and another box with z/OS 2.2/COBOL- 5.2; a colleague testing the COBOL 5.1 rig asked me a simple query pertaining to a compilation error for a program which is compiling clean on 4.2, but going for a toss on 5.1 (which is understandable going by the amount of changes that have gone into the new releases).

The error:


4665  IGYCB7104-U   Internal error while compiling function XYXYXY. Failed assertion on ./CodeGenerator.cpp:4665. Compilation
                      terminated.
 


I tried searching for: './CodeGenerator.cpp:4665' on the web, but couldn't find something relevant (or in case if there was something, I could't make much sense of it); also searched for IGYCB7104, afa I could make out from the search results, I should be looking at the compiler options; but which one - am still unsure.
It'd be really kind if someone can please point my nose in the correct direction for the documentation where I can find some details on the above messages (I hope these are documented somewhere unlike the traditional IGY* messages which are deemed self-explanatory).

P.S.: Even the simple 'ERRMSG' program returned an RC-16 (tested on 5.2) in the phase: IGYCDIAG :shock: (had expected it to run clean, unless there is a conflicting compiler option which is messing things up for me; am currently revisiting the application programming guide/migration guide, to see if something can be salvaged out of it)

Thank you.
Aki88
 
Posts: 381
Joined: Tue Jan 28, 2014 1:52 pm
Has thanked: 33 times
Been thanked: 36 times

Re: COBOL 5.1 Compilation Error: ./CodeGenerator.cpp:4665

Postby Aki88 » Wed May 18, 2016 9:35 pm

<Exceeded the post edit time>
The ERRMSG compilation failed with: IGYDI5006-U; end-of-file while reading from SYSUT3.
Aki88
 
Posts: 381
Joined: Tue Jan 28, 2014 1:52 pm
Has thanked: 33 times
Been thanked: 36 times

Re: COBOL 5.1 Compilation Error: ./CodeGenerator.cpp:4665

Postby BillyBoyo » Wed May 18, 2016 9:39 pm

It's an internal compiler error. You need to look at the Fix List, and get the Sysprogs to apply anything that looks like it does for the message, or report it to IBM as a new error.

Looking at the list, http://www-01.ibm.com/support/docview.w ... 164#310316, I see that March 2016 is up. Searching there for your message lists a fix from May 2015. If you have one year-old fix which is not applied, you may have others.

Can you show the ERRMSG program you tried? Does it end with a full-stop/period?

I suspect some search-engineing would have found the item.

I suspect, but don't know,
BillyBoyo
Global moderator
 
Posts: 3804
Joined: Tue Jan 25, 2011 12:02 am
Has thanked: 22 times
Been thanked: 265 times

Re: COBOL 5.1 Compilation Error: ./CodeGenerator.cpp:4665

Postby BillyBoyo » Wed May 18, 2016 9:41 pm

Ah. I saw your last whilst posting mine. Yes, I'd diagnose that as the program not ending with a full-stop/period, which the compiler is searching for. Causes an abend prior to V5.
BillyBoyo
Global moderator
 
Posts: 3804
Joined: Tue Jan 25, 2011 12:02 am
Has thanked: 22 times
Been thanked: 265 times

Re: COBOL 5.1 Compilation Error: ./CodeGenerator.cpp:4665

Postby Aki88 » Wed May 18, 2016 9:47 pm

Thank you Billy; I revisited the ERRMSG program, it did have the period.

Nevertheless, I went back to the programming guide and copy pasted the ERRMSG code snippet (having doubted my typing abilities); but the end result remains the same - an IGYDI5006 message.

Best regards.
Aki88
 
Posts: 381
Joined: Tue Jan 28, 2014 1:52 pm
Has thanked: 33 times
Been thanked: 36 times

Re: COBOL 5.1 Compilation Error: ./CodeGenerator.cpp:4665

Postby enrico-sorichetti » Wed May 18, 2016 9:49 pm

looks like the compiler is written in c++ :shock:

and if You had searched just with "cobol CodeGenerator.cpp"

You would have landed here
http://www-01.ibm.com/support/docview.w ... wg27041164
cheers
enrico
When I tell somebody to RTFM or STFW I usually have the page open in another tab/window of my browser,
so that I am sure that the information requested can be reached with a very small effort
enrico-sorichetti
Global moderator
 
Posts: 2994
Joined: Fri Apr 18, 2008 11:25 pm
Has thanked: 0 time
Been thanked: 164 times

Re: COBOL 5.1 Compilation Error: ./CodeGenerator.cpp:4665

Postby prino » Wed May 18, 2016 9:52 pm

enrico-sorichetti wrote:looks like the compiler is written in c++ :shock:

The PL/I front-end is written in PL/I, but nowadays all compilers use the same pretty hopeless back-end written in C++, which may generate good code, but which sadly is no longer readable in the assembler listing generated.
Robert AH Prins
robert.ah.prins @ the.17+Gb.Google thingy
User avatar
prino
 
Posts: 635
Joined: Wed Mar 11, 2009 12:22 am
Location: Vilnius, Lithuania
Has thanked: 3 times
Been thanked: 28 times

Re: COBOL 5.1 Compilation Error: ./CodeGenerator.cpp:4665

Postby Aki88 » Wed May 18, 2016 9:53 pm

Hello Enrico,

enrico-sorichetti wrote:looks like the compiler is written in c++ :shock:


I actually did check the fix list as well, but didn't seem to find 4665; or maybe I need a new pair of spectacles :(
Aki88
 
Posts: 381
Joined: Tue Jan 28, 2014 1:52 pm
Has thanked: 33 times
Been thanked: 36 times

Re: COBOL 5.1 Compilation Error: ./CodeGenerator.cpp:4665

Postby enrico-sorichetti » Wed May 18, 2016 10:00 pm

first from the
Failed assertion


here is the man page for the c/c++ assert builtin

ASSERT(3) BSD Library Functions Manual ASSERT(3)

NAME
assert -- expression verification macro

SYNOPSIS
#include <assert.h>

assert(expression);

DESCRIPTION
The assert() macro tests the given expression and if it is false, the
calling process is terminated. A diagnostic message is written to stderr
and the abort(3) function is called, effectively terminating the program.

If expression is true, the assert() macro does nothing.

The assert() macro may be removed at compile time with the cc(1) option
-DNDEBUG.

DIAGNOSTICS
The following diagnostic message is written to stderr if expression is
false:

"assertion \"%s\" failed: file \"%s\", line %d\n", \
"expression", __FILE__, __LINE__);

SEE ALSO
cc(1), abort(3)

STANDARDS
The assert() macro conforms to ANSI X3.159-1989 (``ANSI C89'').

HISTORY
A assert macro appeared in Version 6 AT&T UNIX.

BSD June 9, 1993 BSD


it' s usually a quick way out of something that really should not ever occur
cheers
enrico
When I tell somebody to RTFM or STFW I usually have the page open in another tab/window of my browser,
so that I am sure that the information requested can be reached with a very small effort

These users thanked the author enrico-sorichetti for the post:
Aki88 (Wed May 18, 2016 10:17 pm)
enrico-sorichetti
Global moderator
 
Posts: 2994
Joined: Fri Apr 18, 2008 11:25 pm
Has thanked: 0 time
Been thanked: 164 times

Re: COBOL 5.1 Compilation Error: ./CodeGenerator.cpp:4665

Postby BillyBoyo » Wed May 18, 2016 10:11 pm

Yes, you'll need to check whether the item in that fix could relate to your program. Although the compiler line-number is different, it is the only thing which is different, and that message itself is different from the other examples. I may have made too much of that :-)

If that isn't your issue, then you need to report it to IBM (probably not you directly, but one of the techies will know how).

Curious about the ERRMSG program. Can you past exactly what you tried?
BillyBoyo
Global moderator
 
Posts: 3804
Joined: Tue Jan 25, 2011 12:02 am
Has thanked: 22 times
Been thanked: 265 times

Next

Return to IBM Cobol

 


  • Related topics
    Replies
    Views
    Last post