<?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: Difference in Itanium and Alpha Basic error handling in Operating System - OpenVMS</title>
    <link>https://community.hpe.com/t5/operating-system-openvms/difference-in-itanium-and-alpha-basic-error-handling/m-p/3983385#M35908</link>
    <description>Nice concise reproducer. Thanks.&lt;BR /&gt;Looks like a bug. Report to HP.&lt;BR /&gt;&lt;BR /&gt;The program may be right, but it feels wrong to me. It declares a function 'inner' and then calls it as a function, with no return value. That may be legit but I don't like it myself, and the compiler agrees...&lt;BR /&gt;If you change the code to i%=inner it works on both platforms.&lt;BR /&gt;&lt;BR /&gt;Then again... if you change the code to 'sub inner'... 'exit sub' and 'return sub' the problem stays. So something is wrong and worth reporting officially.&lt;BR /&gt;&lt;BR /&gt;fwiw,&lt;BR /&gt;Hein.&lt;BR /&gt;</description>
    <pubDate>Tue, 17 Apr 2007 18:49:37 GMT</pubDate>
    <dc:creator>Hein van den Heuvel</dc:creator>
    <dc:date>2007-04-17T18:49:37Z</dc:date>
    <item>
      <title>Difference in Itanium and Alpha Basic error handling</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/difference-in-itanium-and-alpha-basic-error-handling/m-p/3983384#M35907</link>
      <description>&lt;!--!*#--&gt;! This program fails (signals an error) on Itanium&lt;BR /&gt;! and exits cleanly on Alpha&lt;BR /&gt;!  Both OPenVMS 8.3, Basic v1.6&lt;BR /&gt;&lt;BR /&gt;        call inner&lt;BR /&gt;&lt;BR /&gt;        end&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;        function long inner&lt;BR /&gt;&lt;BR /&gt;        option handle=severe&lt;BR /&gt;&lt;BR /&gt;        %include "$SSDEF" %from %library "SYS$SHARE:BASIC$STARLET"&lt;BR /&gt;&lt;BR /&gt;        when error in&lt;BR /&gt;          call lib$signal( SS$_ABORT by value )&lt;BR /&gt;          exit function 1&lt;BR /&gt;        use&lt;BR /&gt;          exit handler unless vmsstatus = SS$_ABORT&lt;BR /&gt;          print "Caught abort: "; vmsstatus&lt;BR /&gt;        end when&lt;BR /&gt;&lt;BR /&gt;        end function 0&lt;BR /&gt;</description>
      <pubDate>Tue, 17 Apr 2007 17:18:47 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/difference-in-itanium-and-alpha-basic-error-handling/m-p/3983384#M35907</guid>
      <dc:creator>Jonathan Cronin</dc:creator>
      <dc:date>2007-04-17T17:18:47Z</dc:date>
    </item>
    <item>
      <title>Re: Difference in Itanium and Alpha Basic error handling</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/difference-in-itanium-and-alpha-basic-error-handling/m-p/3983385#M35908</link>
      <description>Nice concise reproducer. Thanks.&lt;BR /&gt;Looks like a bug. Report to HP.&lt;BR /&gt;&lt;BR /&gt;The program may be right, but it feels wrong to me. It declares a function 'inner' and then calls it as a function, with no return value. That may be legit but I don't like it myself, and the compiler agrees...&lt;BR /&gt;If you change the code to i%=inner it works on both platforms.&lt;BR /&gt;&lt;BR /&gt;Then again... if you change the code to 'sub inner'... 'exit sub' and 'return sub' the problem stays. So something is wrong and worth reporting officially.&lt;BR /&gt;&lt;BR /&gt;fwiw,&lt;BR /&gt;Hein.&lt;BR /&gt;</description>
      <pubDate>Tue, 17 Apr 2007 18:49:37 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/difference-in-itanium-and-alpha-basic-error-handling/m-p/3983385#M35908</guid>
      <dc:creator>Hein van den Heuvel</dc:creator>
      <dc:date>2007-04-17T18:49:37Z</dc:date>
    </item>
    <item>
      <title>Re: Difference in Itanium and Alpha Basic error handling</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/difference-in-itanium-and-alpha-basic-error-handling/m-p/3983386#M35909</link>
      <description>Interesting.  I was going to claim that the bug had occured with a function call (like sts = inner ) since we "deprecate" the use of call,  but went back to the code before I distilled it down, and the original usage was a "call" generated by an automated test-wrapper.&lt;BR /&gt;&lt;BR /&gt;I expect there's a lot of code out there that "call"s functions.</description>
      <pubDate>Wed, 18 Apr 2007 15:22:48 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/difference-in-itanium-and-alpha-basic-error-handling/m-p/3983386#M35909</guid>
      <dc:creator>Jonathan Cronin</dc:creator>
      <dc:date>2007-04-18T15:22:48Z</dc:date>
    </item>
  </channel>
</rss>

