<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Interpreting Symbolic dump in Operating System - OpenVMS</title>
    <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591673#M6770</link>
    <description>ram,&lt;BR /&gt;&lt;BR /&gt;One more thing to be aware of.&lt;BR /&gt;The compiler's optimizer may cause problems where you wouldn't expect them - but in 99% of all cases, it has nothing to do with the optimzer, but with programmers not obeying the code rules:&lt;BR /&gt;&lt;BR /&gt;As an example: &lt;BR /&gt;A program is built using a commandprocedure, where all modules were copiled the same way: with, or without /NOOPTIMIZE.&lt;BR /&gt;When run, it crashed when it was built without /NOOPTIMIZE, but succeeded when  compiled with the qualifier set. It was quite a job to find out which module caused it, but finally we found out it was a completely different one then where the program crashed. The cause was some piece of data that was constructed in another module, from an array that was one of it's parameter.&lt;BR /&gt;This caused the problem due to the way it was coded; the syntax was valid in itself, according the langauge specifications, so the compiler did not raise a warning or error on this. But we used it in a non-standard (quick and dirty) way, where some basic coding-rules in Pascal were violated, and that mislead the optimizer. It assumes you adhere to these rules, but if you don't, be prepared for some great times troubleshooting. (Program dumps, LIS and MAP files are indispensible!)</description>
    <pubDate>Fri, 29 Jul 2005 04:45:23 GMT</pubDate>
    <dc:creator>Willem Grooters</dc:creator>
    <dc:date>2005-07-29T04:45:23Z</dc:date>
    <item>
      <title>Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591651#M6748</link>
      <description>When I execute my program I am see a symbolic dump. Is there a way to interpret the same</description>
      <pubDate>Thu, 28 Jul 2005 06:22:54 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591651#M6748</guid>
      <dc:creator>ram_47</dc:creator>
      <dc:date>2005-07-28T06:22:54Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591652#M6749</link>
      <description>Ram,&lt;BR /&gt;&lt;BR /&gt;Please post (as an attachment) what you're getting. We might be able to help.&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;Kris (aka Qkcl)&lt;BR /&gt;</description>
      <pubDate>Thu, 28 Jul 2005 06:36:49 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591652#M6749</guid>
      <dc:creator>Kris Clippeleyr</dc:creator>
      <dc:date>2005-07-28T06:36:49Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591653#M6750</link>
      <description>Dump attached.</description>
      <pubDate>Thu, 28 Jul 2005 06:44:32 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591653#M6750</guid>
      <dc:creator>ram_47</dc:creator>
      <dc:date>2005-07-28T06:44:32Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591654#M6751</link>
      <description>Hi Ram,&lt;BR /&gt;&lt;BR /&gt;It looks like your program wants to read from address 0000000A (which under VMS is strictly forbidden).&lt;BR /&gt;This is clearly a programming error. Did you by any chance pass something to a routine by value instead of by reference? It looks like that to me.&lt;BR /&gt;&lt;BR /&gt;Hope this helps,&lt;BR /&gt;Kris (aka Qkcl)&lt;BR /&gt;</description>
      <pubDate>Thu, 28 Jul 2005 06:52:40 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591654#M6751</guid>
      <dc:creator>Kris Clippeleyr</dc:creator>
      <dc:date>2005-07-28T06:52:40Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591655#M6752</link>
      <description>I have checked the code but i dont see anything of that sort.</description>
      <pubDate>Thu, 28 Jul 2005 07:50:13 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591655#M6752</guid>
      <dc:creator>ram_47</dc:creator>
      <dc:date>2005-07-28T07:50:13Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591656#M6753</link>
      <description>Ram,&lt;BR /&gt;&lt;BR /&gt;If it's possible, could you post the source of your program?&lt;BR /&gt;Also, you can build a debug version of your program ( CC/NOOPT/DEBUG &amp;amp; LINK/DEBUG ).&lt;BR /&gt;And if you run your program then, the symbolic debugger comes along, and you can step through the program line by line and see where it goes wrong.&lt;BR /&gt;&lt;BR /&gt;Kris (aka Qkcl)&lt;BR /&gt;</description>
      <pubDate>Thu, 28 Jul 2005 07:55:51 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591656#M6753</guid>
      <dc:creator>Kris Clippeleyr</dc:creator>
      <dc:date>2005-07-28T07:55:51Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591657#M6754</link>
      <description>I would have liked to attach the code but I cannot do that. But I shall certainly try creating the debug script.</description>
      <pubDate>Thu, 28 Jul 2005 08:11:28 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591657#M6754</guid>
      <dc:creator>ram_47</dc:creator>
      <dc:date>2005-07-28T08:11:28Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591658#M6755</link>
      <description>If running the program with the VMS Debugger then SET BRE/EXCEPTION will stop and allow you to see where in your program is ACCVIO occours.</description>
      <pubDate>Thu, 28 Jul 2005 08:13:59 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591658#M6755</guid>
      <dc:creator>Ian Miller.</dc:creator>
      <dc:date>2005-07-28T08:13:59Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591659#M6756</link>
      <description>am at the DBG&amp;gt; prompt. how do I debug from here?</description>
      <pubDate>Thu, 28 Jul 2005 08:17:26 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591659#M6756</guid>
      <dc:creator>ram_47</dc:creator>
      <dc:date>2005-07-28T08:17:26Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591660#M6757</link>
      <description>where do i give SET BRE/EXCEPTION command?</description>
      <pubDate>Thu, 28 Jul 2005 08:29:03 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591660#M6757</guid>
      <dc:creator>ram_47</dc:creator>
      <dc:date>2005-07-28T08:29:03Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591661#M6758</link>
      <description>Hi Ram,&lt;BR /&gt;&lt;BR /&gt;A the DBG&amp;gt; prompt, you first type a GO to reach the "main" function. Then, type SET BREAK/EXCEPTION, and GO again.&lt;BR /&gt;This will cause the debugger to stop executing your program when an exception occurs. If this happens, the DBG&amp;gt; prompt returns, and then you can type SET MODE SCREEN,and you'll see where the error occured.&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;Kris (aka Qkcl)&lt;BR /&gt;</description>
      <pubDate>Thu, 28 Jul 2005 08:44:49 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591661#M6758</guid>
      <dc:creator>Kris Clippeleyr</dc:creator>
      <dc:date>2005-07-28T08:44:49Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591662#M6759</link>
      <description>Here at the steps and messages that I have got&lt;BR /&gt;&lt;BR /&gt;$ run &lt;PROGRAM name=""&gt;&lt;BR /&gt;DBG&amp;gt;GO&lt;BR /&gt;%DEBUG-I-EXITSTATUS, is '%SYSTEM-S-NORMAL, normal successful completion'&lt;BR /&gt;DBG&amp;gt;SET BREAK/EXCEPTION&lt;BR /&gt;DBG&amp;gt;GO&lt;BR /&gt;%DEBUG-E-BADSTARTPC, cannot access start PC = 00000000&lt;BR /&gt;DBG&amp;gt;SET MODE SCREEN&lt;BR /&gt;- SRC -scroll-source--&lt;BR /&gt;%DEBUG-W-SCRNOSRCLIN, no source line for address 00000000 for display in SRC&lt;BR /&gt;- OUT -output---&lt;BR /&gt;- PROMPT -error-program-prompt--&lt;BR /&gt;&lt;BR /&gt;Looks like it is not going to show me the error source :)&lt;/PROGRAM&gt;</description>
      <pubDate>Thu, 28 Jul 2005 09:22:40 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591662#M6759</guid>
      <dc:creator>ram_47</dc:creator>
      <dc:date>2005-07-28T09:22:40Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591663#M6760</link>
      <description>$ run &lt;PROGRAM name=""&gt;&lt;BR /&gt;DBG&amp;gt;SET BREAK/EXCEPTION&lt;BR /&gt;DBG&amp;gt;GO&lt;BR /&gt;%DEBUG-I-EXITSTATUS, is '%SYSTEM-S-NORMAL, normal successful completion'&lt;BR /&gt; &lt;BR /&gt;Antonio Vigliotti&lt;BR /&gt;&lt;/PROGRAM&gt;</description>
      <pubDate>Thu, 28 Jul 2005 09:25:27 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591663#M6760</guid>
      <dc:creator>Antoniov.</dc:creator>
      <dc:date>2005-07-28T09:25:27Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591664#M6761</link>
      <description>Ram,&lt;BR /&gt;&lt;BR /&gt;&lt;QUOTE&gt;&lt;BR /&gt;DBG&amp;gt;GO&lt;BR /&gt;%DEBUG-I-EXITSTATUS, is '%SYSTEM-S-NORMAL, normal successful completion'&lt;BR /&gt;&lt;/QUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;your program did NOT cause an ACCVIO this time - it successfully ran until completion.&lt;BR /&gt;&lt;BR /&gt;The original access violation happened in MY_FILE_READ in line 6232. If you issue a SET PROC/DUMP before running your original program, you will get a process dump written (imagename.DMP), which you can analyze with ANAL/PROCESS. On the DBG&amp;gt; prompt, issue DBG&amp;gt; EXA/INS @PC to see the failing machine code instruction.&lt;BR /&gt;&lt;BR /&gt;Volker.</description>
      <pubDate>Thu, 28 Jul 2005 10:30:53 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591664#M6761</guid>
      <dc:creator>Volker Halle</dc:creator>
      <dc:date>2005-07-28T10:30:53Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591665#M6762</link>
      <description>strange things happening here. initially i used to get a dump on the screen but since i started debugging the program the dump just disappeared. and now without the debug my program runs fine :-)&lt;BR /&gt;&lt;BR /&gt;i think at some point i changed some code. but not sure of the change :)&lt;BR /&gt;&lt;BR /&gt;anyways, i'll keep a watch on my program and see.</description>
      <pubDate>Thu, 28 Jul 2005 10:35:43 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591665#M6762</guid>
      <dc:creator>ram_47</dc:creator>
      <dc:date>2005-07-28T10:35:43Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591666#M6763</link>
      <description>For interactive debugging, with all facilities the VMS debugger has (viewing code, knowing symbols) you need to compile and link with the /DEBUG qualifier. For basic debug, I should use the /NOOPTIMIZE qualifier as well.&lt;BR /&gt;Compile with /LIST, it gives yoy the source listing; link with /MAP/FULL that will give you the full image map, which can be very usefull (for final builds, I would strongly suggest both of these, since that will come out exteremely handy if the program crashes and you have to analyze the process dump).&lt;BR /&gt;If you make this your standard procedure, you never can go wrong ;-)&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Ok, your dump and traceback:&lt;BR /&gt;%SYSTEM-F-ACCVIO, access violation, reason mask=00, virtual address=0000000A, PC=00003F3F, PSL=03C00000&lt;BR /&gt;&lt;BR /&gt;Volker already explained that. &lt;BR /&gt;One reason could be you expect to read a value, but actually access an address; probably in an assignment, or in passing a parameter to a C-function, or one of your own.&lt;BR /&gt;&lt;BR /&gt;%TRACE-F-TRACEBACK, symbolic stack dump follows&lt;BR /&gt;module name     routine name                     line       rel PC    abs PC&lt;BR /&gt;&lt;BR /&gt;MY_FILE_READ    main                             6232      000001C7  00003F3F&lt;BR /&gt;&lt;BR /&gt;The problem is found in the main() of your program (MY_FILE_READ.C) at line 6232.&lt;BR /&gt;&lt;BR /&gt;Now you take your listing and look for this line. One of the variables on that line will have a value of 10 (0000000A in hex), but you will need to access the ADDRESS of that var, not the value.&lt;BR /&gt;&lt;BR /&gt;Next, to analyze (assuming you built the program like above):&lt;BR /&gt;&lt;BR /&gt;$ RUN MY_FILE_READ&lt;BR /&gt;DBG&amp;gt; SET BREAK %LINE 6232&lt;BR /&gt;DBG&amp;gt; GO&lt;BR /&gt;&lt;BR /&gt;and on breakpoint, examine source and each var in it, before excuting that line.&lt;BR /&gt;&lt;BR /&gt;(here, it is essential you compile with /NOOPTIMIZE, to force the processor to execute the code in-line, not out-of-order (which is the default method)).&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Fri, 29 Jul 2005 02:59:05 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591666#M6763</guid>
      <dc:creator>Willem Grooters</dc:creator>
      <dc:date>2005-07-29T02:59:05Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591667#M6764</link>
      <description>&lt;ONE reason="" could="" be="" you="" expect="" to="" read="" a="" value=""&gt;&lt;BR /&gt;&lt;BR /&gt;Sorry, just the other way around ;-) Read this as:&lt;BR /&gt;&lt;BR /&gt;One reason could be you expect to access an address but actually read an value.&lt;BR /&gt;&lt;BR /&gt;Some additional hint:&lt;BR /&gt;DBG&amp;gt; EXAMINE &lt;VAR&gt; wiill give you the CONTENTS on the variable.&lt;BR /&gt;DBG&amp;gt; EXAMINE @&lt;VAR&gt; will use the contents of &lt;VAR&gt; as the address and display the contents at that address.&lt;BR /&gt;&lt;BR /&gt;Consider you specified in your program:&lt;BR /&gt;&lt;BR /&gt;int a&lt;BR /&gt;...&lt;BR /&gt;a = 10;&lt;BR /&gt;&lt;BR /&gt;and at the breakpoint, you give:&lt;BR /&gt;&lt;BR /&gt;DBG&amp;gt; EXAMINE a&lt;BR /&gt;&lt;BR /&gt;you will get 10, and&lt;BR /&gt;&lt;BR /&gt;DBG&amp;gt; EXAMINE @a&lt;BR /&gt;&lt;BR /&gt;will give something stating you accessed a location you're not allowed to: ACCVIO, as in your crash.&lt;BR /&gt;&lt;BR /&gt;Hope this explains.&lt;BR /&gt;&lt;BR /&gt;Willem&lt;/VAR&gt;&lt;/VAR&gt;&lt;/VAR&gt;&lt;/ONE&gt;</description>
      <pubDate>Fri, 29 Jul 2005 03:09:32 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591667#M6764</guid>
      <dc:creator>Willem Grooters</dc:creator>
      <dc:date>2005-07-29T03:09:32Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591668#M6765</link>
      <description>&lt;BR /&gt;&amp;gt;I would have liked to attach the code but I cannot do that. &lt;BR /&gt;&amp;gt; But I shall certainly try creating the debug script.&lt;BR /&gt;&lt;BR /&gt;Just a little code around that reported line 6232 should be a good start&lt;BR /&gt;&lt;BR /&gt;One good address for that address 10 could be that the source line 6232 contains a reference to a field with offset 10 within a structure where the pointer to the structure was not valid.&lt;BR /&gt;Something like&lt;BR /&gt;&lt;BR /&gt;struct detail {char name[10], flag, ...} detail_p;&lt;BR /&gt;struct {long id; struct detail *detail_p; ...} control&lt;BR /&gt;:&lt;BR /&gt;detail_p = control.detail_p; /* what if NULL? */&lt;BR /&gt;x = detail_p-&amp;gt;x;&lt;BR /&gt;:&lt;BR /&gt;&lt;BR /&gt;fwiw,&lt;BR /&gt;Hein.&lt;BR /&gt;</description>
      <pubDate>Fri, 29 Jul 2005 03:21:56 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591668#M6765</guid>
      <dc:creator>Hein van den Heuvel</dc:creator>
      <dc:date>2005-07-29T03:21:56Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591669#M6766</link>
      <description>ok, here i am again. this time i managed to reproduce the error. yesterday after the error what i did was i initialized some of my variables in the function. so that had eliminated the error. and today to reproduce the error i have removed the variable initialization part and i get the error again. &lt;BR /&gt;&lt;BR /&gt;am using a variable inside a WHILE loop which is getting incremented but never initialized. Do think this should cause the error?&lt;BR /&gt;</description>
      <pubDate>Fri, 29 Jul 2005 04:12:04 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591669#M6766</guid>
      <dc:creator>ram_47</dc:creator>
      <dc:date>2005-07-29T04:12:04Z</dc:date>
    </item>
    <item>
      <title>Re: Interpreting Symbolic dump</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591670#M6767</link>
      <description>Ram,&lt;BR /&gt;&lt;BR /&gt;why speculate ?!&lt;BR /&gt;&lt;BR /&gt;Show us the failure (traceback info) and the associated source code line. Also show us the failing machine instruction (DBG&amp;gt; EXA/INS @PC) and the values of the registers involved in that instruction.&lt;BR /&gt;&lt;BR /&gt;Volker.</description>
      <pubDate>Fri, 29 Jul 2005 04:18:12 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/interpreting-symbolic-dump/m-p/3591670#M6767</guid>
      <dc:creator>Volker Halle</dc:creator>
      <dc:date>2005-07-29T04:18:12Z</dc:date>
    </item>
  </channel>
</rss>

