<?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 F90 on Itanium in Operating System - OpenVMS</title>
    <link>https://community.hpe.com/t5/operating-system-openvms/f90-on-itanium/m-p/4931165#M32857</link>
    <description>Hi,&lt;BR /&gt;&lt;BR /&gt;We have for some time now used a code generator that produces fortran from templates/meta code. In that meta code we emulate "sections" which can be called using a "perform" statement. This statments will be generated as fortran assign/goto lines.&lt;BR /&gt;&lt;BR /&gt;The problem we now have when using F90 on IA64 is that if a "perform" is placed within a fortran block like If - Else - Endif we get the following warning message, "%F90-W-WARNING, A jump into a block from outside the block may have occurred".&lt;BR /&gt;&lt;BR /&gt;I have looked around in the HP doc's but i don't find a way to suppress the message or change it an informational message.&lt;BR /&gt;&lt;BR /&gt;Does anyone have any experience of this or any ideas how to avoid the warnings?&lt;BR /&gt;&lt;BR /&gt;I'm running HP Fortran V8.0-48071-50EAE on OpenVMS/IA64 8.2-1.&lt;BR /&gt;&lt;BR /&gt;Thanks&lt;BR /&gt;Peter</description>
    <pubDate>Tue, 04 Oct 2005 08:17:08 GMT</pubDate>
    <dc:creator>ptrskg</dc:creator>
    <dc:date>2005-10-04T08:17:08Z</dc:date>
    <item>
      <title>F90 on Itanium</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/f90-on-itanium/m-p/4931165#M32857</link>
      <description>Hi,&lt;BR /&gt;&lt;BR /&gt;We have for some time now used a code generator that produces fortran from templates/meta code. In that meta code we emulate "sections" which can be called using a "perform" statement. This statments will be generated as fortran assign/goto lines.&lt;BR /&gt;&lt;BR /&gt;The problem we now have when using F90 on IA64 is that if a "perform" is placed within a fortran block like If - Else - Endif we get the following warning message, "%F90-W-WARNING, A jump into a block from outside the block may have occurred".&lt;BR /&gt;&lt;BR /&gt;I have looked around in the HP doc's but i don't find a way to suppress the message or change it an informational message.&lt;BR /&gt;&lt;BR /&gt;Does anyone have any experience of this or any ideas how to avoid the warnings?&lt;BR /&gt;&lt;BR /&gt;I'm running HP Fortran V8.0-48071-50EAE on OpenVMS/IA64 8.2-1.&lt;BR /&gt;&lt;BR /&gt;Thanks&lt;BR /&gt;Peter</description>
      <pubDate>Tue, 04 Oct 2005 08:17:08 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/f90-on-itanium/m-p/4931165#M32857</guid>
      <dc:creator>ptrskg</dc:creator>
      <dc:date>2005-10-04T08:17:08Z</dc:date>
    </item>
    <item>
      <title>Re: F90 on Itanium</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/f90-on-itanium/m-p/4931166#M32858</link>
      <description>I know that the IA64 compilers are far less forgiving on non-standard behaviour compared to AXP compilers. At least, the C compiler is, and it is not really surprising the same would apply to the Fortran compiler.&lt;BR /&gt;Having said that, it looks that this construct is not acceptable by the F90 standard - hence this warning.&lt;BR /&gt;&lt;BR /&gt;The problem is ASSIGN and GOTO.&lt;BR /&gt;Take into account that a compiler on IA64 will have to do extensive code analysis to determine parallellism in the final executable. CALL (the right translation of COBOL's PERFORM statement) isolates processing, where GOTO may corrupt predication and determination.&lt;BR /&gt; &lt;BR /&gt;Willem</description>
      <pubDate>Tue, 04 Oct 2005 08:39:30 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/f90-on-itanium/m-p/4931166#M32858</guid>
      <dc:creator>Willem Grooters</dc:creator>
      <dc:date>2005-10-04T08:39:30Z</dc:date>
    </item>
    <item>
      <title>Re: F90 on Itanium</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/f90-on-itanium/m-p/4931167#M32859</link>
      <description>Peter,&lt;BR /&gt;&lt;BR /&gt;As I understand it you can only suppress whole groups of warning (check help fortran/warning).&lt;BR /&gt;&lt;BR /&gt;But you could direct the compilation listing to a file and do :&lt;BR /&gt;$ search/mat=no "A jump into a block from outside the block may have occurred".&lt;BR /&gt;&lt;BR /&gt;Wim</description>
      <pubDate>Tue, 04 Oct 2005 09:53:50 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/f90-on-itanium/m-p/4931167#M32859</guid>
      <dc:creator>Wim Van den Wyngaert</dc:creator>
      <dc:date>2005-10-04T09:53:50Z</dc:date>
    </item>
    <item>
      <title>Re: F90 on Itanium</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/f90-on-itanium/m-p/4931168#M32860</link>
      <description>Peter,&lt;BR /&gt;&lt;BR /&gt;  At the moment, I think best you can do from the command line is /WARN=NOGENERAL.&lt;BR /&gt;&lt;BR /&gt;Some compilers let you turn warnings on and off within the code, but Fortran directives aren't that detailed (you can only toggle alignment warnings).&lt;BR /&gt;&lt;BR /&gt;That said, I can only get the compiler to generate this message if there is a GOTO from outside the block (but I haven't played with ASSIGN, so that might have an effect). If you ARE branching into an IF-THEN-ELSE-ENDIF block, then the results may not be well defined. It's probably also playing havok with the optimizer, either resulting in much longer than necessary compliation times, or sub optimal code.&lt;BR /&gt;&lt;BR /&gt;Note that the archaic ASSIGNED GOTO has been deleted in the latest Fortran standard. I'd be STRONGLY encouraging your to look at your code generator to see if you can't change the mechanism to something a bit more up to date. Maybe look at using modules?</description>
      <pubDate>Tue, 04 Oct 2005 19:14:56 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/f90-on-itanium/m-p/4931168#M32860</guid>
      <dc:creator>John Gillings</dc:creator>
      <dc:date>2005-10-04T19:14:56Z</dc:date>
    </item>
    <item>
      <title>Re: F90 on Itanium</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/f90-on-itanium/m-p/4931169#M32861</link>
      <description>Thanks for all viewpoints!&lt;BR /&gt;I will probably go for a solution based on two F90 compiling steps, one /syntax_only follow by a /warn=nogen if the only warn/err is the "generated" one.&lt;BR /&gt;Peter</description>
      <pubDate>Thu, 06 Oct 2005 05:19:28 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/f90-on-itanium/m-p/4931169#M32861</guid>
      <dc:creator>ptrskg</dc:creator>
      <dc:date>2005-10-06T05:19:28Z</dc:date>
    </item>
  </channel>
</rss>

