- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- F90 on Itanium
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Forums
Discussions
Discussions
Discussions
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-04-2005 01:17 AM
10-04-2005 01:17 AM
F90 on Itanium
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.
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".
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.
Does anyone have any experience of this or any ideas how to avoid the warnings?
I'm running HP Fortran V8.0-48071-50EAE on OpenVMS/IA64 8.2-1.
Thanks
Peter
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-04-2005 01:39 AM
10-04-2005 01:39 AM
Re: F90 on Itanium
Having said that, it looks that this construct is not acceptable by the F90 standard - hence this warning.
The problem is ASSIGN and GOTO.
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.
Willem
OpenVMS Developer & System Manager
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-04-2005 02:53 AM
10-04-2005 02:53 AM
Re: F90 on Itanium
As I understand it you can only suppress whole groups of warning (check help fortran/warning).
But you could direct the compilation listing to a file and do :
$ search/mat=no "A jump into a block from outside the block may have occurred".
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-04-2005 12:14 PM
10-04-2005 12:14 PM
Re: F90 on Itanium
At the moment, I think best you can do from the command line is /WARN=NOGENERAL.
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).
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.
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?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-05-2005 10:19 PM
10-05-2005 10:19 PM
Re: F90 on Itanium
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.
Peter