[an error occurred while processing this directive]

HP OpenVMS Systems

ask the wizard
Content starts here

translating virtual address to line of compiled co

» close window

The Question is:

 
Dear Sir
 
    I wriiten the application on DEC C version 5.6 and the application
crashed because of ACCVIO and it also reported the real PC and abs PC. From
both PC , do I have any way to know which line of codes cause the error.
 
Regards
 
Seng Chanlertlakha
 
 


The Answer is :

 
  Sir?  You do realize you could be making potentially unwarranted
  assumptions with that phrasing, correct?  But the Wizard digresses.
 
  Based on the compiler listings file(s) and the linker map (that you
  should have) requested when you built the image, you can convert the
  process virtual address into the errant line of source code.  To do
  this: first, use the virtual address in conjunction with the linker
  map to locate the modules involved.  Then use the process virtual
  address and the base address of the section containing it in the
  linker map to determine the relative address of the failing assembler
  code in the compiler listings module.  Next, use the line numbers that
  tag the assembler code to back-locate the line of compiled C code that
  generated the failing assembler instruction.
 
  The OpenVMS debugger is also a powerful and very useful tool here.
  Additionally, the process dump capabilities of OpenVMS can potentially
  be used here as well.
 

answer written or last revised on ( 4-DEC-1998 )

» close window