[an error occurred while processing this directive]

HP OpenVMS Systems

ask the wizard
Content starts here

COBOL BADLOGIC and undefined variables?

» close window

The Question is:

 
I have cobol V5.5 on a VAX with VMS V7.1.
When I make a mistake in calling a function with
an argument that is not defined and gave a statement "ACCEPT DDD FROM
DATE.", I get the
compiler error:
%COBOL-F-BADLOGIC, internal logic error detected at PC 0004572A
In case of commenting the ACCEPT FROM DATE statement I get the correct error
message:
   17              CALL "xxxx" USING VRITM ENDP.
                                     1         2
%COBOL-F-ERROR  349, (1) Undefined name
 
Is this a known bug?
Is there a patch for this bug?
What can I do?
 
 


The Answer is :

 
  With DIGITAL VAX COBOL V5.5, the error:
 
    %COBOL-F-BADLOGIC
 
  is potentially related to references to undefined variables within
  programs which use:
 
    ACCEPT DATE
    ACCEPT DAY
 
  As a temporary workaround for the V5.5 compiler, try to locate the
  undefined variable using the following:
 
    1. Comment out uses of ACCEPT DATE and ACCEPT DAY
    2. Compile the program and correct any undefined variable references
    3. Uncomment uses of ACCEPT DATE and ACCEPT DAY
    4. Recompile
 
  Another approach uses ACCEPT DATE or ACCEPT DAY in a paragraph at the
  end of the program, and then PERFORM that paragraph.  The undefined
  variable processing works correctly until the first ACCEPT DATE or
  ACCEPT DAY is encountered during the compilation.
 
  This diagnostic handling problem does not show up in DIGITAL COBOL V2.5
  on OpenVMS Alpha.  The non-diagnostic handling of ACCEPT is working as
  expected on both OpenVMS VAX and Alpha.
 
  This problem is fixed in the V5.6-60 and later releases of the compiler.
 

answer written or last revised on ( 30-SEP-1999 )

» close window