Contributed by James Craig Burley (craig@jcb-sc.com). Inspired by a first pass at translating g77-0.5.16/f/DOC that was contributed to Craig by David Ronis (ronis@onsager.chem.mcgill.ca).

Short Contents

Table of Contents


Next: , Up: (DIR)

Introduction

This manual documents how to run, install and port g77, as well as its new features and incompatibilities, and how to report bugs. It corresponds to the GCC-3.4.4 version of g77.


Next: , Previous: Top, Up: Top

GNU GENERAL PUBLIC LICENSE

Version 2, June 1991
     Copyright © 1989, 1991 Free Software Foundation, Inc.
     59 Temple Place - Suite 330, Boston, MA  02111-1307, USA
     
     Everyone is permitted to copy and distribute verbatim copies
     of this license document, but changing it is not allowed.

Preamble

The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software—to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.

When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.

To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.

For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.

We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.

Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.

Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.

The precise terms and conditions for copying, distribution and modification follow.

TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
  1. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The “Program”, below, refers to any such program or work, and a “work based on the Program” means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term “modification”.) Each licensee is addressed as “you”.

    Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.

  2. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.

    You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.

  3. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
    1. You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
    2. You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
    3. If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)

    These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.

    Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.

    In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.

  4. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
    1. Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
    2. Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
    3. Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)

    The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

    If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.

  5. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
  6. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
  7. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
  8. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.

    If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.

    It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.

    This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.

  9. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
  10. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.

    Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and “any later version”, you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.

  11. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
    NO WARRANTY
  12. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
  13. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS

How to Apply These Terms to Your New Programs

If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.

To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found.

     one line to give the program's name and a brief idea of what it does.
     Copyright (C) year  name of author
     
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
     the Free Software Foundation; either version 2 of the License, or
     (at your option) any later version.
     
     This program is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     GNU General Public License for more details.
     
     You should have received a copy of the GNU General Public License
     along with this program; if not, write to the Free Software Foundation,
     Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.

Also add information on how to contact you by electronic and paper mail.

If the program is interactive, make it output a short notice like this when it starts in an interactive mode:

     Gnomovision version 69, Copyright (C) year name of author
     Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
     type `show w'.
     This is free software, and you are welcome to redistribute it
     under certain conditions; type `show c' for details.

The hypothetical commands show w and show c should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than show w and show c; they could even be mouse-clicks or menu items—whatever suits your program.

You should also get your employer (if you work as a programmer) or your school, if any, to sign a “copyright disclaimer” for the program, if necessary. Here is a sample; alter the names:

     Yoyodyne, Inc., hereby disclaims all copyright interest in the program
     `Gnomovision' (which makes passes at compilers) written by James Hacker.
     
     signature of Ty Coon, 1 April 1989
     Ty Coon, President of Vice

This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License.


Next: , Previous: Copying, Up: Top

GNU Free Documentation License

Version 1.2, November 2002
     Copyright © 2000,2001,2002 Free Software Foundation, Inc.
     59 Temple Place, Suite 330, Boston, MA  02111-1307, USA
     
     Everyone is permitted to copy and distribute verbatim copies
     of this license document, but changing it is not allowed.
  1. PREAMBLE

    The purpose of this License is to make a manual, textbook, or other functional and useful document free in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.

    This License is a kind of “copyleft”, which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.

    We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.

  2. APPLICABILITY AND DEFINITIONS

    This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The “Document”, below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as “you”. You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law.

    A “Modified Version” of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.

    A “Secondary Section” is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.

    The “Invariant Sections” are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none.

    The “Cover Texts” are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words.

    A “Transparent” copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not “Transparent” is called “Opaque”.

    Examples of suitable formats for Transparent copies include plain ascii without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only.

    The “Title Page” means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, “Title Page” means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text.

    A section “Entitled XYZ” means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as “Acknowledgements”, “Dedications”, “Endorsements”, or “History”.) To “Preserve the Title” of such a section when you modify the Document means that it remains a section “Entitled XYZ” according to this definition.

    The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License.

  3. VERBATIM COPYING

    You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.

    You may also lend copies, under the same conditions stated above, and you may publicly display copies.

  4. COPYING IN QUANTITY

    If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.

    If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.

    If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.

    It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.

  5. MODIFICATIONS

    You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:

    1. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission.
    2. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has fewer than five), unless they release you from this requirement.
    3. State on the Title page the name of the publisher of the Modified Version, as the publisher.
    4. Preserve all the copyright notices of the Document.
    5. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.
    6. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below.
    7. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice.
    8. Include an unaltered copy of this License.
    9. Preserve the section Entitled “History”, Preserve its Title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section Entitled “History” in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence.
    10. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the “History” section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission.
    11. For any section Entitled “Acknowledgements” or “Dedications”, Preserve the Title of the section, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.
    12. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles.
    13. Delete any section Entitled “Endorsements”. Such a section may not be included in the Modified Version.
    14. Do not retitle any existing section to be Entitled “Endorsements” or to conflict in title with any Invariant Section.
    15. Preserve any Warranty Disclaimers.

    If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles.

    You may add a section Entitled “Endorsements”, provided it contains nothing but endorsements of your Modified Version by various parties—for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.

    You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.

    The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.

  6. COMBINING DOCUMENTS

    You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers.

    The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.

    In the combination, you must combine any sections Entitled “History” in the various original documents, forming one section Entitled “History”; likewise combine any sections Entitled “Acknowledgements”, and any sections Entitled “Dedications”. You must delete all sections Entitled “Endorsements.”

  7. COLLECTIONS OF DOCUMENTS

    You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.

    You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.

  8. AGGREGATION WITH INDEPENDENT WORKS

    A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an “aggregate” if the copyright resulting from the compilation is not used to limit the legal rights of the compilation's users beyond what the individual works permit. When the Document is included an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document.

    If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document's Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate.

  9. TRANSLATION

    Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warrany Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail.

    If a section in the Document is Entitled “Acknowledgements”, “Dedications”, or “History”, the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title.

  10. TERMINATION

    You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

  11. FUTURE REVISIONS OF THIS LICENSE

    The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.

    Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License “or any later version” applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.

ADDENDUM: How to use this License for your documents

To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page:

       Copyright (C)  year  your name.
       Permission is granted to copy, distribute and/or modify this document
       under the terms of the GNU Free Documentation License, Version 1.2
       or any later version published by the Free Software Foundation;
       with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
       A copy of the license is included in the section entitled ``GNU
       Free Documentation License''.

If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the “with...Texts.” line with this:

         with the Invariant Sections being list their titles, with
         the Front-Cover Texts being list, and with the Back-Cover Texts
         being list.

If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit the situation.

If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.


Next: , Previous: GNU Free Documentation License, Up: Top

Contributors to GNU Fortran

In addition to James Craig Burley, who wrote the front end, many people have helped create and improve GNU Fortran.


Next: , Previous: Contributors, Up: Top

Funding Free Software

If you want to have more free software a few years from now, it makes sense for you to help encourage people to contribute funds for its development. The most effective approach known is to encourage commercial redistributors to donate.

Users of free software systems can boost the pace of development by encouraging for-a-fee distributors to donate part of their selling price to free software developers—the Free Software Foundation, and others.

The way to convince distributors to do this is to demand it and expect it from them. So when you compare distributors, judge them partly by how much they give to free software development. Show distributors they must compete to be the one who gives the most.

To make this approach work, you must insist on numbers that you can compare, such as, “We will donate ten dollars to the Frobnitz project for each disk sold.” Don't be satisfied with a vague promise, such as “A portion of the profits are donated,” since it doesn't give a basis for comparison.

Even a precise fraction “of the profits from this disk” is not very meaningful, since creative accounting and unrelated business decisions can greatly alter what fraction of the sales price counts as profit. If the price you pay is $50, ten percent of the profit is probably less than a dollar; it might be a few cents, or nothing at all.

Some redistributors do development work themselves. This is useful too; but to keep everyone honest, you need to inquire how much they do, and what kind. Some kinds of development make much more long-term difference than others. For example, maintaining a separate version of a program contributes very little; maintaining the standard version of a program for the whole community contributes much. Easy new ports contribute little, since someone else would surely do them; difficult ports such as adding a new CPU to the GNU Compiler Collection contribute more; major new features or packages contribute the most.

By establishing the idea that supporting further development is “the proper thing to do” when distributing free software for a fee, we can assure a steady flow of resources into making more free software.

     
     Copyright © 1994 Free Software Foundation, Inc.
     Verbatim copying and redistribution of this section is permitted
     without royalty; alteration is not permitted.
     


Next: , Previous: Funding, Up: Top

1 Funding GNU Fortran

James Craig Burley (craig@jcb-sc.com), the original author of g77, stopped working on it in September 1999 (He has a web page at http://world.std.com/%7Eburley/.)

GNU Fortran is currently maintained by Toon Moene (toon@moene.indiv.nluug.nl), with the help of countless other volunteers.

As with other GNU software, funding is important because it can pay for needed equipment, personnel, and so on.

The FSF provides information on the best way to fund ongoing development of GNU software (such as GNU Fortran) in documents such as the “GNUS Bulletin”. Email gnu@gnu.org for information on funding the FSF.

Another important way to support work on GNU Fortran is to volunteer to help out.

Email gcc@gcc.gnu.org to volunteer for this work.

However, we strongly expect that there will never be a version 0.6 of g77. Work on this compiler has stopped as of the release of GCC 3.1, except for bug fixing. g77 will be succeeded by g95 - see http://g95.sourceforge.net.

See Funding Free Software, for more information.


Next: , Previous: Funding GNU Fortran, Up: Top

2 Getting Started

If you don't need help getting started reading the portions of this manual that are most important to you, you should skip this portion of the manual.

If you are new to compilers, especially Fortran compilers, or new to how compilers are structured under UNIX and UNIX-like systems, you'll want to see What is GNU Fortran?.

If you are new to GNU compilers, or have used only one GNU compiler in the past and not had to delve into how it lets you manage various versions and configurations of gcc, you should see G77 and GCC.

Everyone except experienced g77 users should see Invoking G77.

If you're acquainted with previous versions of g77, you should see News About GNU Fortran. Further, if you've actually used previous versions of g77, especially if you've written or modified Fortran code to be compiled by previous versions of g77, you should see Changes.

If you intend to write or otherwise compile code that is not already strictly conforming ANSI FORTRAN 77—and this is probably everyone—you should see Language.

If you run into trouble getting Fortran code to compile, link, run, or work properly, you might find answers if you see Debugging and Interfacing, see Collected Fortran Wisdom, and see Trouble. You might also find that the problems you are encountering are bugs in g77—see Bugs, for information on reporting them, after reading the other material.

If you need further help with g77, or with freely redistributable software in general, see Service.

If you would like to help the g77 project, see Funding GNU Fortran, for information on helping financially, and see Projects, for information on helping in other ways.

If you're generally curious about the future of g77, see Projects. If you're curious about its past, see Contributors, and see Funding GNU Fortran.

To see a few of the questions maintainers of g77 have, and that you might be able to answer, see Open Questions.


Next: , Previous: Getting Started, Up: Top

3 What is GNU Fortran?

GNU Fortran, or g77, is designed initially as a free replacement for, or alternative to, the UNIX f77 command. (Similarly, gcc is designed as a replacement for the UNIX cc command.)

g77 also is designed to fit in well with the other fine GNU compilers and tools.

Sometimes these design goals conflict—in such cases, resolution often is made in favor of fitting in well with Project GNU. These cases are usually identified in the appropriate sections of this manual.

As compilers, g77, gcc, and f77 share the following characteristics:

How these actions are performed is generally under the control of the user. Using command-line options, the user can specify how persnickety the compiler is to be regarding the program (whether to diagnose questionable usage of the language), how much time to spend making the generated machine code run faster, and so on.

g77 consists of several components:

gcc is often thought of as “the C compiler” only, but it does more than that. Based on command-line options and the names given for files on the command line, gcc determines which actions to perform, including preprocessing, compiling (in a variety of possible languages), assembling, and linking.

For example, the command gcc foo.c drives the file foo.c through the preprocessor cpp, then the C compiler (internally named cc1), then the assembler (usually as), then the linker (ld), producing an executable program named a.out (on UNIX systems).

As another example, the command gcc foo.cc would do much the same as gcc foo.c, but instead of using the C compiler named cc1, gcc would use the C++ compiler (named cc1plus).

In a GNU Fortran installation, gcc recognizes Fortran source files by name just like it does C and C++ source files. It knows to use the Fortran compiler named f771, instead of cc1 or cc1plus, to compile Fortran files.

Non-Fortran-related operation of gcc is generally unaffected by installing the GNU Fortran version of gcc. However, without the installed version of gcc being the GNU Fortran version, gcc will not be able to compile and link Fortran programs—and since g77 uses gcc to do most of the actual work, neither will g77!

The g77 command is essentially just a front-end for the gcc command. Fortran users will normally use g77 instead of gcc, because g77 knows how to specify the libraries needed to link with Fortran programs (libg2c and lm). g77 can still compile and link programs and source files written in other languages, just like gcc.

The command g77 -v is a quick way to display lots of version information for the various programs used to compile a typical preprocessed Fortran source file—this produces much more output than gcc -v currently does. (If it produces an error message near the end of the output—diagnostics from the linker, usually ld—you might have an out-of-date libf2c that improperly handles complex arithmetic.) In the output of this command, the line beginning GNU Fortran Front End identifies the version number of GNU Fortran; immediately preceding that line is a line identifying the version of gcc with which that version of g77 was built.

The libf2c library is distributed with GNU Fortran for the convenience of its users, but is not part of GNU Fortran. It contains the procedures needed by Fortran programs while they are running.

For example, while code generated by g77 is likely to do additions, subtractions, and multiplications in line—in the actual compiled code—it is not likely to do trigonometric functions this way.

Instead, operations like trigonometric functions are compiled by the f771 compiler (invoked by g77 when compiling Fortran code) into machine code that, when run, calls on functions in libg2c, so libg2c must be linked with almost every useful program having any component compiled by GNU Fortran. (As mentioned above, the g77 command takes care of all this for you.)

The f771 program represents most of what is unique to GNU Fortran. While much of the libg2c component comes from the libf2c component of f2c, a free Fortran-to-C converter distributed by Bellcore (AT&T), plus libU77, provided by Dave Love, and the g77 command is just a small front-end to gcc, f771 is a combination of two rather large chunks of code.

One chunk is the so-called GNU Back End, or GBE, which knows how to generate fast code for a wide variety of processors. The same GBE is used by the C, C++, and Fortran compiler programs cc1, cc1plus, and f771, plus others. Often the GBE is referred to as the “gcc back end” or even just “gcc”—in this manual, the term GBE is used whenever the distinction is important.

The other chunk of f771 is the majority of what is unique about GNU Fortran—the code that knows how to interpret Fortran programs to determine what they are intending to do, and then communicate that knowledge to the GBE for actual compilation of those programs. This chunk is called the Fortran Front End (FFE). The cc1 and cc1plus programs have their own front ends, for the C and C++ languages, respectively. These fronts ends are responsible for diagnosing incorrect usage of their respective languages by the programs the process, and are responsible for most of the warnings about questionable constructs as well. (The GBE handles producing some warnings, like those concerning possible references to undefined variables.)

Because so much is shared among the compilers for various languages, much of the behavior and many of the user-selectable options for these compilers are similar. For example, diagnostics (error messages and warnings) are similar in appearance; command-line options like -Wall have generally similar effects; and the quality of generated code (in terms of speed and size) is roughly similar (since that work is done by the shared GBE).


Next: , Previous: What is GNU Fortran?, Up: Top

4 Compile Fortran, C, or Other Programs

A GNU Fortran installation includes a modified version of the gcc command.

In a non-Fortran installation, gcc recognizes C, C++, and Objective-C source files.

In a GNU Fortran installation, gcc also recognizes Fortran source files and accepts Fortran-specific command-line options, plus some command-line options that are designed to cater to Fortran users but apply to other languages as well.

See Programming Languages Supported by GCC (Using the GNU Compiler Collection (GCC)), for information on the way different languages are handled by the GCC compiler (gcc).

Also provided as part of GNU Fortran is the g77 command. The g77 command is designed to make compiling and linking Fortran programs somewhat easier than when using the gcc command for these tasks. It does this by analyzing the command line somewhat and changing it appropriately before submitting it to the gcc command.

Use the -v option with g77 to see what is going on—the first line of output is the invocation of the gcc command.


Next: , Previous: G77 and GCC, Up: Top

5 GNU Fortran Command Options

The g77 command supports all the options supported by the gcc command. See GCC Command Options (Using the GNU Compiler Collection (GCC)), for information on the non-Fortran-specific aspects of the gcc command (and, therefore, the g77 command).

All gcc and g77 options are accepted both by g77 and by gcc (as well as any other drivers built at the same time, such as g++), since adding g77 to the gcc distribution enables acceptance of g77 options by all of the relevant drivers.

In some cases, options have positive and negative forms; the negative form of -ffoo would be -fno-foo. This manual documents only one of these two forms, whichever one is not the default.


Next: , Up: Invoking G77

5.1 Option Summary

Here is a summary of all the options specific to GNU Fortran, grouped by type. Explanations are in the following sections.

Overall Options
See Options Controlling the Kind of Output.
          -fversion  -fset-g77-defaults  -fno-silent
     

Shorthand Options
See Shorthand Options.
          -ff66  -fno-f66  -ff77  -fno-f77  -fno-ugly
     

Fortran Language Options
See Options Controlling Fortran Dialect.
          -ffree-form  -fno-fixed-form  -ff90 
          -fvxt  -fdollar-ok  -fno-backslash 
          -fno-ugly-args  -fno-ugly-assign  -fno-ugly-assumed 
          -fugly-comma  -fugly-complex  -fugly-init  -fugly-logint 
          -fonetrip  -ftypeless-boz 
          -fintrin-case-initcap  -fintrin-case-upper 
          -fintrin-case-lower  -fintrin-case-any 
          -fmatch-case-initcap  -fmatch-case-upper 
          -fmatch-case-lower  -fmatch-case-any 
          -fsource-case-upper  -fsource-case-lower 
          -fsource-case-preserve 
          -fsymbol-case-initcap  -fsymbol-case-upper 
          -fsymbol-case-lower  -fsymbol-case-any 
          -fcase-strict-upper  -fcase-strict-lower 
          -fcase-initcap  -fcase-upper  -fcase-lower  -fcase-preserve 
          -ff2c-intrinsics-delete  -ff2c-intrinsics-hide 
          -ff2c-intrinsics-disable  -ff2c-intrinsics-enable 
          -fbadu77-intrinsics-delete  -fbadu77-intrinsics-hide 
          -fbadu77-intrinsics-disable  -fbadu77-intrinsics-enable 
          -ff90-intrinsics-delete  -ff90-intrinsics-hide 
          -ff90-intrinsics-disable  -ff90-intrinsics-enable 
          -fgnu-intrinsics-delete  -fgnu-intrinsics-hide 
          -fgnu-intrinsics-disable  -fgnu-intrinsics-enable 
          -fmil-intrinsics-delete  -fmil-intrinsics-hide 
          -fmil-intrinsics-disable  -fmil-intrinsics-enable 
          -funix-intrinsics-delete  -funix-intrinsics-hide 
          -funix-intrinsics-disable  -funix-intrinsics-enable 
          -fvxt-intrinsics-delete  -fvxt-intrinsics-hide 
          -fvxt-intrinsics-disable  -fvxt-intrinsics-enable 
          -ffixed-line-length-n  -ffixed-line-length-none
     

Warning Options
See Options to Request or Suppress Warnings.
          -fsyntax-only  -pedantic  -pedantic-errors  -fpedantic 
          -w  -Wno-globals  -Wimplicit  -Wunused  -Wuninitialized 
          -Wall  -Wsurprising 
          -Werror  -W
     

Debugging Options
See Options for Debugging Your Program or GCC.
          -g
     

Optimization Options
See Options that Control Optimization.
          -malign-double 
          -ffloat-store  -fforce-mem  -fforce-addr  -fno-inline 
          -ffast-math  -fstrength-reduce  -frerun-cse-after-loop 
          -funsafe-math-optimizations -ffinite-math-only -fno-trapping-math 
          -fexpensive-optimizations  -fdelayed-branch 
          -fschedule-insns  -fschedule-insn2  -fcaller-saves 
          -funroll-loops  -funroll-all-loops 
          -fno-move-all-movables  -fno-reduce-all-givs 
          -fno-rerun-loop-opt
     

Directory Options
See Options for Directory Search.
          -Idir  -I-
     

Code Generation Options
See Options for Code Generation Conventions.
          -fno-automatic  -finit-local-zero  -fno-f2c 
          -ff2c-library  -fno-underscoring  -fno-ident 
          -fpcc-struct-return  -freg-struct-return 
          -fshort-double  -fno-common  -fpack-struct 
          -fzeros  -fno-second-underscore 
          -femulate-complex 
          -falias-check  -fargument-alias 
          -fargument-noalias  -fno-argument-noalias-global 
          -fno-globals  -fflatten-arrays 
          -fbounds-check  -ffortran-bounds-check
     


Next: , Previous: Option Summary, Up: Invoking G77

5.2 Options Controlling the Kind of Output

Compilation can involve as many as four stages: preprocessing, code generation (often what is really meant by the term “compilation”), assembly, and linking, always in that order. The first three stages apply to an individual source file, and end by producing an object file; linking combines all the object files (those newly compiled, and those specified as input) into an executable file.

For any given input file, the file name suffix determines what kind of program is contained in the file—that is, the language in which the program is written is generally indicated by the suffix. Suffixes specific to GNU Fortran are listed below. See Options Controlling the Kind of Output (Using the GNU Compiler Collection (GCC)), for information on suffixes recognized by GCC.

file.f
file.for
file.FOR
Fortran source code that should not be preprocessed.

Such source code cannot contain any preprocessor directives, such as #include, #define, #if, and so on.

You can force .f files to be preprocessed by cpp by using -x f77-cpp-input. See LEX.


file.F
file.fpp
file.FPP
Fortran source code that must be preprocessed (by the C preprocessor cpp, which is part of GCC).

Note that preprocessing is not extended to the contents of files included by the INCLUDE directive—the #include preprocessor directive must be used instead.


file.r
Ratfor source code, which must be preprocessed by the ratfor command, which is available separately (as it is not yet part of the GNU Fortran distribution). A public domain version in C is at http://sepwww.stanford.edu/sep/prof/ratfor.shar.2.

UNIX users typically use the file.f and file.F nomenclature. Users of other operating systems, especially those that cannot distinguish upper-case letters from lower-case letters in their file names, typically use the file.for and file.fpp nomenclature.

Use of the preprocessor cpp allows use of C-like constructs such as #define and #include, but can lead to unexpected, even mistaken, results due to Fortran's source file format. It is recommended that use of the C preprocessor be limited to #include and, in conjunction with #define, only #if and related directives, thus avoiding in-line macro expansion entirely. This recommendation applies especially when using the traditional fixed source form. With free source form, fewer unexpected transformations are likely to happen, but use of constructs such as Hollerith and character constants can nevertheless present problems, especially when these are continued across multiple source lines. These problems result, primarily, from differences between the way such constants are interpreted by the C preprocessor and by a Fortran compiler.

Another example of a problem that results from using the C preprocessor is that a Fortran comment line that happens to contain any characters “interesting” to the C preprocessor, such as a backslash at the end of the line, is not recognized by the preprocessor as a comment line, so instead of being passed through “raw”, the line is edited according to the rules for the preprocessor. For example, the backslash at the end of the line is removed, along with the subsequent newline, resulting in the next line being effectively commented out—unfortunate if that line is a non-comment line of important code!

Note: The -traditional and -undef flags are supplied to cpp by default, to help avoid unpleasant surprises. See Options Controlling the Preprocessor (Using the GNU Compiler Collection (GCC)). This means that ANSI C preprocessor features (such as the # operator) aren't available, and only variables in the C reserved namespace (generally, names with a leading underscore) are liable to substitution by C predefines. Thus, if you want to do system-specific tests, use, for example, #ifdef __linux__ rather than #ifdef linux. Use the -v option to see exactly how the preprocessor is invoked.

Unfortunately, the -traditional flag will not avoid an error from anything that cpp sees as an unterminated C comment, such as:

     C Some Fortran compilers accept /* as starting
     C an inline comment.

See Trailing Comment.

The following options that affect overall processing are recognized by the g77 and gcc commands in a GNU Fortran installation:

-fversion
Ensure that the g77 version of the compiler phase is reported, if run, and, starting in egcs version 1.1, that internal consistency checks in the f771 program are run.

This option is supplied automatically when -v or --verbose is specified as a command-line option for g77 or gcc and when the resulting commands compile Fortran source files.

In GCC 3.1, this is changed back to the behavior gcc displays for .c files.


-fset-g77-defaults
Version info: This option was obsolete as of egcs version 1.1. The effect is instead achieved by the lang_init_options routine in gcc/gcc/f/com.c.

Set up whatever gcc options are to apply to Fortran compilations, and avoid running internal consistency checks that might take some time.

This option is supplied automatically when compiling Fortran code via the g77 or gcc command. The description of this option is provided so that users seeing it in the output of, say, g77 -v understand why it is there.

Also, developers who run f771 directly might want to specify it by hand to get the same defaults as they would running f771 via g77 or gcc However, such developers should, after linking a new f771 executable, invoke it without this option once, e.g. via ./f771 -quiet < /dev/null, to ensure that they have not introduced any internal inconsistencies (such as in the table of intrinsics) before proceeding—g77 will crash with a diagnostic if it detects an inconsistency.


-fno-silent
Print (to stderr) the names of the program units as they are compiled, in a form similar to that used by popular UNIX f77 implementations and f2c

See Options Controlling the Kind of Output (Using the GNU Compiler Collection (GCC)), for information on more options that control the overall operation of the gcc command (and, by extension, the g77 command).


Next: , Previous: Overall Options, Up: Invoking G77

5.3 Shorthand Options

The following options serve as “shorthand” for other options accepted by the compiler:

-fugly
Note: This option is no longer supported. The information, below, is provided to aid in the conversion of old scripts.

Specify that certain “ugly” constructs are to be quietly accepted. Same as:

          -fugly-args -fugly-assign -fugly-assumed
          -fugly-comma -fugly-complex -fugly-init
          -fugly-logint
     

These constructs are considered inappropriate to use in new or well-maintained portable Fortran code, but widely used in old code. See Distensions, for more information.


-fno-ugly
Specify that all “ugly” constructs are to be noisily rejected. Same as:
          -fno-ugly-args -fno-ugly-assign -fno-ugly-assumed
          -fno-ugly-comma -fno-ugly-complex -fno-ugly-init
          -fno-ugly-logint
     

See Distensions, for more information.


-ff66
Specify that the program is written in idiomatic FORTRAN 66. Same as -fonetrip -fugly-assumed.

The -fno-f66 option is the inverse of -ff66. As such, it is the same as -fno-onetrip -fno-ugly-assumed.

The meaning of this option is likely to be refined as future versions of g77 provide more compatibility with other existing and obsolete Fortran implementations.


-ff77
Specify that the program is written in idiomatic UNIX FORTRAN 77 and/or the dialect accepted by the f2c product. Same as -fbackslash -fno-typeless-boz.

The meaning of this option is likely to be refined as future versions of g77 provide more compatibility with other existing and obsolete Fortran implementations.


-fno-f77
The -fno-f77 option is not the inverse of -ff77. It specifies that the program is not written in idiomatic UNIX FORTRAN 77 or f2c but in a more widely portable dialect. -fno-f77 is the same as -fno-backslash.

The meaning of this option is likely to be refined as future versions of g77 provide more compatibility with other existing and obsolete Fortran implementations.


Next: , Previous: Shorthand Options, Up: Invoking G77

5.4 Options Controlling Fortran Dialect

The following options control the dialect of Fortran that the compiler accepts:

-ffree-form
-fno-fixed-form
Specify that the source file is written in free form (introduced in Fortran 90) instead of the more-traditional fixed form.


-ff90
Allow certain Fortran-90 constructs.

This option controls whether certain Fortran 90 constructs are recognized. (Other Fortran 90 constructs might or might not be recognized depending on other options such as -fvxt, -ff90-intrinsics-enable, and the current level of support for Fortran 90.)

See Fortran 90, for more information.


-fvxt
Specify the treatment of certain constructs that have different meanings depending on whether the code is written in GNU Fortran (based on FORTRAN 77 and akin to Fortran 90) or VXT Fortran (more like VAX FORTRAN).

The default is -fno-vxt. -fvxt specifies that the VXT Fortran interpretations for those constructs are to be chosen.

See VXT Fortran, for more information.


-fdollar-ok
Allow $ as a valid character in a symbol name.


-fno-backslash
Specify that \ is not to be specially interpreted in character and Hollerith constants a la C and many UNIX Fortran compilers.

For example, with -fbackslash in effect, A\nB specifies three characters, with the second one being newline. With -fno-backslash, it specifies four characters, A, \, n, and B.

Note that g77 implements a fairly general form of backslash processing that is incompatible with the narrower forms supported by some other compilers. For example, 'A\003B' is a three-character string in g77 whereas other compilers that support backslash might not support the three-octal-digit form, and thus treat that string as longer than three characters.

See Backslash in Constants, for information on why -fbackslash is the default instead of -fno-backslash.


-fno-ugly-args
Disallow passing Hollerith and typeless constants as actual arguments (for example, CALL FOO(4HABCD)).

See Ugly Implicit Argument Conversion, for more information.


-fugly-assign
Use the same storage for a given variable regardless of whether it is used to hold an assigned-statement label (as in ASSIGN 10 TO I) or used to hold numeric data (as in I = 3).

See Ugly Assigned Labels, for more information.


-fugly-assumed
Assume any dummy array with a final dimension specified as 1 is really an assumed-size array, as if * had been specified for the final dimension instead of 1.

For example, DIMENSION X(1) is treated as if it had read DIMENSION X(*).

See Ugly Assumed-Size Arrays, for more information.


-fugly-comma
In an external-procedure invocation, treat a trailing comma in the argument list as specification of a trailing null argument, and treat an empty argument list as specification of a single null argument.

For example, CALL FOO(,) is treated as CALL FOO(%VAL(0), %VAL(0)). That is, two null arguments are specified by the procedure call when -fugly-comma is in force. And F = FUNC() is treated as F = FUNC(%VAL(0)).

The default behavior, -fno-ugly-comma, is to ignore a single trailing comma in an argument list. So, by default, CALL FOO(X,) is treated exactly the same as CALL FOO(X).

See Ugly Null Arguments, for more information.


-fugly-complex
Do not complain about REAL(expr) or AIMAG(expr) when expr is a COMPLEX type other than COMPLEX(KIND=1)—usually this is used to permit COMPLEX(KIND=2) (DOUBLE COMPLEX) operands.

The -ff90 option controls the interpretation of this construct.

See Ugly Complex Part Extraction, for more information.


-fno-ugly-init
Disallow use of Hollerith and typeless constants as initial values (in PARAMETER and DATA statements), and use of character constants to initialize numeric types and vice versa.

For example, DATA I/'F'/, CHRVAR/65/, J/4HABCD/ is disallowed by -fno-ugly-init.

See Ugly Conversion of Initializers, for more information.


-fugly-logint
Treat INTEGER and LOGICAL variables and expressions as potential stand-ins for each other.

For example, automatic conversion between INTEGER and LOGICAL is enabled, for many contexts, via this option.

See Ugly Integer Conversions, for more information.


-fonetrip
Executable iterative DO loops are to be executed at least once each time they are reached.

ANSI FORTRAN 77 and more recent versions of the Fortran standard specify that the body of an iterative DO loop is not executed if the number of iterations calculated from the parameters of the loop is less than 1. (For example, DO 10 I = 1, 0.) Such a loop is called a zero-trip loop.

Prior to ANSI FORTRAN 77, many compilers implemented DO loops such that the body of a loop would be executed at least once, even if the iteration count was zero. Fortran code written assuming this behavior is said to require one-trip loops. For example, some code written to the FORTRAN 66 standard expects this behavior from its DO loops, although that standard did not specify this behavior.

The -fonetrip option specifies that the source file(s) being compiled require one-trip loops.

This option affects only those loops specified by the (iterative) DO statement and by implied-DO lists in I/O statements. Loops specified by implied-DO lists in DATA and specification (non-executable) statements are not affected.


-ftypeless-boz
Specifies that prefix-radix non-decimal constants, such as Z'ABCD', are typeless instead of INTEGER(KIND=1).

You can test for yourself whether a particular compiler treats the prefix form as INTEGER(KIND=1) or typeless by running the following program:

          EQUIVALENCE (I, R)
          R = Z'ABCD1234'
          J = Z'ABCD1234'
          IF (J .EQ. I) PRINT *, 'Prefix form is TYPELESS'
          IF (J .NE. I) PRINT *, 'Prefix form is INTEGER'
          END
     

Reports indicate that many compilers process this form as INTEGER(KIND=1), though a few as typeless, and at least one based on a command-line option specifying some kind of compatibility.


-fintrin-case-initcap

-fintrin-case-upper

-fintrin-case-lower

-fintrin-case-any
Specify expected case for intrinsic names. -fintrin-case-lower is the default.


-fmatch-case-initcap

-fmatch-case-upper

-fmatch-case-lower

-fmatch-case-any
Specify expected case for keywords. -fmatch-case-lower is the default.


-fsource-case-upper

-fsource-case-lower

-fsource-case-preserve
Specify whether source text other than character and Hollerith constants is to be translated to uppercase, to lowercase, or preserved as is. -fsource-case-lower is the default.


-fsymbol-case-initcap

-fsymbol-case-upper

-fsymbol-case-lower

-fsymbol-case-any
Specify valid cases for user-defined symbol names. -fsymbol-case-any is the default.


-fcase-strict-upper
Same as -fintrin-case-upper -fmatch-case-upper -fsource-case-preserve -fsymbol-case-upper. (Requires all pertinent source to be in uppercase.)


-fcase-strict-lower
Same as -fintrin-case-lower -fmatch-case-lower -fsource-case-preserve -fsymbol-case-lower. (Requires all pertinent source to be in lowercase.)


-fcase-initcap
Same as -fintrin-case-initcap -fmatch-case-initcap -fsource-case-preserve -fsymbol-case-initcap. (Requires all pertinent source to be in initial capitals, as in Print *,SqRt(Value).)


-fcase-upper
Same as -fintrin-case-any -fmatch-case-any -fsource-case-upper -fsymbol-case-any. (Maps all pertinent source to uppercase.)


-fcase-lower
Same as -fintrin-case-any -fmatch-case-any -fsource-case-lower -fsymbol-case-any. (Maps all pertinent source to lowercase.)


-fcase-preserve
Same as -fintrin-case-any -fmatch-case-any -fsource-case-preserve -fsymbol-case-any. (Preserves all case in user-defined symbols, while allowing any-case matching of intrinsics and keywords. For example, call Foo(i,I) would pass two different variables named i and I to a procedure named Foo.)


-fbadu77-intrinsics-delete

-fbadu77-intrinsics-hide

-fbadu77-intrinsics-disable

-fbadu77-intrinsics-enable
Specify status of UNIX intrinsics having inappropriate forms. -fbadu77-intrinsics-enable is the default. See Intrinsic Groups.


-ff2c-intrinsics-delete

-ff2c-intrinsics-hide

-ff2c-intrinsics-disable

-ff2c-intrinsics-enable
Specify status of f2c-specific intrinsics. -ff2c-intrinsics-enable is the default. See Intrinsic Groups.


-ff90-intrinsics-delete

-ff90-intrinsics-hide

-ff90-intrinsics-disable

-ff90-intrinsics-enable
Specify status of F90-specific intrinsics. -ff90-intrinsics-enable is the default. See Intrinsic Groups.


-fgnu-intrinsics-delete

-fgnu-intrinsics-hide

-fgnu-intrinsics-disable

-fgnu-intrinsics-enable
Specify status of Digital's COMPLEX-related intrinsics. -fgnu-intrinsics-enable is the default. See Intrinsic Groups.


-fmil-intrinsics-delete

-fmil-intrinsics-hide

-fmil-intrinsics-disable

-fmil-intrinsics-enable
Specify status of MIL-STD-1753-specific intrinsics. -fmil-intrinsics-enable is the default. See Intrinsic Groups.


-funix-intrinsics-delete

-funix-intrinsics-hide

-funix-intrinsics-disable

-funix-intrinsics-enable
Specify status of UNIX intrinsics. -funix-intrinsics-enable is the default. See Intrinsic Groups.


-fvxt-intrinsics-delete

-fvxt-intrinsics-hide

-fvxt-intrinsics-disable

-fvxt-intrinsics-enable
Specify status of VXT intrinsics. -fvxt-intrinsics-enable is the default. See Intrinsic Groups.


-ffixed-line-length-n
Set column after which characters are ignored in typical fixed-form lines in the source file, and through which spaces are assumed (as if padded to that length) after the ends of short fixed-form lines.

Popular values for n include 72 (the standard and the default), 80 (card image), and 132 (corresponds to “extended-source” options in some popular compilers). n may be none, meaning that the entire line is meaningful and that continued character constants never have implicit spaces appended to them to fill out the line. -ffixed-line-length-0 means the same thing as -ffixed-line-length-none.

See Source Form, for more information.


Next: , Previous: Fortran Dialect Options, Up: Invoking G77

5.5 Options to Request or Suppress Warnings

Warnings are diagnostic messages that report constructions which are not inherently erroneous but which are risky or suggest there might have been an error.

You can request many specific warnings with options beginning -W, for example -Wimplicit to request warnings on implicit declarations. Each of these specific warning options also has a negative form beginning -Wno- to turn off warnings; for example, -Wno-implicit. This manual lists only one of the two forms, whichever is not the default.

These options control the amount and kinds of warnings produced by GNU Fortran:

-fsyntax-only
Check the code for syntax errors, but don't do anything beyond that.


-pedantic
Issue warnings for uses of extensions to ANSI FORTRAN 77. -pedantic also applies to C-language constructs where they occur in GNU Fortran source files, such as use of \e in a character constant within a directive like #include.

Valid ANSI FORTRAN 77 programs should compile properly with or without this option. However, without this option, certain GNU extensions and traditional Fortran features are supported as well. With this option, many of them are rejected.

Some users try to use -pedantic to check programs for strict ANSI conformance. They soon find that it does not do quite what they want—it finds some non-ANSI practices, but not all. However, improvements to g77 in this area are welcome.


-pedantic-errors
Like -pedantic, except that errors are produced rather than warnings.


-fpedantic
Like -pedantic, but applies only to Fortran constructs.


-w
Inhibit all warning messages.


-Wno-globals
Inhibit warnings about use of a name as both a global name (a subroutine, function, or block data program unit, or a common block) and implicitly as the name of an intrinsic in a source file.

Also inhibit warnings about inconsistent invocations and/or definitions of global procedures (function and subroutines). Such inconsistencies include different numbers of arguments and different types of arguments.


-Wimplicit
Warn whenever a variable, array, or function is implicitly declared. Has an effect similar to using the IMPLICIT NONE statement in every program unit. (Some Fortran compilers provide this feature by an option named -u or /WARNINGS=DECLARATIONS.)


-Wunused
Warn whenever a variable is unused aside from its declaration.


-Wuninitialized
Warn whenever an automatic variable is used without first being initialized.

These warnings are possible only in optimizing compilation, because they require data-flow information that is computed only when optimizing. If you don't specify -O, you simply won't get these warnings.

These warnings occur only for variables that are candidates for register allocation. Therefore, they do not occur for a variable whose address is taken, or whose size is other than 1, 2, 4 or 8 bytes. Also, they do not occur for arrays, even when they are in registers.

Note that there might be no warning about a variable that is used only to compute a value that itself is never used, because such computations may be deleted by data-flow analysis before the warnings are printed.

These warnings are made optional because GNU Fortran is not smart enough to see all the reasons why the code might be correct despite appearing to have an error. Here is one example of how this can happen:

          SUBROUTINE DISPAT(J)
          IF (J.EQ.1) I=1
          IF (J.EQ.2) I=4
          IF (J.EQ.3) I=5
          CALL FOO(I)
          END
     

If the value of J is always 1, 2 or 3, then I is always initialized, but GNU Fortran doesn't know this. Here is another common case:

          SUBROUTINE MAYBE(FLAG)
          LOGICAL FLAG
          IF (FLAG) VALUE = 9.4
          ...
          IF (FLAG) PRINT *, VALUE
          END
     

This has no bug because VALUE is used only if it is set.


-Wall
The -Wunused and -Wuninitialized options combined. These are all the options which pertain to usage that we recommend avoiding and that we believe is easy to avoid. (As more warnings are added to g77 some might be added to the list enabled by -Wall.)

The remaining -W... options are not implied by -Wall because they warn about constructions that we consider reasonable to use, on occasion, in clean programs.

-Wsurprising
Warn about “suspicious” constructs that are interpreted by the compiler in a way that might well be surprising to someone reading the code. These differences can result in subtle, compiler-dependent (even machine-dependent) behavioral differences. The constructs warned about include:


-Werror
Make all warnings into errors.


-W
Turns on “extra warnings” and, if optimization is specified via -O, the -Wuninitialized option. (This might change in future versions of g77

“Extra warnings” are issued for:

See Options to Request or Suppress Warnings (Using the GNU Compiler Collection (GCC)), for information on more options offered by the GBE shared by g77 gcc and other GNU compilers.

Some of these have no effect when compiling programs written in Fortran:

-Wcomment

-Wformat

-Wparentheses

-Wswitch

-Wswitch-default

-Wswitch-enum

-Wtraditional

-Wshadow

-Wid-clash-len

-Wlarger-than-len

-Wconversion

-Waggregate-return

-Wredundant-decls
These options all could have some relevant meaning for GNU Fortran programs, but are not yet supported.


Next: , Previous: Warning Options, Up: Invoking G77

5.6 Options for Debugging Your Program or GNU Fortran

GNU Fortran has various special options that are used for debugging either your program or g77

-g
Produce debugging information in the operating system's native format (stabs, COFF, XCOFF, or DWARF). GDB can work with this debugging information.

A sample debugging session looks like this (note the use of the breakpoint):

          $ cat gdb.f
                PROGRAM PROG
                DIMENSION A(10)
                DATA A /1.,2.,3.,4.,5.,6.,7.,8.,9.,10./
                A(5) = 4.
                PRINT*,A
                END
          $ g77 -g -O gdb.f
          $ gdb a.out
          ...
          (gdb) break MAIN__
          Breakpoint 1 at 0x8048e96: file gdb.f, line 4.
          (gdb) run
          Starting program: /home/toon/g77-bugs/./a.out
          Breakpoint 1, MAIN__ () at gdb.f:4
          4             A(5) = 4.
          Current language:  auto; currently fortran
          (gdb) print a(5)
          $1 = 5
          (gdb) step
          5             PRINT*,A
          (gdb) print a(5)
          $2 = 4
          ...
     

One could also add the setting of the breakpoint and the first run command to the file .gdbinit in the current directory, to simplify the debugging session.

See Options for Debugging Your Program or GCC (Using the GNU Compiler Collection (GCC)), for more information on debugging options.


Next: , Previous: Debugging Options, Up: Invoking G77

5.7 Options That Control Optimization

Most Fortran users will want to use no optimization when developing and testing programs, and use -O or -O2 when compiling programs for late-cycle testing and for production use. However, note that certain diagnostics—such as for uninitialized variables—depend on the flow analysis done by -O, i.e. you must use -O or -O2 to get such diagnostics.

The following flags have particular applicability when compiling Fortran programs:

-malign-double
(Intel x86 architecture only.)

Noticeably improves performance of g77 programs making heavy use of REAL(KIND=2) (DOUBLE PRECISION) data on some systems. In particular, systems using Pentium, Pentium Pro, 586, and 686 implementations of the i386 architecture execute programs faster when REAL(KIND=2) (DOUBLE PRECISION) data are aligned on 64-bit boundaries in memory.

This option can, at least, make benchmark results more consistent across various system configurations, versions of the program, and data sets.

Note: The warning in the gcc documentation about this option does not apply, generally speaking, to Fortran code compiled by g77

See Aligned Data, for more information on alignment issues.

Also also note: The negative form of -malign-double is -mno-align-double, not -benign-double.


-ffloat-store
Might help a Fortran program that depends on exact IEEE conformance on some machines, but might slow down a program that doesn't.

This option is effective when the floating-point unit is set to work in IEEE 854 `extended precision'—as it typically is on x86 and m68k GNU systems—rather than IEEE 754 double precision. -ffloat-store tries to remove the extra precision by spilling data from floating-point registers into memory and this typically involves a big performance hit. However, it doesn't affect intermediate results, so that it is only partially effective. `Excess precision' is avoided in code like:

          a = b + c
          d = a * e
     

but not in code like:

                d = (b + c) * e
     

For another, potentially better, way of controlling the precision, see Floating-point precision.


-fforce-mem

-fforce-addr
Might improve optimization of loops.


-fno-inline
Don't compile statement functions inline. Might reduce the size of a program unit—which might be at expense of some speed (though it should compile faster). Note that if you are not optimizing, no functions can be expanded inline.


-ffast-math
Might allow some programs designed to not be too dependent on IEEE behavior for floating-point to run faster, or die trying. Sets -funsafe-math-optimizations, -ffinite-math-only, and -fno-trapping-math.


-funsafe-math-optimizations
Allow optimizations that may be give incorrect results for certain IEEE inputs.


-ffinite-math-only
Allow optimizations for floating-point arithmetic that assume that arguments and results are not NaNs or +-Infs.

This option should never be turned on by any -O option since it can result in incorrect output for programs which depend on an exact implementation of IEEE or ISO rules/specifications.

The default is -fno-finite-math-only.


-fno-trapping-math
Allow the compiler to assume that floating-point arithmetic will not generate traps on any inputs. This is useful, for example, when running a program using IEEE "non-stop" floating-point arithmetic.


-fstrength-reduce
Might make some loops run faster.


-frerun-cse-after-loop

-fexpensive-optimizations

-fdelayed-branch

-fschedule-insns

-fschedule-insns2

-fcaller-saves
Might improve performance on some code.


-funroll-loops
Typically improves performance on code using iterative DO loops by unrolling them and is probably generally appropriate for Fortran, though it is not turned on at any optimization level. Note that outer loop unrolling isn't done specifically; decisions about whether to unroll a loop are made on the basis of its instruction count.

Also, no `loop discovery'1 is done, so only loops written with DO benefit from loop optimizations, including—but not limited to—unrolling. Loops written with IF and GOTO are not currently recognized as such. This option unrolls only iterative DO loops, not DO WHILE loops.


-funroll-all-loops
Probably improves performance on code using DO WHILE loops by unrolling them in addition to iterative DO loops. In the absence of DO WHILE, this option is equivalent to -funroll-loops but possibly slower.
-fno-move-all-movables

-fno-reduce-all-givs

-fno-rerun-loop-opt
In general, the optimizations enabled with these options will lead to faster code being generated by GNU Fortran; hence they are enabled by default when issuing the g77 command.

-fmove-all-movables and -freduce-all-givs will enable loop optimization to move all loop-invariant index computations in nested loops over multi-rank array dummy arguments out of these loops.

-frerun-loop-opt will move offset calculations resulting from the fact that Fortran arrays by default have a lower bound of 1 out of the loops.

These three options are intended to be removed someday, once loop optimization is sufficiently advanced to perform all those transformations without help from these options.

See Options That Control Optimization (Using the GNU Compiler Collection (GCC)), for more information on options to optimize the generated machine code.


Next: , Previous: Optimize Options, Up: Invoking G77

5.8 Options Controlling the Preprocessor

These options control the C preprocessor, which is run on each C source file before actual compilation.

See Options Controlling the Preprocessor (Using the GNU Compiler Collection (GCC)), for information on C preprocessor options.

Some of these options also affect how g77 processes the INCLUDE directive. Since this directive is processed even when preprocessing is not requested, it is not described in this section. See Options for Directory Search, for information on how g77 processes the INCLUDE directive.

However, the INCLUDE directive does not apply preprocessing to the contents of the included file itself.

Therefore, any file that contains preprocessor directives (such as #include, #define, and #if) must be included via the #include directive, not via the INCLUDE directive. Therefore, any file containing preprocessor directives, if included, is necessarily included by a file that itself contains preprocessor directives.


Next: , Previous: Preprocessor Options, Up: Invoking G77

5.9 Options for Directory Search

These options affect how the cpp preprocessor searches for files specified via the #include directive. Therefore, when compiling Fortran programs, they are meaningful when the preprocessor is used.

Some of these options also affect how g77 searches for files specified via the INCLUDE directive, although files included by that directive are not, themselves, preprocessed. These options are:

-I-

-Idir
These affect interpretation of the INCLUDE directive (as well as of the #include directive of the cpp preprocessor).

Note that -Idir must be specified without any spaces between -I and the directory name—that is, -Ifoo/bar is valid, but -I foo/bar is rejected by the g77 compiler (though the preprocessor supports the latter form). Also note that the general behavior of -I and INCLUDE is pretty much the same as of -I with #include in the cpp preprocessor, with regard to looking for header.gcc files and other such things.

See Options for Directory Search (Using the GNU Compiler Collection (GCC)), for information on the -I option.


Next: , Previous: Directory Options, Up: Invoking G77

5.10 Options for Code Generation Conventions

These machine-independent options control the interface conventions used in code generation.

Most of them have both positive and negative forms; the negative form of -ffoo would be -fno-foo. In the table below, only one of the forms is listed—the one which is not the default. You can figure out the other form by either removing no- or adding it.

-fno-automatic
Treat each program unit as if the SAVE statement was specified for every local variable and array referenced in it. Does not affect common blocks. (Some Fortran compilers provide this option under the name -static.)


-finit-local-zero
Specify that variables and arrays that are local to a program unit (not in a common block and not passed as an argument) are to be initialized to binary zeros.

Since there is a run-time penalty for initialization of variables that are not given the SAVE attribute, it might be a good idea to also use -fno-automatic with -finit-local-zero.


-fno-f2c
Do not generate code designed to be compatible with code generated by f2c use the GNU calling conventions instead.

The f2c calling conventions require functions that return type REAL(KIND=1) to actually return the C type double, and functions that return type COMPLEX to return the values via an extra argument in the calling sequence that points to where to store the return value. Under the GNU calling conventions, such functions simply return their results as they would in GNU C—REAL(KIND=1) functions return the C type float, and COMPLEX functions return the GNU C type complex (or its struct equivalent).

This does not affect the generation of code that interfaces with the libg2c library.

However, because the libg2c library uses f2c calling conventions, g77 rejects attempts to pass intrinsics implemented by routines in this library as actual arguments when -fno-f2c is used, to avoid bugs when they are actually called by code expecting the GNU calling conventions to work.

For example, INTRINSIC ABS;CALL FOO(ABS) is rejected when -fno-f2c is in force. (Future versions of the g77 run-time library might offer routines that provide GNU-callable versions of the routines that implement the f2c intrinsics that may be passed as actual arguments, so that valid programs need not be rejected when -fno-f2c is used.)

Caution: If -fno-f2c is used when compiling any source file used in a program, it must be used when compiling all Fortran source files used in that program.


-ff2c-library
Specify that use of libg2c (or the original libf2c) is required. This is the default for the current version of g77

Currently it is not valid to specify -fno-f2c-library. This option is provided so users can specify it in shell scripts that build programs and libraries that require the libf2c library, even when being compiled by future versions of g77 that might otherwise default to generating code for an incompatible library.


-fno-underscoring
Do not transform names of entities specified in the Fortran source file by appending underscores to them.

With -funderscoring in effect, g77 appends two underscores to names with underscores and one underscore to external names with no underscores. (g77 also appends two underscores to internal names with underscores to avoid naming collisions with external names. The -fno-second-underscore option disables appending of the second underscore in all cases.)

This is done to ensure compatibility with code produced by many UNIX Fortran compilers, including f2c which perform the same transformations.

Use of -fno-underscoring is not recommended unless you are experimenting with issues such as integration of (GNU) Fortran into existing system environments (vis-a-vis existing libraries, tools, and so on).

For example, with -funderscoring, and assuming other defaults like -fcase-lower and that j() and max_count() are external functions while my_var and lvar are local variables, a statement like

          I = J() + MAX_COUNT (MY_VAR, LVAR)
     

is implemented as something akin to:

          i = j_() + max_count__(&my_var__, &lvar);
     

With -fno-underscoring, the same statement is implemented as:

          i = j() + max_count(&my_var, &lvar);
     

Use of -fno-underscoring allows direct specification of user-defined names while debugging and when interfacing g77 code with other languages.

Note that just because the names match does not mean that the interface implemented by g77 for an external name matches the interface implemented by some other language for that same name. That is, getting code produced by g77 to link to code produced by some other compiler using this or any other method can be only a small part of the overall solution—getting the code generated by both compilers to agree on issues other than naming can require significant effort, and, unlike naming disagreements, linkers normally cannot detect disagreements in these other areas.

Also, note that with -fno-underscoring, the lack of appended underscores introduces the very real possibility that a user-defined external name will conflict with a name in a system library, which could make finding unresolved-reference bugs quite difficult in some cases—they might occur at program run time, and show up only as buggy behavior at run time.

In future versions of g77 we hope to improve naming and linking issues so that debugging always involves using the names as they appear in the source, even if the names as seen by the linker are mangled to prevent accidental linking between procedures with incompatible interfaces.


-fno-second-underscore
Do not append a second underscore to names of entities specified in the Fortran source file.

This option has no effect if -fno-underscoring is in effect.

Otherwise, with this option, an external name such as MAX_COUNT is implemented as a reference to the link-time external symbol max_count_, instead of max_count__.


-fno-ident
Ignore the #ident directive.


-fzeros
Treat initial values of zero as if they were any other value.

As of version 0.5.18, g77 normally treats DATA and other statements that are used to specify initial values of zero for variables and arrays as if no values were actually specified, in the sense that no diagnostics regarding multiple initializations are produced.

This is done to speed up compiling of programs that initialize large arrays to zeros.

Use -fzeros to revert to the simpler, slower behavior that can catch multiple initializations by keeping track of all initializations, zero or otherwise.

Caution: Future versions of g77 might disregard this option (and its negative form, the default) or interpret it somewhat differently. The interpretation changes will affect only non-standard programs; standard-conforming programs should not be affected.


-femulate-complex
Implement COMPLEX arithmetic via emulation, instead of using the facilities of the gcc back end that provide direct support of complex arithmetic.

(gcc had some bugs in its back-end support for complex arithmetic, due primarily to the support not being completed as of version 2.8.1 and egcs 1.1.2.)

Use -femulate-complex if you suspect code-generation bugs, or experience compiler crashes, that might result from g77 using the COMPLEX support in the gcc back end. If using that option fixes the bugs or crashes you are seeing, that indicates a likely g77 bugs (though, all compiler crashes are considered bugs), so, please report it. (Note that the known bugs, now believed fixed, produced compiler crashes rather than causing the generation of incorrect code.)

Use of this option should not affect how Fortran code compiled by g77 works in terms of its interfaces to other code, e.g. that compiled by f2c

As of GCC version 3.0, this option is not necessary anymore.

Caution: Future versions of g77 might ignore both forms of this option.


-falias-check
-fargument-alias
-fargument-noalias
-fno-argument-noalias-global
Version info: These options are not supported by versions of g77 based on gcc version 2.8.

These options specify to what degree aliasing (overlap) is permitted between arguments (passed as pointers) and COMMON (external, or public) storage.

The default for Fortran code, as mandated by the FORTRAN 77 and Fortran 90 standards, is -fargument-noalias-global. The default for code written in the C language family is -fargument-alias.

Note that, on some systems, compiling with -fforce-addr in effect can produce more optimal code when the default aliasing options are in effect (and when optimization is enabled).

See Aliasing Assumed To Work, for detailed information on the implications of compiling Fortran code that depends on the ability to alias dummy arguments.


-fno-globals
Disable diagnostics about inter-procedural analysis problems, such as disagreements about the type of a function or a procedure's argument, that might cause a compiler crash when attempting to inline a reference to a procedure within a program unit. (The diagnostics themselves are still produced, but as warnings, unless -Wno-globals is specified, in which case no relevant diagnostics are produced.)

Further, this option disables such inlining, to avoid compiler crashes resulting from incorrect code that would otherwise be diagnosed.

As such, this option might be quite useful when compiling existing, “working” code that happens to have a few bugs that do not generally show themselves, but which g77 diagnoses.

Use of this option therefore has the effect of instructing g77 to behave more like it did up through version 0.5.19.1, when it paid little or no attention to disagreements between program units about a procedure's type and argument information, and when it performed no inlining of procedures (except statement functions).

Without this option, g77 defaults to performing the potentially inlining procedures as it started doing in version 0.5.20, but as of version 0.5.21, it also diagnoses disagreements that might cause such inlining to crash the compiler as (fatal) errors, and warns about similar disagreements that are currently believed to not likely to result in the compiler later crashing or producing incorrect code.


-fflatten-arrays
Use back end's C-like constructs (pointer plus offset) instead of its ARRAY_REF construct to handle all array references.

Note: This option is not supported. It is intended for use only by g77 developers, to evaluate code-generation issues. It might be removed at any time.


-fbounds-check
-ffortran-bounds-check
Enable generation of run-time checks for array subscripts and substring start and end points against the (locally) declared minimum and maximum values.

The current implementation uses the libf2c library routine s_rnge to print the diagnostic.

However, whereas f2c generates a single check per reference for a multi-dimensional array, of the computed offset against the valid offset range (0 through the size of the array), g77 generates a single check per subscript expression. This catches some cases of potential bugs that f2c does not, such as references to below the beginning of an assumed-size array.

g77 also generates checks for CHARACTER substring references, something f2c currently does not do.

Use the new -ffortran-bounds-check option to specify bounds-checking for only the Fortran code you are compiling, not necessarily for code written in other languages.

Note: To provide more detailed information on the offending subscript, g77 provides the libg2c run-time library routine s_rnge with somewhat differently-formatted information. Here's a sample diagnostic:

          Subscript out of range on file line 4, procedure rnge.f/bf.
          Attempt to access the -6-th element of variable b[subscript-2-of-2].
          Aborted
     

The above message indicates that the offending source line is line 4 of the file rnge.f, within the program unit (or statement function) named bf. The offended array is named b. The offended array dimension is the second for a two-dimensional array, and the offending, computed subscript expression was -6.

For a CHARACTER substring reference, the second line has this appearance:

          Attempt to access the 11-th element of variable a[start-substring].
     

This indicates that the offended CHARACTER variable or array is named a, the offended substring position is the starting (leftmost) position, and the offending substring expression is 11.

(Though the verbage of s_rnge is not ideal for the purpose of the g77 compiler, the above information should provide adequate diagnostic abilities to it users.)

See Options for Code Generation Conventions (Using the GNU Compiler Collection (GCC)), for information on more options offered by the GBE shared by g77 gcc and other GNU compilers.

Some of these do not work when compiling programs written in Fortran:

-fpcc-struct-return

-freg-struct-return
You should not use these except strictly the same way as you used them to build the version of libg2c with which you will be linking all code compiled by g77 with the same option.


-fshort-double
This probably either has no effect on Fortran programs, or makes them act loopy.


-fno-common
Do not use this when compiling Fortran programs, or there will be Trouble.


-fpack-struct
This probably will break any calls to the libg2c library, at the very least, even if it is built with the same option.


Previous: Code Gen Options, Up: Invoking G77

5.11 Environment Variables Affecting GNU Fortran

GNU Fortran currently does not make use of any environment variables to control its operation above and beyond those that affect the operation of gcc.

See Environment Variables Affecting GCC (Using the GNU Compiler Collection (GCC)), for information on environment variables.


Next: , Previous: Invoking G77, Up: Top

6 News About GNU Fortran

GCC 3.4.x is the last edition of GCC to contain g77 - from GCC 4.0 onwards, use gfortran

Changes made to recent versions of GNU Fortran are listed below, with the most recent version first.

The changes are generally listed in order:

  1. Code-generation and run-time-library bug-fixes
  2. Compiler and run-time-library crashes involving valid code that have been fixed
  3. New features
  4. Fixes and enhancements to existing features
  5. New diagnostics
  6. Internal improvements
  7. Miscellany

This order is not strict—for example, some items involve a combination of these elements.

Note that two variants of g77 are tracked below. The egcs variant is described vis-a-vis previous versions of egcs and/or an official FSF version, as appropriate. Note that all such variants are obsolete as of July 1999 - the information is retained here only for its historical value.

Therefore, egcs versions sometimes have multiple listings to help clarify how they differ from other versions, though this can make getting a complete picture of what a particular egcs version contains somewhat more difficult.

For information on bugs in the GCC-3.4.4 version of g77, see Known Bugs In GNU Fortran.

The following information was last updated on 2004-12-29:

In GCC 3.4 versus GCC 3.3:

In GCC 3.3 versus GCC 3.2:

In GCC 3.2 versus GCC 3.1:

In GCC 3.1 (formerly known as g77-0.5.27) versus GCC 3.0:

In 0.5.26, GCC 3.0 versus GCC 2.95:

In 0.5.25, GCC 2.95 (EGCS 1.2) versus EGCS 1.1.2:

In 0.5.24 versus 0.5.23:

There is no g77 version 0.5.24 at this time, or planned. 0.5.24 is the version number designated for bug fixes and, perhaps, some new features added, to 0.5.23. Version 0.5.23 requires gcc 2.8.1, as 0.5.24 was planned to require.

Due to EGCS becoming GCC (which is now an acronym for “GNU Compiler Collection”), and EGCS 1.2 becoming officially designated GCC 2.95, there seems to be no need for an actual 0.5.24 release.

To reduce the confusion already resulting from use of 0.5.24 to designate g77 versions within EGCS versions 1.0 and 1.1, as well as in versions of g77 documentation and notices during that period, “mainline” g77 version numbering resumes at 0.5.25 with GCC 2.95 (EGCS 1.2), skipping over 0.5.24 as a placeholder version number.

To repeat, there is no g77 0.5.24, but there is now a 0.5.25. Please remain calm and return to your keypunch units.

In EGCS 1.1.2 versus EGCS 1.1.1:

In EGCS 1.1.1 versus EGCS 1.1:

In EGCS 1.1 versus EGCS 1.0.3:

In EGCS 1.1 versus g77 0.5.23:

In 0.5.23 versus 0.5.22:

In 0.5.22 versus 0.5.21:

In EGCS 1.0.2 versus EGCS 1.0.1:

In EGCS 1.0.1 versus EGCS 1.0:

In EGCS 1.0 versus g77 0.5.21:

In 0.5.21:

In 0.5.20:

In previous versions:

Information on previous versions is archived in gcc/gcc/f/news.texi following the test of the DOC-OLDNEWS macro.


Next: , Previous: News, Up: Top

7 User-visible Changes

This chapter describes changes to g77 that are visible to the programmers who actually write and maintain Fortran code they compile with g77. Information on changes to installation procedures, changes to the documentation, and bug fixes is not provided here, unless it is likely to affect how users use g77. See News About GNU Fortran, for information on such changes to g77.

Note that two variants of g77 are tracked below. The egcs variant is described vis-a-vis previous versions of egcs and/or an official FSF version, as appropriate. Note that all such variants are obsolete as of July 1999 - the information is retained here only for its historical value.

Therefore, egcs versions sometimes have multiple listings to help clarify how they differ from other versions, though this can make getting a complete picture of what a particular egcs version contains somewhat more difficult.

For information on bugs in the GCC-3.4.4 version of g77, see Known Bugs In GNU Fortran.

The following information was last updated on 2004-12-29:

In GCC 3.4 versus GCC 3.3:

In GCC 3.3 versus GCC 3.2:

In GCC 3.2 versus GCC 3.1:

In GCC 3.1 (formerly known as g77-0.5.27) versus GCC 3.0:

In 0.5.26, GCC 3.0 versus GCC 2.95:

In 0.5.25, GCC 2.95 (EGCS 1.2) versus EGCS 1.1.2:

In 0.5.24 versus 0.5.23:

There is no g77 version 0.5.24 at this time, or planned. 0.5.24 is the version number designated for bug fixes and, perhaps, some new features added, to 0.5.23. Version 0.5.23 requires gcc 2.8.1, as 0.5.24 was planned to require.

Due to EGCS becoming GCC (which is now an acronym for “GNU Compiler Collection”), and EGCS 1.2 becoming officially designated GCC 2.95, there seems to be no need for an actual 0.5.24 release.

To reduce the confusion already resulting from use of 0.5.24 to designate g77 versions within EGCS versions 1.0 and 1.1, as well as in versions of g77 documentation and notices during that period, “mainline” g77 version numbering resumes at 0.5.25 with GCC 2.95 (EGCS 1.2), skipping over 0.5.24 as a placeholder version number.

To repeat, there is no g77 0.5.24, but there is now a 0.5.25. Please remain calm and return to your keypunch units.

In EGCS 1.1.2 versus EGCS 1.1.1:

In EGCS 1.1.1 versus EGCS 1.1:

In EGCS 1.1 versus EGCS 1.0.3:

In EGCS 1.1 versus g77 0.5.23:

In 0.5.23 versus 0.5.22:

In 0.5.22 versus 0.5.21:

In EGCS 1.0.2 versus EGCS 1.0.1:

In EGCS 1.0.1 versus EGCS 1.0:

In EGCS 1.0 versus g77 0.5.21:

In 0.5.21:

In 0.5.20:

In previous versions:

Information on previous versions is archived in gcc/gcc/f/news.texi following the test of the DOC-OLDNEWS macro.


Next: , Previous: Changes, Up: Top

8 The GNU Fortran Language

GNU Fortran supports a variety of extensions to, and dialects of, the Fortran language. Its primary base is the ANSI FORTRAN 77 standard, currently available on the network at http://www.fortran.com/fortran/F77_std/rjcnf0001.html or as monolithic text at http://www.fortran.com/fortran/F77_std/f77_std.html. It offers some extensions that are popular among users of UNIX f77 and f2c compilers, some that are popular among users of other compilers (such as Digital products), some that are popular among users of the newer Fortran 90 standard, and some that are introduced by GNU Fortran.

(If you need a text on Fortran, a few freely available electronic references have pointers from http://www.fortran.com/F/books.html. There is a `cooperative net project', User Notes on Fortran Programming at ftp://vms.huji.ac.il/fortran/ and mirrors elsewhere; some of this material might not apply specifically to g77.)

Part of what defines a particular implementation of a Fortran system, such as g77, is the particular characteristics of how it supports types, constants, and so on. Much of this is left up to the implementation by the various Fortran standards and accepted practice in the industry.

The GNU Fortran language is described below. Much of the material is organized along the same lines as the ANSI FORTRAN 77 standard itself.

See Other Dialects, for information on features g77 supports that are not part of the GNU Fortran language.

Note: This portion of the documentation definitely needs a lot of work!

Relationship to the ANSI FORTRAN 77 standard:

Extensions to the ANSI FORTRAN 77 standard:


Next: , Up: Language

8.1 Direction of Language Development

The purpose of the following description of the GNU Fortran language is to promote wide portability of GNU Fortran programs.

GNU Fortran is an evolving language, due to the fact that g77 itself is in beta test. Some current features of the language might later be redefined as dialects of Fortran supported by g77 when better ways to express these features are added to g77, for example. Such features would still be supported by g77, but would be available only when one or more command-line options were used.

The GNU Fortran language is distinct from the GNU Fortran compilation system (g77).

For example, g77 supports various dialects of Fortran—in a sense, these are languages other than GNU Fortran—though its primary purpose is to support the GNU Fortran language, which also is described in its documentation and by its implementation.

On the other hand, non-GNU compilers might offer support for the GNU Fortran language, and are encouraged to do so.

Currently, the GNU Fortran language is a fairly fuzzy object. It represents something of a cross between what g77 accepts when compiling using the prevailing defaults and what this document describes as being part of the language.

Future versions of g77 are expected to clarify the definition of the language in the documentation. Often, this will mean adding new features to the language, in the form of both new documentation and new support in g77. However, it might occasionally mean removing a feature from the language itself to “dialect” status. In such a case, the documentation would be adjusted to reflect the change, and g77 itself would likely be changed to require one or more command-line options to continue supporting the feature.

The development of the GNU Fortran language is intended to strike a balance between:

One of the biggest practical challenges for the developers of the GNU Fortran language is meeting the sometimes contradictory demands of the above items.

For example, a feature might be widely used in one popular environment, but the exact same code that utilizes that feature might not work as expected—perhaps it might mean something entirely different—in another popular environment.

Traditionally, Fortran compilers—even portable ones—have solved this problem by simply offering the appropriate feature to users of the respective systems. This approach treats users of various Fortran systems and dialects as remote “islands”, or camps, of programmers, and assume that these camps rarely come into contact with each other (or, especially, with each other's code).

Project GNU takes a radically different approach to software and language design, in that it assumes that users of GNU software do not necessarily care what kind of underlying system they are using, regardless of whether they are using software (at the user-interface level) or writing it (for example, writing Fortran or C code).

As such, GNU users rarely need consider just what kind of underlying hardware (or, in many cases, operating system) they are using at any particular time. They can use and write software designed for a general-purpose, widely portable, heterogeneous environment—the GNU environment.

In line with this philosophy, GNU Fortran must evolve into a product that is widely ported and portable not only in the sense that it can be successfully built, installed, and run by users, but in the larger sense that its users can use it in the same way, and expect largely the same behaviors from it, regardless of the kind of system they are using at any particular time.

This approach constrains the solutions g77 can use to resolve conflicts between various camps of Fortran users. If these two camps disagree about what a particular construct should mean, g77 cannot simply be changed to treat that particular construct as having one meaning without comment (such as a warning), lest the users expecting it to have the other meaning are unpleasantly surprised that their code misbehaves when executed.

The use of the ASCII backslash character in character constants is an excellent (and still somewhat unresolved) example of this kind of controversy. See Backslash in Constants. Other examples are likely to arise in the future, as g77 developers strive to improve its ability to accept an ever-wider variety of existing Fortran code without requiring significant modifications to said code.

Development of GNU Fortran is further constrained by the desire to avoid requiring programmers to change their code. This is important because it allows programmers, administrators, and others to more faithfully evaluate and validate g77 (as an overall product and as new versions are distributed) without having to support multiple versions of their programs so that they continue to work the same way on their existing systems (non-GNU perhaps, but possibly also earlier versions of g77).


Next: , Previous: Direction of Language Development, Up: Language

8.2 ANSI FORTRAN 77 Standard Support

GNU Fortran supports ANSI FORTRAN 77 with the following caveats. In summary, the only ANSI FORTRAN 77 features g77 doesn't support are those that are probably rarely used in actual code, some of which are explicitly disallowed by the Fortran 90 standard.


Next: , Up: Standard Support

8.2.1 No Passing External Assumed-length

g77 disallows passing of an external procedure as an actual argument if the procedure's type is declared CHARACTER*(*). For example:

     CHARACTER*(*) CFUNC
     EXTERNAL CFUNC
     CALL FOO(CFUNC)
     END

It isn't clear whether the standard considers this conforming.


Next: , Previous: No Passing External Assumed-length, Up: Standard Support

8.2.2 No Passing Dummy Assumed-length

g77 disallows passing of a dummy procedure as an actual argument if the procedure's type is declared CHARACTER*(*).

     SUBROUTINE BAR(CFUNC)
     CHARACTER*(*) CFUNC
     EXTERNAL CFUNC
     CALL FOO(CFUNC)
     END

It isn't clear whether the standard considers this conforming.


Next: , Previous: No Passing Dummy Assumed-length, Up: Standard Support

8.2.3 No Pathological Implied-DO

The DO variable for an implied-DO construct in a DATA statement may not be used as the DO variable for an outer implied-DO construct. For example, this fragment is disallowed by g77:

     DATA ((A(I, I), I= 1, 10), I= 1, 10) /.../

This also is disallowed by Fortran 90, as it offers no additional capabilities and would have a variety of possible meanings.

Note that it is very unlikely that any production Fortran code tries to use this unsupported construct.


Previous: No Pathological Implied-DO, Up: Standard Support

8.2.4 No Useless Implied-DO

An array element initializer in an implied-DO construct in a DATA statement must contain at least one reference to the DO variables of each outer implied-DO construct. For example, this fragment is disallowed by g77:

     DATA (A, I= 1, 1) /1./

This also is disallowed by Fortran 90, as FORTRAN 77's more permissive requirements offer no additional capabilities. However, g77 doesn't necessarily diagnose all cases where this requirement is not met.

Note that it is very unlikely that any production Fortran code tries to use this unsupported construct.


Next: , Previous: Standard Support, Up: Language

8.3 Conformance

(The following information augments or overrides the information in Section 1.4 of ANSI X3.9-1978 FORTRAN 77 in specifying the GNU Fortran language. Chapter 1 of that document otherwise serves as the basis for the relevant aspects of GNU Fortran.)

The definition of the GNU Fortran language is akin to that of the ANSI FORTRAN 77 language in that it does not generally require conforming implementations to diagnose cases where programs do not conform to the language.

However, g77 as a compiler is being developed in a way that is intended to enable it to diagnose such cases in an easy-to-understand manner.

A program that conforms to the GNU Fortran language should, when compiled, linked, and executed using a properly installed g77 system, perform as described by the GNU Fortran language definition. Reasons for different behavior include, among others:

Despite these “loopholes”, the availability of a clear specification of the language of programs submitted to g77, as this document is intended to provide, is considered an important aspect of providing a robust, clean, predictable Fortran implementation.

The definition of the GNU Fortran language, while having no special legal status, can therefore be viewed as a sort of contract, or agreement. This agreement says, in essence, “if you write a program in this language, and run it in an environment (such as a g77 system) that supports this language, the program should behave in a largely predictable way”.


Next: , Previous: Conformance, Up: Language

8.4 Notation Used in This Chapter

(The following information augments or overrides the information in Section 1.5 of ANSI X3.9-1978 FORTRAN 77 in specifying the GNU Fortran language. Chapter 1 of that document otherwise serves as the basis for the relevant aspects of GNU Fortran.)

In this chapter, “must” denotes a requirement, “may” denotes permission, and “must not” and “may not” denote prohibition. Terms such as “might”, “should”, and “can” generally add little or nothing in the way of weight to the GNU Fortran language itself, but are used to explain or illustrate the language.

For example:

     “The FROBNITZ statement must precede all executable
     statements in a program unit, and may not specify any dummy
     arguments.  It may specify local or common variables and arrays.
     Its use should be limited to portions of the program designed to
     be non-portable and system-specific, because it might cause the
     containing program unit to behave quite differently on different
     systems.”

Insofar as the GNU Fortran language is specified, the requirements and permissions denoted by the above sample statement are limited to the placement of the statement and the kinds of things it may specify. The rest of the statement—the content regarding non-portable portions of the program and the differing behavior of program units containing the FROBNITZ statement—does not pertain the GNU Fortran language itself. That content offers advice and warnings about the FROBNITZ statement.

Remember: The GNU Fortran language definition specifies both what constitutes a valid GNU Fortran program and how, given such a program, a valid GNU Fortran implementation is to interpret that program.

It is not incumbent upon a valid GNU Fortran implementation to behave in any particular way, any consistent way, or any predictable way when it is asked to interpret input that is not a valid GNU Fortran program.

Such input is said to have undefined behavior when interpreted by a valid GNU Fortran implementation, though an implementation may choose to specify behaviors for some cases of inputs that are not valid GNU Fortran programs.

Other notation used herein is that of the GNU texinfo format, which is used to generate printed hardcopy, on-line hypertext (Info), and on-line HTML versions, all from a single source document. This notation is used as follows:


Next: , Previous: Notation Used, Up: Language

8.5 Fortran Terms and Concepts

(The following information augments or overrides the information in Chapter 2 of ANSI X3.9-1978 FORTRAN 77 in specifying the GNU Fortran language. Chapter 2 of that document otherwise serves as the basis for the relevant aspects of GNU Fortran.)


Next: , Up: Terms and Concepts

8.5.1 Syntactic Items

(Corresponds to Section 2.2 of ANSI X3.9-1978 FORTRAN 77.)

In GNU Fortran, a symbolic name is at least one character long, and has no arbitrary upper limit on length. However, names of entities requiring external linkage (such as external functions, external subroutines, and COMMON areas) might be restricted to some arbitrary length by the system. Such a restriction is no more constrained than that of one through six characters.

Underscores (_) are accepted in symbol names after the first character (which must be a letter).


Next: , Previous: Syntactic Items, Up: Terms and Concepts

8.5.2 Statements, Comments, and Lines

(Corresponds to Section 2.3 of ANSI X3.9-1978 FORTRAN 77.)

Use of an exclamation point (!) to begin a trailing comment (a comment that extends to the end of the same source line) is permitted under the following conditions:

Use of a semicolon (;) as a statement separator is permitted under the following conditions:


Previous: Statements Comments Lines, Up: Terms and Concepts

8.5.3 Scope of Symbolic Names and Statement Labels

(Corresponds to Section 2.9 of ANSI X3.9-1978 FORTRAN 77.)

Included in the list of entities that have a scope of a program unit are construct names (a Fortran 90 feature). See Construct Names, for more information.


Next: , Previous: Terms and Concepts, Up: Language

8.6 Characters, Lines, and Execution Sequence

(The following information augments or overrides the information in Chapter 3 of ANSI X3.9-1978 FORTRAN 77 in specifying the GNU Fortran language. Chapter 3 of that document otherwise serves as the basis for the relevant aspects of GNU Fortran.)


Next: , Up: Characters Lines Sequence

8.6.1 GNU Fortran Character Set

(Corresponds to Section 3.1 of ANSI X3.9-1978 FORTRAN 77.)

Letters include uppercase letters (the twenty-six characters of the English alphabet) and lowercase letters (their lowercase equivalent). Generally, lowercase letters may be used in place of uppercase letters, though in character and Hollerith constants, they are distinct.

Special characters include:

Note that this document refers to <SPC> as space, while X3.9-1978 FORTRAN 77 refers to it as blank.


Next: , Previous: Character Set, Up: Characters Lines Sequence

8.6.2 Lines

(Corresponds to Section 3.2 of ANSI X3.9-1978 FORTRAN 77.)

The way a Fortran compiler views source files depends entirely on the implementation choices made for the compiler, since those choices are explicitly left to the implementation by the published Fortran standards.

The GNU Fortran language mandates a view applicable to UNIX-like text files—files that are made up of an arbitrary number of lines, each with an arbitrary number of characters (sometimes called stream-based files).

This view does not apply to types of files that are specified as having a particular number of characters on every single line (sometimes referred to as record-based files).

Because a “line in a program unit is a sequence of 72 characters”, to quote X3.9-1978, the GNU Fortran language specifies that a stream-based text file is translated to GNU Fortran lines as follows:

For the purposes of the remainder of this description of the GNU Fortran language, the translation described above has already taken place, unless otherwise specified.

The result of the above translation is that the source file appears, in terms of the remainder of this description of the GNU Fortran language, as if it had an arbitrary number of 72-character lines, each character being among the GNU Fortran character set.

For example, if the source file itself has two newlines in a row, the second newline becomes, after the above translation, a single line containing 72 spaces.


Next: , Previous: Lines, Up: Characters Lines Sequence

8.6.3 Continuation Line

(Corresponds to Section 3.2.3 of ANSI X3.9-1978 FORTRAN 77.)

A continuation line is any line that both

A continuation character is any character of the GNU Fortran character set other than space (<SPC>) or zero (0) in column 6, or a digit (0 through 9) in column 7 through 72 of a line that has only spaces to the left of that digit.

The continuation character is ignored as far as the content of the statement is concerned.

The GNU Fortran language places no limit on the number of continuation lines in a statement. In practice, the limit depends on a variety of factors, such as available memory, statement content, and so on, but no GNU Fortran system may impose an arbitrary limit.


Next: , Previous: Continuation Line, Up: Characters Lines Sequence

8.6.4 Statements

(Corresponds to Section 3.3 of ANSI X3.9-1978 FORTRAN 77.)

Statements may be written using an arbitrary number of continuation lines.

Statements may be separated using the semicolon (;), except that the logical IF and non-construct WHERE statements may not be separated from subsequent statements using only a semicolon as statement separator.

The END PROGRAM, END SUBROUTINE, END FUNCTION, and END BLOCK DATA statements are alternatives to the END statement. These alternatives may be written as normal statements—they are not subject to the restrictions of the END statement.

However, no statement other than END may have an initial line that appears to be an END statement—even END PROGRAM, for example, must not be written as:

           END
          &PROGRAM


Next: , Previous: Statements, Up: Characters Lines Sequence

8.6.5 Statement Labels

(Corresponds to Section 3.4 of ANSI X3.9-1978 FORTRAN 77.)

A statement separated from its predecessor via a semicolon may be labeled as follows:

A statement may have only one label defined for it.


Next: , Previous: Statement Labels, Up: Characters Lines Sequence

8.6.6 Order of Statements and Lines

(Corresponds to Section 3.5 of ANSI X3.9-1978 FORTRAN 77.)

Generally, DATA statements may precede executable statements. However, specification statements pertaining to any entities initialized by a DATA statement must precede that DATA statement. For example, after DATA I/1/, INTEGER I is not permitted, but INTEGER J is permitted.

The last line of a program unit may be an END statement, or may be:


Next: , Previous: Order, Up: Characters Lines Sequence

8.6.7 Including Source Text

Additional source text may be included in the processing of the source file via the INCLUDE directive:

     INCLUDE filename

The source text to be included is identified by filename, which is a literal GNU Fortran character constant. The meaning and interpretation of filename depends on the implementation, but typically is a filename.

(g77 treats it as a filename that it searches for in the current directory and/or directories specified via the -I command-line option.)

The effect of the INCLUDE directive is as if the included text directly replaced the directive in the source file prior to interpretation of the program. Included text may itself use INCLUDE. The depth of nested INCLUDE references depends on the implementation, but typically is a positive integer.

This virtual replacement treats the statements and INCLUDE directives in the included text as syntactically distinct from those in the including text.

Therefore, the first non-comment line of the included text must not be a continuation line. The included text must therefore have, after the non-comment lines, either an initial line (statement), an INCLUDE directive, or nothing (the end of the included text).

Similarly, the including text may end the INCLUDE directive with a semicolon or the end of the line, but it cannot follow an INCLUDE directive at the end of its line with a continuation line. Thus, the last statement in an included text may not be continued.

Any statements between two INCLUDE directives on the same line are treated as if they appeared in between the respective included texts. For example:

     INCLUDE 'A'; PRINT *, 'B'; INCLUDE 'C'; END PROGRAM

If the text included by INCLUDE 'A' constitutes a PRINT *, 'A' statement and the text included by INCLUDE 'C' constitutes a PRINT *, 'C' statement, then the output of the above sample program would be

     A
     B
     C

(with suitable allowances for how an implementation defines its handling of output).

Included text must not include itself directly or indirectly, regardless of whether the filename used to reference the text is the same.

Note that INCLUDE is not a statement. As such, it is neither a non-executable or executable statement. However, if the text it includes constitutes one or more executable statements, then the placement of INCLUDE is subject to effectively the same restrictions as those on executable statements.

An INCLUDE directive may be continued across multiple lines as if it were a statement. This permits long names to be used for filename.


Previous: INCLUDE, Up: Characters Lines Sequence

8.6.8 Cpp-style directives

cpp output-style # directives (see C Preprocessor Output (The C Preprocessor)) are recognized by the compiler even when the preprocessor isn't run on the input (as it is when compiling .F files). (Note the distinction between these cpp # output directives and #line input directives.)


Next: , Previous: Characters Lines Sequence, Up: Language

8.7 Data Types and Constants

(The following information augments or overrides the information in Chapter 4 of ANSI X3.9-1978 FORTRAN 77 in specifying the GNU Fortran language. Chapter 4 of that document otherwise serves as the basis for the relevant aspects of GNU Fortran.)

To more concisely express the appropriate types for entities, this document uses the more concise Fortran 90 nomenclature such as INTEGER(KIND=1) instead of the more traditional, but less portably concise, byte-size-based nomenclature such as INTEGER*4, wherever reasonable.

When referring to generic types—in contexts where the specific precision and range of a type are not important—this document uses the generic type names INTEGER, LOGICAL, REAL, COMPLEX, and CHARACTER.

In some cases, the context requires specification of a particular type. This document uses the KIND= notation to accomplish this throughout, sometimes supplying the more traditional notation for clarification, though the traditional notation might not work the same way on all GNU Fortran implementations.

Use of KIND= makes this document more concise because g77 is able to define values for KIND= that have the same meanings on all systems, due to the way the Fortran 90 standard specifies these values are to be used.

(In particular, that standard permits an implementation to arbitrarily assign nonnegative values. There are four distinct sets of assignments: one to the CHARACTER type; one to the INTEGER type; one to the LOGICAL type; and the fourth to both the REAL and COMPLEX types. Implementations are free to assign these values in any order, leave gaps in the ordering of assignments, and assign more than one value to a representation.)

This makes KIND= values superior to the values used in non-standard statements such as INTEGER*4, because the meanings of the values in those statements vary from machine to machine, compiler to compiler, even operating system to operating system.

However, use of KIND= is not generally recommended when writing portable code (unless, for example, the code is going to be compiled only via g77, which is a widely ported compiler). GNU Fortran does not yet have adequate language constructs to permit use of KIND= in a fashion that would make the code portable to Fortran 90 implementations; and, this construct is known to not be accepted by many popular FORTRAN 77 implementations, so it cannot be used in code that is to be ported to those.

The distinction here is that this document is able to use specific values for KIND= to concisely document the types of various operations and operands.

A Fortran program should use the FORTRAN 77 designations for the appropriate GNU Fortran types—such as INTEGER for INTEGER(KIND=1), REAL for REAL(KIND=1), and DOUBLE COMPLEX for COMPLEX(KIND=2)—and, where no such designations exist, make use of appropriate techniques (preprocessor macros, parameters, and so on) to specify the types in a fashion that may be easily adjusted to suit each particular implementation to which the program is ported. (These types generally won't need to be adjusted for ports of g77.)

Further details regarding GNU Fortran data types and constants are provided below.


Next: , Up: Data Types and Constants

8.7.1 Data Types

(Corresponds to Section 4.1 of ANSI X3.9-1978 FORTRAN 77.)

GNU Fortran supports these types:

  1. Integer (generic type INTEGER)
  2. Real (generic type REAL)
  3. Double precision
  4. Complex (generic type COMPLEX)
  5. Logical (generic type LOGICAL)
  6. Character (generic type CHARACTER)
  7. Double Complex

(The types numbered 1 through 6 above are standard FORTRAN 77 types.)

The generic types shown above are referred to in this document using only their generic type names. Such references usually indicate that any specific type (kind) of that generic type is valid.

For example, a context described in this document as accepting the COMPLEX type also is likely to accept the DOUBLE COMPLEX type.

The GNU Fortran language supports three ways to specify a specific kind of a generic type.


Next: , Up: Types
8.7.1.1 Double Notation

The GNU Fortran language supports two uses of the keyword DOUBLE to specify a specific kind of type:

Use one of the above forms where a type name is valid.

While use of this notation is popular, it doesn't scale well in a language or dialect rich in intrinsic types, as is the case for the GNU Fortran language (especially planned future versions of it).

After all, one rarely sees type names such as DOUBLE INTEGER, QUADRUPLE REAL, or QUARTER INTEGER. Instead, INTEGER*8, REAL*16, and INTEGER*1 often are substituted for these, respectively, even though they do not always have the same meanings on all systems. (And, the fact that DOUBLE REAL does not exist as such is an inconsistency.)

Therefore, this document uses “double notation” only on occasion for the benefit of those readers who are accustomed to it.


Next: , Previous: Double Notation, Up: Types
8.7.1.2 Star Notation

The following notation specifies the storage size for a type:

     generic-type*n

generic-type must be a generic type—one of INTEGER, REAL, COMPLEX, LOGICAL, or CHARACTER. n must be one or more digits comprising a decimal integer number greater than zero.

Use the above form where a type name is valid.

The *n notation specifies that the amount of storage occupied by variables and array elements of that type is n times the storage occupied by a CHARACTER*1 variable.

This notation might indicate a different degree of precision and/or range for such variables and array elements, and the functions that return values of types using this notation. It does not limit the precision or range of values of that type in any particular way—use explicit code to do that.

Further, the GNU Fortran language requires no particular values for n to be supported by an implementation via the *n notation. g77 supports INTEGER*1 (as INTEGER(KIND=3)) on all systems, for example, but not all implementations are required to do so, and g77 is known to not support REAL*1 on most (or all) systems.

As a result, except for generic-type of CHARACTER, uses of this notation should be limited to isolated portions of a program that are intended to handle system-specific tasks and are expected to be non-portable.

(Standard FORTRAN 77 supports the *n notation for only CHARACTER, where it signifies not only the amount of storage occupied, but the number of characters in entities of that type. However, almost all Fortran compilers have supported this notation for generic types, though with a variety of meanings for n.)

Specifications of types using the *n notation always are interpreted as specifications of the appropriate types described in this document using the KIND=n notation, described below.

While use of this notation is popular, it doesn't serve well in the context of a widely portable dialect of Fortran, such as the GNU Fortran language.

For example, even on one particular machine, two or more popular Fortran compilers might well disagree on the size of a type declared INTEGER*2 or REAL*16. Certainly there is known to be disagreement over such things among Fortran compilers on different systems.

Further, this notation offers no elegant way to specify sizes that are not even multiples of the “byte size” typically designated by INTEGER*1. Use of “absurd” values (such as INTEGER*1000) would certainly be possible, but would perhaps be stretching the original intent of this notation beyond the breaking point in terms of widespread readability of documentation and code making use of it.

Therefore, this document uses “star notation” only on occasion for the benefit of those readers who are accustomed to it.


Previous: Star Notation, Up: Types
8.7.1.3 Kind Notation

The following notation specifies the kind-type selector of a type:

     generic-type(KIND=n)

Use the above form where a type name is valid.

generic-type must be a generic type—one of INTEGER, REAL, COMPLEX, LOGICAL, or CHARACTER. n must be an integer initialization expression that is a positive, nonzero value.

Programmers are discouraged from writing these values directly into their code. Future versions of the GNU Fortran language will offer facilities that will make the writing of code portable to g77 and Fortran 90 implementations simpler.

However, writing code that ports to existing FORTRAN 77 implementations depends on avoiding the KIND= construct.

The KIND= construct is thus useful in the context of GNU Fortran for two reasons:

The values of n in the GNU Fortran language are assigned using a scheme that:

The assignment system accomplishes this by assigning to each “fundamental meaning” of a specific type a unique prime number. Combinations of fundamental meanings—for example, a type that is two times the size of some other type—are assigned values of n that are the products of the values for those fundamental meanings.

A prime value of n is never given more than one fundamental meaning, to avoid situations where some code or system cannot reasonably provide those meanings in the form of a single type.

The values of n assigned so far are:

KIND=0
This value is reserved for future use.

The planned future use is for this value to designate, explicitly, context-sensitive kind-type selection. For example, the expression 1D0 * 0.1_0 would be equivalent to 1D0 * 0.1D0.

KIND=1
This corresponds to the default types for REAL, INTEGER, LOGICAL, COMPLEX, and CHARACTER, as appropriate.

These are the “default” types described in the Fortran 90 standard, though that standard does not assign any particular KIND= value to these types.

(Typically, these are REAL*4, INTEGER*4, LOGICAL*4, and COMPLEX*8.)

KIND=2
This corresponds to types that occupy twice as much storage as the default types. REAL(KIND=2) is DOUBLE PRECISION (typically REAL*8), COMPLEX(KIND=2) is DOUBLE COMPLEX (typically COMPLEX*16),

These are the “double precision” types described in the Fortran 90 standard, though that standard does not assign any particular KIND= value to these types.

n of 4 thus corresponds to types that occupy four times as much storage as the default types, n of 8 to types that occupy eight times as much storage, and so on.

The INTEGER(KIND=2) and LOGICAL(KIND=2) types are not necessarily supported by every GNU Fortran implementation.

KIND=3
This corresponds to types that occupy as much storage as the default CHARACTER type, which is the same effective type as CHARACTER(KIND=1) (making that type effectively the same as CHARACTER(KIND=3)).

(Typically, these are INTEGER*1 and LOGICAL*1.)

n of 6 thus corresponds to types that occupy twice as much storage as the n=3 types, n of 12 to types that occupy four times as much storage, and so on.

These are not necessarily supported by every GNU Fortran implementation.

KIND=5
This corresponds to types that occupy half the storage as the default (n=1) types.

(Typically, these are INTEGER*2 and LOGICAL*2.)

n of 25 thus corresponds to types that occupy one-quarter as much storage as the default types.

These are not necessarily supported by every GNU Fortran implementation.

KIND=7
This is valid only as INTEGER(KIND=7) and denotes the INTEGER type that has the smallest storage size that holds a pointer on the system.

A pointer representable by this type is capable of uniquely addressing a CHARACTER*1 variable, array, array element, or substring.

(Typically this is equivalent to INTEGER*4 or, on 64-bit systems, INTEGER*8. In a compatible C implementation, it typically would be the same size and semantics of the C type void *.)

Note that these are proposed correspondences and might change in future versions of g77—avoid writing code depending on them while g77, and therefore the GNU Fortran language it defines, is in beta testing.

Values not specified in the above list are reserved to future versions of the GNU Fortran language.

Implementation-dependent meanings will be assigned new, unique prime numbers so as to not interfere with other implementation-dependent meanings, and offer the possibility of increasing the portability of code depending on such types by offering support for them in other GNU Fortran implementations.

Other meanings that might be given unique values are:

Future prime numbers should be given meanings in as incremental a fashion as possible, to allow for flexibility and expressiveness in combining types.

For example, instead of defining a prime number for little-endian IEEE doubles, one prime number might be assigned the meaning “little-endian”, another the meaning “IEEE double”, and the value of n for a little-endian IEEE double would thus naturally be the product of those two respective assigned values. (It could even be reasonable to have IEEE values result from the products of prime values denoting exponent and fraction sizes and meanings, hidden bit usage, availability and representations of special values such as subnormals, infinities, and Not-A-Numbers (NaNs), and so on.)

This assignment mechanism, while not inherently required for future versions of the GNU Fortran language, is worth using because it could ease management of the “space” of supported types much easier in the long run.

The above approach suggests a mechanism for specifying inheritance of intrinsic (built-in) types for an entire, widely portable product line. It is certainly reasonable that, unlike programmers of other languages offering inheritance mechanisms that employ verbose names for classes and subclasses, along with graphical browsers to elucidate the relationships, Fortran programmers would employ a mechanism that works by multiplying prime numbers together and finding the prime factors of such products.

Most of the advantages for the above scheme have been explained above. One disadvantage is that it could lead to the defining, by the GNU Fortran language, of some fairly large prime numbers. This could lead to the GNU Fortran language being declared “munitions” by the United States Department of Defense.


Next: , Previous: Types, Up: Data Types and Constants

8.7.2 Constants

(Corresponds to Section 4.2 of ANSI X3.9-1978 FORTRAN 77.)

A typeless constant has one of the following forms:

     'binary-digits'B
     'octal-digits'O
     'hexadecimal-digits'Z
     'hexadecimal-digits'X

binary-digits, octal-digits, and hexadecimal-digits are nonempty strings of characters in the set 01, 01234567, and 0123456789ABCDEFabcdef, respectively. (The value for A (and a) is 10, for B and b is 11, and so on.)

A prefix-radix constant, such as Z'ABCD', can optionally be treated as typeless. See Options Controlling Fortran Dialect, for information on the -ftypeless-boz option.

Typeless constants have values that depend on the context in which they are used.

All other constants, called typed constants, are interpreted—converted to internal form—according to their inherent type. Thus, context is never a determining factor for the type, and hence the interpretation, of a typed constant. (All constants in the ANSI FORTRAN 77 language are typed constants.)

For example, 1 is always type INTEGER(KIND=1) in GNU Fortran (called default INTEGER in Fortran 90), 9.435784839284958 is always type REAL(KIND=1) (even if the additional precision specified is lost, and even when used in a REAL(KIND=2) context), 1E0 is always type REAL(KIND=2), and 1D0 is always type REAL(KIND=2).


Next: , Previous: Constants, Up: Data Types and Constants

8.7.3 Integer Type

(Corresponds to Section 4.3 of ANSI X3.9-1978 FORTRAN 77.)

An integer constant also may have one of the following forms:

     B'binary-digits'
     O'octal-digits'
     Z'hexadecimal-digits'
     X'hexadecimal-digits'

binary-digits, octal-digits, and hexadecimal-digits are nonempty strings of characters in the set 01, 01234567, and 0123456789ABCDEFabcdef, respectively. (The value for A (and a) is 10, for B and b is 11, and so on.)


Previous: Integer Type, Up: Data Types and Constants

8.7.4 Character Type

(Corresponds to Section 4.8 of ANSI X3.9-1978 FORTRAN 77.)

A character constant may be delimited by a pair of double quotes (") instead of apostrophes. In this case, an apostrophe within the constant represents a single apostrophe, while a double quote is represented in the source text of the constant by two consecutive double quotes with no intervening spaces.

A character constant may be empty (have a length of zero).

A character constant may include a substring specification, The value of such a constant is the value of the substring—for example, the value of 'hello'(3:5) is the same as the value of 'llo'.


Next: , Previous: Data Types and Constants, Up: Language

8.8 Expressions

(The following information augments or overrides the information in Chapter 6 of ANSI X3.9-1978 FORTRAN 77 in specifying the GNU Fortran language. Chapter 6 of that document otherwise serves as the basis for the relevant aspects of GNU Fortran.)


Up: Expressions

8.8.1 The %LOC() Construct

     %LOC(arg)

The %LOC() construct is an expression that yields the value of the location of its argument, arg, in memory. The size of the type of the expression depends on the system—typically, it is equivalent to either INTEGER(KIND=1) or INTEGER(KIND=2), though it is actually type INTEGER(KIND=7).

The argument to %LOC() must be suitable as the left-hand side of an assignment statement. That is, it may not be a general expression involving operators such as addition, subtraction, and so on, nor may it be a constant.

Use of %LOC() is recommended only for code that is accessing facilities outside of GNU Fortran, such as operating system or windowing facilities. It is best to constrain such uses to isolated portions of a program—portions that deal specifically and exclusively with low-level, system-dependent facilities. Such portions might well provide a portable interface for use by the program as a whole, but are themselves not portable, and should be thoroughly tested each time they are rebuilt using a new compiler or version of a compiler.

Do not depend on %LOC() returning a pointer that can be safely used to define (change) the argument. While this might work in some circumstances, it is hard to predict whether it will continue to work when a program (that works using this unsafe behavior) is recompiled using different command-line options or a different version of g77.

Generally, %LOC() is safe when used as an argument to a procedure that makes use of the value of the corresponding dummy argument only during its activation, and only when such use is restricted to referencing (reading) the value of the argument to %LOC().

Implementation Note: Currently, g77 passes arguments (those not passed using a construct such as %VAL()) by reference or descriptor, depending on the type of the actual argument. Thus, given INTEGER I, CALL FOO(I) would seem to mean the same thing as CALL FOO(%VAL(%LOC(I))), and in fact might compile to identical code.

However, CALL FOO(%VAL(%LOC(I))) emphatically means “pass, by value, the address of I in memory”. While CALL FOO(I) might use that same approach in a particular version of g77, another version or compiler might choose a different implementation, such as copy-in/copy-out, to effect the desired behavior—and which will therefore not necessarily compile to the same code as would CALL FOO(%VAL(%LOC(I))) using the same version or compiler.

See Debugging and Interfacing, for detailed information on how this particular version of g77 implements various constructs.


Next: , Previous: Expressions, Up: Language

8.9 Specification Statements

(The following information augments or overrides the information in Chapter 8 of ANSI X3.9-1978 FORTRAN 77 in specifying the GNU Fortran language. Chapter 8 of that document otherwise serves as the basis for the relevant aspects of GNU Fortran.)


Next: , Up: Specification Statements

8.9.1 NAMELIST Statement

The NAMELIST statement, and related I/O constructs, are supported by the GNU Fortran language in essentially the same way as they are by f2c.

This follows Fortran 90 with the restriction that on NAMELIST input, subscripts must have the form

     subscript [ : subscript [ : stride]]

i.e.

     &xx x(1:3,8:10:2)=1,2,3,4,5,6/

is allowed, but not, say,

     &xx x(:3,8::2)=1,2,3,4,5,6/

As an extension of the Fortran 90 form, $ and $END may be used in place of & and / in NAMELIST input, so that

     $&xx x(1:3,8:10:2)=1,2,3,4,5,6 $end

could be used instead of the example above.


Previous: NAMELIST, Up: Specification Statements

8.9.2 DOUBLE COMPLEX Statement

DOUBLE COMPLEX is a type-statement (and type) that specifies the type COMPLEX(KIND=2) in GNU Fortran.


Next: , Previous: Specification Statements, Up: Language

8.10 Control Statements

(The following information augments or overrides the information in Chapter 11 of ANSI X3.9-1978 FORTRAN 77 in specifying the GNU Fortran language. Chapter 11 of that document otherwise serves as the basis for the relevant aspects of GNU Fortran.)


Next: , Up: Control Statements

8.10.1 DO WHILE

The DO WHILE statement, a feature of both the MIL-STD 1753 and Fortran 90 standards, is provided by the GNU Fortran language. The Fortran 90 “do forever” statement comprising just DO is also supported.


Next: , Previous: DO WHILE, Up: Control Statements

8.10.2 END DO

The END DO statement is provided by the GNU Fortran language.

This statement is used in one of two ways:


Next: , Previous: END DO, Up: Control Statements

8.10.3 Construct Names

The GNU Fortran language supports construct names as defined by the Fortran 90 standard. These names are local to the program unit and are defined as follows:

     construct-name: block-statement

Here, construct-name is the construct name itself; its definition is connoted by the single colon (:); and block-statement is an IF, DO, or SELECT CASE statement that begins a block.

A block that is given a construct name must also specify the same construct name in its termination statement:

     END block construct-name

Here, block must be IF, DO, or SELECT, as appropriate.


Previous: Construct Names, Up: Control Statements

8.10.4 The CYCLE and EXIT Statements

The CYCLE and EXIT statements specify that the remaining statements in the current iteration of a particular active (enclosing) DO loop are to be skipped.

CYCLE specifies that these statements are skipped, but the END DO statement that marks the end of the DO loop be executed—that is, the next iteration, if any, is to be started. If the statement marking the end of the DO loop is not END DO—in other words, if the loop is not a block DO—the CYCLE statement does not execute that statement, but does start the next iteration (if any).

EXIT specifies that the loop specified by the DO construct is terminated.

The DO loop affected by CYCLE and EXIT is the innermost enclosing DO loop when the following forms are used:

     CYCLE
     EXIT

Otherwise, the following forms specify the construct name of the pertinent DO loop:

     CYCLE construct-name
     EXIT construct-name

CYCLE and EXIT can be viewed as glorified GO TO statements. However, they cannot be easily thought of as GO TO statements in obscure cases involving FORTRAN 77 loops. For example:

           DO 10 I = 1, 5
           DO 10 J = 1, 5
              IF (J .EQ. 5) EXIT
           DO 10 K = 1, 5
              IF (K .EQ. 3) CYCLE
     10    PRINT *, 'I=', I, ' J=', J, ' K=', K
     20    CONTINUE

In particular, neither the EXIT nor CYCLE statements above are equivalent to a GO TO statement to either label 10 or 20.

To understand the effect of CYCLE and EXIT in the above fragment, it is helpful to first translate it to its equivalent using only block DO loops:

           DO I = 1, 5
              DO J = 1, 5
                 IF (J .EQ. 5) EXIT
                 DO K = 1, 5
                    IF (K .EQ. 3) CYCLE
     10             PRINT *, 'I=', I, ' J=', J, ' K=', K
                 END DO
              END DO
           END DO
     20    CONTINUE

Adding new labels allows translation of CYCLE and EXIT to GO TO so they may be more easily understood by programmers accustomed to FORTRAN coding:

           DO I = 1, 5
              DO J = 1, 5
                 IF (J .EQ. 5) GOTO 18
                 DO K = 1, 5
                    IF (K .EQ. 3) GO TO 12
     10             PRINT *, 'I=', I, ' J=', J, ' K=', K
     12          END DO
              END DO
     18    END DO
     20    CONTINUE

Thus, the CYCLE statement in the innermost loop skips over the PRINT statement as it begins the next iteration of the loop, while the EXIT statement in the middle loop ends that loop but not the outermost loop.


Next: , Previous: Control Statements, Up: Language

8.11 Functions and Subroutines

(The following information augments or overrides the information in Chapter 15 of ANSI X3.9-1978 FORTRAN 77 in specifying the GNU Fortran language. Chapter 15 of that document otherwise serves as the basis for the relevant aspects of GNU Fortran.)


Next: , Up: Functions and Subroutines

8.11.1 The %VAL() Construct

     %VAL(arg)

The %VAL() construct specifies that an argument, arg, is to be passed by value, instead of by reference or descriptor.

%VAL() is restricted to actual arguments in invocations of external procedures.

Use of %VAL() is recommended only for code that is accessing facilities outside of GNU Fortran, such as operating system or windowing facilities. It is best to constrain such uses to isolated portions of a program—portions the deal specifically and exclusively with low-level, system-dependent facilities. Such portions might well provide a portable interface for use by the program as a whole, but are themselves not portable, and should be thoroughly tested each time they are rebuilt using a new compiler or version of a compiler.

Implementation Note: Currently, g77 passes all arguments either by reference or by descriptor.

Thus, use of %VAL() tends to be restricted to cases where the called procedure is written in a language other than Fortran that supports call-by-value semantics. (C is an example of such a language.)

See Procedures (SUBROUTINE and FUNCTION), for detailed information on how this particular version of g77 passes arguments to procedures.


Next: , Previous: %VAL(), Up: Functions and Subroutines

8.11.2 The %REF() Construct

     %REF(arg)

The %REF() construct specifies that an argument, arg, is to be passed by reference, instead of by value or descriptor.

%REF() is restricted to actual arguments in invocations of external procedures.

Use of %REF() is recommended only for code that is accessing facilities outside of GNU Fortran, such as operating system or windowing facilities. It is best to constrain such uses to isolated portions of a program—portions the deal specifically and exclusively with low-level, system-dependent facilities. Such portions might well provide a portable interface for use by the program as a whole, but are themselves not portable, and should be thoroughly tested each time they are rebuilt using a new compiler or version of a compiler.

Do not depend on %REF() supplying a pointer to the procedure being invoked. While that is a likely implementation choice, other implementation choices are available that preserve Fortran pass-by-reference semantics without passing a pointer to the argument, arg. (For example, a copy-in/copy-out implementation.)

Implementation Note: Currently, g77 passes all arguments (other than variables and arrays of type CHARACTER) by reference. Future versions of, or dialects supported by, g77 might not pass CHARACTER functions by reference.

Thus, use of %REF() tends to be restricted to cases where arg is type CHARACTER but the called procedure accesses it via a means other than the method used for Fortran CHARACTER arguments.

See Procedures (SUBROUTINE and FUNCTION), for detailed information on how this particular version of g77 passes arguments to procedures.


Next: , Previous: %REF(), Up: Functions and Subroutines

8.11.3 The %DESCR() Construct

     %DESCR(arg)

The %DESCR() construct specifies that an argument, arg, is to be passed by descriptor, instead of by value or reference.

%DESCR() is restricted to actual arguments in invocations of external procedures.

Use of %DESCR() is recommended only for code that is accessing facilities outside of GNU Fortran, such as operating system or windowing facilities. It is best to constrain such uses to isolated portions of a program—portions the deal specifically and exclusively with low-level, system-dependent facilities. Such portions might well provide a portable interface for use by the program as a whole, but are themselves not portable, and should be thoroughly tested each time they are rebuilt using a new compiler or version of a compiler.

Do not depend on %DESCR() supplying a pointer and/or a length passed by value to the procedure being invoked. While that is a likely implementation choice, other implementation choices are available that preserve the pass-by-reference semantics without passing a pointer to the argument, arg. (For example, a copy-in/copy-out implementation.) And, future versions of g77 might change the way descriptors are implemented, such as passing a single argument pointing to a record containing the pointer/length information instead of passing that same information via two arguments as it currently does.

Implementation Note: Currently, g77 passes all variables and arrays of type CHARACTER by descriptor. Future versions of, or dialects supported by, g77 might pass CHARACTER functions by descriptor as well.

Thus, use of %DESCR() tends to be restricted to cases where arg is not type CHARACTER but the called procedure accesses it via a means similar to the method used for Fortran CHARACTER arguments.

See Procedures (SUBROUTINE and FUNCTION), for detailed information on how this particular version of g77 passes arguments to procedures.


Next: , Previous: %DESCR(), Up: Functions and Subroutines

8.11.4 Generics and Specifics

The ANSI FORTRAN 77 language defines generic and specific intrinsics. In short, the distinctions are:

The GNU Fortran language generalizes these concepts somewhat, especially by providing intrinsic subroutines and generic intrinsics that are treated as either a specific intrinsic subroutine or a specific intrinsic function (e.g. SECOND).

However, GNU Fortran avoids generalizing this concept to the point where existing code would be accepted as meaning something possibly different than what was intended.

For example, ABS is a generic intrinsic, so all working code written using ABS of an INTEGER argument expects an INTEGER return value. Similarly, all such code expects that ABS of an INTEGER*2 argument returns an INTEGER*2 return value.

Yet, IABS is a specific intrinsic that accepts only an INTEGER(KIND=1) argument. Code that passes something other than an INTEGER(KIND=1) argument to IABS is not valid GNU Fortran code, because it is not clear what the author intended.

For example, if J is INTEGER(KIND=6), IABS(J) is not defined by the GNU Fortran language, because the programmer might have used that construct to mean any of the following, subtly different, things:

The distinctions matter especially when types and values wider than INTEGER(KIND=1) (such as INTEGER(KIND=2)), or when operations performing more “arithmetic” than absolute-value, are involved.

The following sample program is not a valid GNU Fortran program, but might be accepted by other compilers. If so, the output is likely to be revealing in terms of how a given compiler treats intrinsics (that normally are specific) when they are given arguments that do not conform to their stated requirements:

           PROGRAM JCB002
     C Version 1:
     C Modified 1999-02-15 (Burley) to delete my email address.
     C Modified 1997-05-21 (Burley) to accommodate compilers that implement
     C INT(I1-I2) as INT(I1)-INT(I2) given INTEGER*2 I1,I2.
     C
     C Version 0:
     C Written by James Craig Burley 1997-02-20.
     C
     C Purpose:
     C Determine how compilers handle non-standard IDIM
     C on INTEGER*2 operands, which presumably can be
     C extrapolated into understanding how the compiler
     C generally treats specific intrinsics that are passed
     C arguments not of the correct types.
     C
     C If your compiler implements INTEGER*2 and INTEGER
     C as the same type, change all INTEGER*2 below to
     C INTEGER*1.
     C
           INTEGER*2 I0, I4
           INTEGER I1, I2, I3
           INTEGER*2 ISMALL, ILARGE
           INTEGER*2 ITOOLG, ITWO
           INTEGER*2 ITMP
           LOGICAL L2, L3, L4
     C
     C Find smallest INTEGER*2 number.
     C
           ISMALL=0
      10   I0 = ISMALL-1
           IF ((I0 .GE. ISMALL) .OR. (I0+1 .NE. ISMALL)) GOTO 20
           ISMALL = I0
           GOTO 10
      20   CONTINUE
     C
     C Find largest INTEGER*2 number.
     C
           ILARGE=0
      30   I0 = ILARGE+1
           IF ((I0 .LE. ILARGE) .OR. (I0-1 .NE. ILARGE)) GOTO 40
           ILARGE = I0
           GOTO 30
      40   CONTINUE
     C
     C Multiplying by two adds stress to the situation.
     C
           ITWO = 2
     C
     C Need a number that, added to -2, is too wide to fit in I*2.
     C
           ITOOLG = ISMALL
     C
     C Use IDIM the straightforward way.
     C
           I1 = IDIM (ILARGE, ISMALL) * ITWO + ITOOLG
     C
     C Calculate result for first interpretation.
     C
           I2 = (INT (ILARGE) - INT (ISMALL)) * ITWO + ITOOLG
     C
     C Calculate result for second interpretation.
     C
           ITMP = ILARGE - ISMALL
           I3 = (INT (ITMP)) * ITWO + ITOOLG
     C
     C Calculate result for third interpretation.
     C
           I4 = (ILARGE - ISMALL) * ITWO + ITOOLG
     C
     C Print results.
     C
           PRINT *, 'ILARGE=', ILARGE
           PRINT *, 'ITWO=', ITWO
           PRINT *, 'ITOOLG=', ITOOLG
           PRINT *, 'ISMALL=', ISMALL
           PRINT *, 'I1=', I1
           PRINT *, 'I2=', I2
           PRINT *, 'I3=', I3
           PRINT *, 'I4=', I4
           PRINT *
           L2 = (I1 .EQ. I2)
           L3 = (I1 .EQ. I3)
           L4 = (I1 .EQ. I4)
           IF (L2 .AND. .NOT.L3 .AND. .NOT.L4) THEN
              PRINT *, 'Interp 1: IDIM(I*2,I*2) => IDIM(INT(I*2),INT(I*2))'
              STOP
           END IF
           IF (L3 .AND. .NOT.L2 .AND. .NOT.L4) THEN
              PRINT *, 'Interp 2: IDIM(I*2,I*2) => INT(DIM(I*2,I*2))'
              STOP
           END IF
           IF (L4 .AND. .NOT.L2 .AND. .NOT.L3) THEN
              PRINT *, 'Interp 3: IDIM(I*2,I*2) => DIM(I*2,I*2)'
              STOP
           END IF
           PRINT *, 'Results need careful analysis.'
           END

No future version of the GNU Fortran language will likely permit specific intrinsic invocations with wrong-typed arguments (such as IDIM in the above example), since it has been determined that disagreements exist among many production compilers on the interpretation of such invocations. These disagreements strongly suggest that Fortran programmers, and certainly existing Fortran programs, disagree about the meaning of such invocations.

The first version of JCB002 didn't accommodate some compilers' treatment of INT(I1-I2) where I1 and I2 are INTEGER*2. In such a case, these compilers apparently convert both operands to INTEGER*4 and then do an INTEGER*4 subtraction, instead of doing an INTEGER*2 subtraction on the original values in I1 and I2.

However, the results of the careful analyses done on the outputs of programs compiled by these various compilers show that they all implement either Interp 1 or Interp 2 above.

Specifically, it is believed that the new version of JCB002 above will confirm that:

If you get different results than the above for the stated compilers, or have results for other compilers that might be worth adding to the above list, please let us know the details (compiler product, version, machine, results, and so on).


Next: , Previous: Generics and Specifics, Up: Functions and Subroutines

8.11.5 REAL() and AIMAG() of Complex

The GNU Fortran language disallows REAL(expr) and AIMAG(expr), where expr is any COMPLEX type other than COMPLEX(KIND=1), except when they are used in the following way:

     REAL(REAL(expr))
     REAL(AIMAG(expr))

The above forms explicitly specify that the desired effect is to convert the real or imaginary part of expr, which might be some REAL type other than REAL(KIND=1), to type REAL(KIND=1), and have that serve as the value of the expression.

The GNU Fortran language offers clearly named intrinsics to extract the real and imaginary parts of a complex entity without any conversion:

     REALPART(expr)
     IMAGPART(expr)

To express the above using typical extended FORTRAN 77, use the following constructs (when expr is COMPLEX(KIND=2)):

     DBLE(expr)
     DIMAG(expr)

The FORTRAN 77 language offers no way to explicitly specify the real and imaginary parts of a complex expression of arbitrary type, apparently as a result of requiring support for only one COMPLEX type (COMPLEX(KIND=1)). The concepts of converting an expression to type REAL(KIND=1) and of extracting the real part of a complex expression were thus “smooshed” by FORTRAN 77 into a single intrinsic, since they happened to have the exact same effect in that language (due to having only one COMPLEX type).

Note: When -ff90 is in effect, g77 treats REAL(expr), where expr is of type COMPLEX, as REALPART(expr), whereas with -fugly-complex -fno-f90 in effect, it is treated as REAL(REALPART(expr)).

See Ugly Complex Part Extraction, for more information.


Next: , Previous: REAL() and AIMAG() of Complex, Up: Functions and Subroutines

8.11.6 CMPLX() of DOUBLE PRECISION

In accordance with Fortran 90 and at least some (perhaps all) other compilers, the GNU Fortran language defines CMPLX() as always returning a result that is type COMPLEX(KIND=1).

This means CMPLX(D1,D2), where D1 and D2 are REAL(KIND=2) (DOUBLE PRECISION), is treated as:

     CMPLX(SNGL(D1), SNGL(D2))

(It was necessary for Fortran 90 to specify this behavior for DOUBLE PRECISION arguments, since that is the behavior mandated by FORTRAN 77.)

The GNU Fortran language also provides the DCMPLX() intrinsic, which is provided by some FORTRAN 77 compilers to construct a DOUBLE COMPLEX entity from of DOUBLE PRECISION operands. However, this solution does not scale well when more COMPLEX types (having various precisions and ranges) are offered by Fortran implementations.

Fortran 90 extends the CMPLX() intrinsic by adding an extra argument used to specify the desired kind of complex result. However, this solution is somewhat awkward to use, and g77 currently does not support it.

The GNU Fortran language provides a simple way to build a complex value out of two numbers, with the precise type of the value determined by the types of the two numbers (via the usual type-promotion mechanism):

     COMPLEX(real, imag)

When real and imag are the same REAL types, COMPLEX() performs no conversion other than to put them together to form a complex result of the same (complex version of real) type.

See Complex Intrinsic, for more information.


Next: , Previous: CMPLX() of DOUBLE PRECISION, Up: Functions and Subroutines

8.11.7 MIL-STD 1753 Support

The GNU Fortran language includes the MIL-STD 1753 intrinsics BTEST, IAND, IBCLR, IBITS, IBSET, IEOR, IOR, ISHFT, ISHFTC, MVBITS, and NOT.


Next: , Previous: MIL-STD 1753, Up: Functions and Subroutines

8.11.8 f77/f2c Intrinsics

The bit-manipulation intrinsics supported by traditional f77 and by f2c are available in the GNU Fortran language. These include AND, LSHIFT, OR, RSHIFT, and XOR.

Also supported are the intrinsics CDABS, CDCOS, CDEXP, CDLOG, CDSIN, CDSQRT, DCMPLX, DCONJG, DFLOAT, DIMAG, DREAL, and IMAG, ZABS, ZCOS, ZEXP, ZLOG, ZSIN, and ZSQRT.


Previous: f77/f2c Intrinsics, Up: Functions and Subroutines

8.11.9 Table of Intrinsic Functions

(Corresponds to Section 15.10 of ANSI X3.9-1978 FORTRAN 77.)

The GNU Fortran language adds various functions, subroutines, types, and arguments to the set of intrinsic functions in ANSI FORTRAN 77. The complete set of intrinsics supported by the GNU Fortran language is described below.

Note that a name is not treated as that of an intrinsic if it is specified in an EXTERNAL statement in the same program unit; if a command-line option is used to disable the groups to which the intrinsic belongs; or if the intrinsic is not named in an INTRINSIC statement and a command-line option is used to hide the groups to which the intrinsic belongs.

So, it is recommended that any reference in a program unit to an intrinsic procedure that is not a standard FORTRAN 77 intrinsic be accompanied by an appropriate INTRINSIC statement in that program unit. This sort of defensive programming makes it more likely that an implementation will issue a diagnostic rather than generate incorrect code for such a reference.

The terminology used below is based on that of the Fortran 90 standard, so that the text may be more concise and accurate:


Next: , Up: Table of Intrinsic Functions
8.11.9.1 Abort Intrinsic

     CALL Abort()

Intrinsic groups: unix.

Description:

Prints a message and potentially causes a core dump via abort(3).


Next: , Previous: Abort Intrinsic, Up: Table of Intrinsic Functions
8.11.9.2 Abs Intrinsic

     Abs(A)

Abs: INTEGER or REAL function. The exact type depends on that of argument A—if A is COMPLEX, this function's type is REAL with the same KIND= value as the type of A. Otherwise, this function's type is the same as that of A.

A: INTEGER, REAL, or COMPLEX; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the absolute value of A.

If A is type COMPLEX, the absolute value is computed as:

     SQRT(REALPART(A)**2+IMAGPART(A)**2)

Otherwise, it is computed by negating A if it is negative, or returning A.

See Sign Intrinsic, for how to explicitly compute the positive or negative form of the absolute value of an expression.


Next: , Previous: Abs Intrinsic, Up: Table of Intrinsic Functions
8.11.9.3 Access Intrinsic

     Access(Name, Mode)

Access: INTEGER(KIND=1) function.

Name: CHARACTER; scalar; INTENT(IN).

Mode: CHARACTER; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Checks file Name for accessibility in the mode specified by Mode and returns 0 if the file is accessible in that mode, otherwise an error code if the file is inaccessible or Mode is invalid. See access(2). A null character (CHAR(0)) marks the end of the name in Name—otherwise, trailing blanks in Name are ignored. Mode may be a concatenation of any of the following characters:

r
Read permission
w
Write permission
x
Execute permission
SPC
Existence


Next: , Previous: Access Intrinsic, Up: Table of Intrinsic Functions
8.11.9.4 AChar Intrinsic

     AChar(I)

AChar: CHARACTER*1 function.

I: INTEGER; scalar; INTENT(IN).

Intrinsic groups: f2c, f90.

Description:

Returns the ASCII character corresponding to the code specified by I.

See IAChar Intrinsic, for the inverse of this function.

See Char Intrinsic, for the function corresponding to the system's native character set.


Next: , Previous: AChar Intrinsic, Up: Table of Intrinsic Functions
8.11.9.5 ACos Intrinsic

     ACos(X)

ACos: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the arc-cosine (inverse cosine) of X in radians.

See Cos Intrinsic, for the inverse of this function.


Next: , Previous: ACos Intrinsic, Up: Table of Intrinsic Functions
8.11.9.6 AdjustL Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL AdjustL to use this name for an external procedure.


Next: , Previous: AdjustL Intrinsic, Up: Table of Intrinsic Functions
8.11.9.7 AdjustR Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL AdjustR to use this name for an external procedure.


Next: , Previous: AdjustR Intrinsic, Up: Table of Intrinsic Functions
8.11.9.8 AImag Intrinsic

     AImag(Z)

AImag: REAL function. This intrinsic is valid when argument Z is COMPLEX(KIND=1). When Z is any other COMPLEX type, this intrinsic is valid only when used as the argument to REAL(), as explained below.

Z: COMPLEX; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the (possibly converted) imaginary part of Z.

Use of AIMAG() with an argument of a type other than COMPLEX(KIND=1) is restricted to the following case:

     REAL(AIMAG(Z))

This expression converts the imaginary part of Z to REAL(KIND=1).

See REAL() and AIMAG() of Complex, for more information.


Next: , Previous: AImag Intrinsic, Up: Table of Intrinsic Functions
8.11.9.9 AInt Intrinsic

     AInt(A)

AInt: REAL function, the KIND= value of the type being that of argument A.

A: REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns A with the fractional portion of its magnitude truncated and its sign preserved. (Also called “truncation towards zero”.)

See ANInt Intrinsic, for how to round to nearest whole number.

See Int Intrinsic, for how to truncate and then convert number to INTEGER.


Next: , Previous: AInt Intrinsic, Up: Table of Intrinsic Functions
8.11.9.10 Alarm Intrinsic

     CALL Alarm(Seconds, Handler, Status)

Seconds: INTEGER; scalar; INTENT(IN).

Handler: Signal handler (INTEGER FUNCTION or SUBROUTINE) or dummy/global INTEGER(KIND=1) scalar.

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Causes external subroutine Handler to be executed after a delay of Seconds seconds by using alarm(1) to set up a signal and signal(2) to catch it. If Status is supplied, it will be returned with the number of seconds remaining until any previously scheduled alarm was due to be delivered, or zero if there was no previously scheduled alarm. See Signal Intrinsic (subroutine).


Next: , Previous: Alarm Intrinsic, Up: Table of Intrinsic Functions
8.11.9.11 All Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL All to use this name for an external procedure.


Next: , Previous: All Intrinsic, Up: Table of Intrinsic Functions
8.11.9.12 Allocated Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Allocated to use this name for an external procedure.


Next: , Previous: Allocated Intrinsic, Up: Table of Intrinsic Functions
8.11.9.13 ALog Intrinsic

     ALog(X)

ALog: REAL(KIND=1) function.

X: REAL(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of LOG() that is specific to one type for X. See Log Intrinsic.


Next: , Previous: ALog Intrinsic, Up: Table of Intrinsic Functions
8.11.9.14 ALog10 Intrinsic

     ALog10(X)

ALog10: REAL(KIND=1) function.

X: REAL(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of LOG10() that is specific to one type for X. See Log10 Intrinsic.


Next: , Previous: ALog10 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.15 AMax0 Intrinsic

     AMax0(A-1, A-2, ..., A-n)

AMax0: REAL(KIND=1) function.

A: INTEGER(KIND=1); at least two such arguments must be provided; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of MAX() that is specific to one type for A and a different return type. See Max Intrinsic.


Next: , Previous: AMax0 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.16 AMax1 Intrinsic

     AMax1(A-1, A-2, ..., A-n)

AMax1: REAL(KIND=1) function.

A: REAL(KIND=1); at least two such arguments must be provided; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of MAX() that is specific to one type for A. See Max Intrinsic.


Next: , Previous: AMax1 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.17 AMin0 Intrinsic

     AMin0(A-1, A-2, ..., A-n)

AMin0: REAL(KIND=1) function.

A: INTEGER(KIND=1); at least two such arguments must be provided; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of MIN() that is specific to one type for A and a different return type. See Min Intrinsic.


Next: , Previous: AMin0 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.18 AMin1 Intrinsic

     AMin1(A-1, A-2, ..., A-n)

AMin1: REAL(KIND=1) function.

A: REAL(KIND=1); at least two such arguments must be provided; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of MIN() that is specific to one type for A. See Min Intrinsic.


Next: , Previous: AMin1 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.19 AMod Intrinsic

     AMod(A, P)

AMod: REAL(KIND=1) function.

A: REAL(KIND=1); scalar; INTENT(IN).

P: REAL(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of MOD() that is specific to one type for A. See Mod Intrinsic.


Next: , Previous: AMod Intrinsic, Up: Table of Intrinsic Functions
8.11.9.20 And Intrinsic

     And(I, J)

And: INTEGER or LOGICAL function, the exact type being the result of cross-promoting the types of all the arguments.

I: INTEGER or LOGICAL; scalar; INTENT(IN).

J: INTEGER or LOGICAL; scalar; INTENT(IN).

Intrinsic groups: f2c.

Description:

Returns value resulting from boolean AND of pair of bits in each of I and J.


Next: , Previous: And Intrinsic, Up: Table of Intrinsic Functions
8.11.9.21 ANInt Intrinsic

     ANInt(A)

ANInt: REAL function, the KIND= value of the type being that of argument A.

A: REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns A with the fractional portion of its magnitude eliminated by rounding to the nearest whole number and with its sign preserved.

A fractional portion exactly equal to .5 is rounded to the whole number that is larger in magnitude. (Also called “Fortran round”.)

See AInt Intrinsic, for how to truncate to whole number.

See NInt Intrinsic, for how to round and then convert number to INTEGER.


Next: , Previous: ANInt Intrinsic, Up: Table of Intrinsic Functions
8.11.9.22 Any Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Any to use this name for an external procedure.


Next: , Previous: Any Intrinsic, Up: Table of Intrinsic Functions
8.11.9.23 ASin Intrinsic

     ASin(X)

ASin: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the arc-sine (inverse sine) of X in radians.

See Sin Intrinsic, for the inverse of this function.


Next: , Previous: ASin Intrinsic, Up: Table of Intrinsic Functions
8.11.9.24 Associated Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Associated to use this name for an external procedure.


Next: , Previous: Associated Intrinsic, Up: Table of Intrinsic Functions
8.11.9.25 ATan Intrinsic

     ATan(X)

ATan: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the arc-tangent (inverse tangent) of X in radians.

See Tan Intrinsic, for the inverse of this function.


Next: , Previous: ATan Intrinsic, Up: Table of Intrinsic Functions
8.11.9.26 ATan2 Intrinsic

     ATan2(Y, X)

ATan2: REAL function, the exact type being the result of cross-promoting the types of all the arguments.

Y: REAL; scalar; INTENT(IN).

X: REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the arc-tangent (inverse tangent) of the complex number (Y, X) in radians.

See Tan Intrinsic, for the inverse of this function.


Next: , Previous: ATan2 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.27 BesJ0 Intrinsic

     BesJ0(X)

BesJ0: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Calculates the Bessel function of the first kind of order 0 of X. See bessel(3m), on whose implementation the function depends.


Next: , Previous: BesJ0 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.28 BesJ1 Intrinsic

     BesJ1(X)

BesJ1: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Calculates the Bessel function of the first kind of order 1 of X. See bessel(3m), on whose implementation the function depends.


Next: , Previous: BesJ1 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.29 BesJN Intrinsic

     BesJN(N, X)

BesJN: REAL function, the KIND= value of the type being that of argument X.

N: INTEGER not wider than the default kind; scalar; INTENT(IN).

X: REAL; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Calculates the Bessel function of the first kind of order N of X. See bessel(3m), on whose implementation the function depends.


Next: , Previous: BesJN Intrinsic, Up: Table of Intrinsic Functions
8.11.9.30 BesY0 Intrinsic

     BesY0(X)

BesY0: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Calculates the Bessel function of the second kind of order 0 of X. See bessel(3m), on whose implementation the function depends.


Next: , Previous: BesY0 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.31 BesY1 Intrinsic

     BesY1(X)

BesY1: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Calculates the Bessel function of the second kind of order 1 of X. See bessel(3m), on whose implementation the function depends.


Next: , Previous: BesY1 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.32 BesYN Intrinsic

     BesYN(N, X)

BesYN: REAL function, the KIND= value of the type being that of argument X.

N: INTEGER not wider than the default kind; scalar; INTENT(IN).

X: REAL; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Calculates the Bessel function of the second kind of order N of X. See bessel(3m), on whose implementation the function depends.


Next: , Previous: BesYN Intrinsic, Up: Table of Intrinsic Functions
8.11.9.33 Bit_Size Intrinsic

     Bit_Size(I)

Bit_Size: INTEGER function, the KIND= value of the type being that of argument I.

I: INTEGER; scalar.

Intrinsic groups: f90.

Description:

Returns the number of bits (integer precision plus sign bit) represented by the type for I.

See BTest Intrinsic, for how to test the value of a bit in a variable or array.

See IBSet Intrinsic, for how to set a bit in a variable to 1.

See IBClr Intrinsic, for how to set a bit in a variable to 0.


Next: , Previous: Bit_Size Intrinsic, Up: Table of Intrinsic Functions
8.11.9.34 BTest Intrinsic

     BTest(I, Pos)

BTest: LOGICAL(KIND=1) function.

I: INTEGER; scalar; INTENT(IN).

Pos: INTEGER; scalar; INTENT(IN).

Intrinsic groups: mil, f90, vxt.

Description:

Returns .TRUE. if bit Pos in I is 1, .FALSE. otherwise.

(Bit 0 is the low-order (rightmost) bit, adding the value or 1, to the number if set to 1; bit 1 is the next-higher-order bit, adding or 2; bit 2 adds or 4; and so on.)

See Bit_Size Intrinsic, for how to obtain the number of bits in a type. The leftmost bit of I is BIT_SIZE(I-1).


Next: , Previous: BTest Intrinsic, Up: Table of Intrinsic Functions
8.11.9.35 CAbs Intrinsic

     CAbs(A)

CAbs: REAL(KIND=1) function.

A: COMPLEX(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of ABS() that is specific to one type for A. See Abs Intrinsic.


Next: , Previous: CAbs Intrinsic, Up: Table of Intrinsic Functions
8.11.9.36 CCos Intrinsic

     CCos(X)

CCos: COMPLEX(KIND=1) function.

X: COMPLEX(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of COS() that is specific to one type for X. See Cos Intrinsic.


Next: , Previous: CCos Intrinsic, Up: Table of Intrinsic Functions
8.11.9.37 Ceiling Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Ceiling to use this name for an external procedure.


Next: , Previous: Ceiling Intrinsic, Up: Table of Intrinsic Functions
8.11.9.38 CExp Intrinsic

     CExp(X)

CExp: COMPLEX(KIND=1) function.

X: COMPLEX(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of EXP() that is specific to one type for X. See Exp Intrinsic.


Next: , Previous: CExp Intrinsic, Up: Table of Intrinsic Functions
8.11.9.39 Char Intrinsic

     Char(I)

Char: CHARACTER*1 function.

I: INTEGER; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the character corresponding to the code specified by I, using the system's native character set.

Because the system's native character set is used, the correspondence between character and their codes is not necessarily the same between GNU Fortran implementations.

Note that no intrinsic exists to convert a numerical value to a printable character string. For example, there is no intrinsic that, given an INTEGER or REAL argument with the value 154, returns the CHARACTER result '154'.

Instead, you can use internal-file I/O to do this kind of conversion. For example:

     INTEGER VALUE
     CHARACTER*10 STRING
     VALUE = 154
     WRITE (STRING, '(I10)'), VALUE
     PRINT *, STRING
     END

The above program, when run, prints:

             154

See IChar Intrinsic, for the inverse of the CHAR function.

See AChar Intrinsic, for the function corresponding to the ASCII character set.


Next: , Previous: Char Intrinsic, Up: Table of Intrinsic Functions
8.11.9.40 ChDir Intrinsic (subroutine)

     CALL ChDir(Dir, Status)

Dir: CHARACTER; scalar; INTENT(IN).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Sets the current working directory to be Dir. If the Status argument is supplied, it contains 0 on success or a nonzero error code otherwise upon return. See chdir(3).

Caution: Using this routine during I/O to a unit connected with a non-absolute file name can cause subsequent I/O on such a unit to fail because the I/O library might reopen files by name.

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

For information on other intrinsics with the same name: See ChDir Intrinsic (function).


Next: , Previous: ChDir Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.41 ChMod Intrinsic (subroutine)

     CALL ChMod(Name, Mode, Status)

Name: CHARACTER; scalar; INTENT(IN).

Mode: CHARACTER; scalar; INTENT(IN).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Changes the access mode of file Name according to the specification Mode, which is given in the format of chmod(1). A null character (CHAR(0)) marks the end of the name in Name—otherwise, trailing blanks in Name are ignored. Currently, Name must not contain the single quote character.

If the Status argument is supplied, it contains 0 on success or a nonzero error code upon return.

Note that this currently works by actually invoking /bin/chmod (or the chmod found when the library was configured) and so might fail in some circumstances and will, anyway, be slow.

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

For information on other intrinsics with the same name: See ChMod Intrinsic (function).


Next: , Previous: ChMod Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.42 CLog Intrinsic

     CLog(X)

CLog: COMPLEX(KIND=1) function.

X: COMPLEX(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of LOG() that is specific to one type for X. See Log Intrinsic.


Next: , Previous: CLog Intrinsic, Up: Table of Intrinsic Functions
8.11.9.43 Cmplx Intrinsic

     Cmplx(X, Y)

Cmplx: COMPLEX(KIND=1) function.

X: INTEGER, REAL, or COMPLEX; scalar; INTENT(IN).

Y: INTEGER or REAL; OPTIONAL (must be omitted if X is COMPLEX); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

If X is not type COMPLEX, constructs a value of type COMPLEX(KIND=1) from the real and imaginary values specified by X and Y, respectively. If Y is omitted, 0. is assumed.

If X is type COMPLEX, converts it to type COMPLEX(KIND=1).

See Complex Intrinsic, for information on easily constructing a COMPLEX value of arbitrary precision from REAL arguments.


Next: , Previous: Cmplx Intrinsic, Up: Table of Intrinsic Functions
8.11.9.44 Complex Intrinsic

     Complex(Real, Imag)

Complex: COMPLEX function, the exact type being the result of cross-promoting the types of all the arguments.

Real: INTEGER or REAL; scalar; INTENT(IN).

Imag: INTEGER or REAL; scalar; INTENT(IN).

Intrinsic groups: gnu.

Description:

Returns a COMPLEX value that has Real and Imag as its real and imaginary parts, respectively.

If Real and Imag are the same type, and that type is not INTEGER, no data conversion is performed, and the type of the resulting value has the same kind value as the types of Real and Imag.

If Real and Imag are not the same type, the usual type-promotion rules are applied to both, converting either or both to the appropriate REAL type. The type of the resulting value has the same kind value as the type to which both Real and Imag were converted, in this case.

If Real and Imag are both INTEGER, they are both converted to REAL(KIND=1), and the result of the COMPLEX() invocation is type COMPLEX(KIND=1).

Note: The way to do this in standard Fortran 90 is too hairy to describe here, but it is important to note that CMPLX(D1,D2) returns a COMPLEX(KIND=1) result even if D1 and D2 are type REAL(KIND=2). Hence the availability of COMPLEX() in GNU Fortran.


Next: , Previous: Complex Intrinsic, Up: Table of Intrinsic Functions
8.11.9.45 Conjg Intrinsic

     Conjg(Z)

Conjg: COMPLEX function, the KIND= value of the type being that of argument Z.

Z: COMPLEX; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the complex conjugate:

     COMPLEX(REALPART(Z), -IMAGPART(Z))


Next: , Previous: Conjg Intrinsic, Up: Table of Intrinsic Functions
8.11.9.46 Cos Intrinsic

     Cos(X)

Cos: REAL or COMPLEX function, the exact type being that of argument X.

X: REAL or COMPLEX; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the cosine of X, an angle measured in radians.

See ACos Intrinsic, for the inverse of this function.


Next: , Previous: Cos Intrinsic, Up: Table of Intrinsic Functions
8.11.9.47 CosH Intrinsic

     CosH(X)

CosH: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the hyperbolic cosine of X.


Next: , Previous: CosH Intrinsic, Up: Table of Intrinsic Functions
8.11.9.48 Count Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Count to use this name for an external procedure.


Next: , Previous: Count Intrinsic, Up: Table of Intrinsic Functions
8.11.9.49 CPU_Time Intrinsic

     CALL CPU_Time(Seconds)

Seconds: REAL; scalar; INTENT(OUT).

Intrinsic groups: f90.

Description:

Returns in Seconds the current value of the system time. This implementation of the Fortran 95 intrinsic is just an alias for second See Second Intrinsic (subroutine).

On some systems, the underlying timings are represented using types with sufficiently small limits that overflows (wraparounds) are possible, such as 32-bit types. Therefore, the values returned by this intrinsic might be, or become, negative, or numerically less than previous values, during a single run of the compiled program.


Next: , Previous: CPU_Time Intrinsic, Up: Table of Intrinsic Functions
8.11.9.50 CShift Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL CShift to use this name for an external procedure.


Next: , Previous: CShift Intrinsic, Up: Table of Intrinsic Functions
8.11.9.51 CSin Intrinsic

     CSin(X)

CSin: COMPLEX(KIND=1) function.

X: COMPLEX(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of SIN() that is specific to one type for X. See Sin Intrinsic.


Next: , Previous: CSin Intrinsic, Up: Table of Intrinsic Functions
8.11.9.52 CSqRt Intrinsic

     CSqRt(X)

CSqRt: COMPLEX(KIND=1) function.

X: COMPLEX(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of SQRT() that is specific to one type for X. See SqRt Intrinsic.


Next: , Previous: CSqRt Intrinsic, Up: Table of Intrinsic Functions
8.11.9.53 CTime Intrinsic (subroutine)

     CALL CTime(STime, Result)

STime: INTEGER; scalar; INTENT(IN).

Result: CHARACTER; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Converts STime, a system time value, such as returned by TIME8(), to a string of the form Sat Aug 19 18:13:14 1995, and returns that string in Result.

See Time8 Intrinsic.

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine.

For information on other intrinsics with the same name: See CTime Intrinsic (function).


Next: , Previous: CTime Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.54 CTime Intrinsic (function)

     CTime(STime)

CTime: CHARACTER*(*) function.

STime: INTEGER; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Converts STime, a system time value, such as returned by TIME8(), to a string of the form Sat Aug 19 18:13:14 1995, and returns that string as the function value.

See Time8 Intrinsic.

For information on other intrinsics with the same name: See CTime Intrinsic (subroutine).


Next: , Previous: CTime Intrinsic (function), Up: Table of Intrinsic Functions
8.11.9.55 DAbs Intrinsic

     DAbs(A)

DAbs: REAL(KIND=2) function.

A: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of ABS() that is specific to one type for A. See Abs Intrinsic.


Next: , Previous: DAbs Intrinsic, Up: Table of Intrinsic Functions
8.11.9.56 DACos Intrinsic

     DACos(X)

DACos: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of ACOS() that is specific to one type for X. See ACos Intrinsic.


Next: , Previous: DACos Intrinsic, Up: Table of Intrinsic Functions
8.11.9.57 DASin Intrinsic

     DASin(X)

DASin: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of ASIN() that is specific to one type for X. See ASin Intrinsic.


Next: , Previous: DASin Intrinsic, Up: Table of Intrinsic Functions
8.11.9.58 DATan Intrinsic

     DATan(X)

DATan: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of ATAN() that is specific to one type for X. See ATan Intrinsic.


Next: , Previous: DATan Intrinsic, Up: Table of Intrinsic Functions
8.11.9.59 DATan2 Intrinsic

     DATan2(Y, X)

DATan2: REAL(KIND=2) function.

Y: REAL(KIND=2); scalar; INTENT(IN).

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of ATAN2() that is specific to one type for Y and X. See ATan2 Intrinsic.


Next: , Previous: DATan2 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.60 Date_and_Time Intrinsic

     CALL Date_and_Time(Date, Time, Zone, Values)

Date: CHARACTER; scalar; INTENT(OUT).

Time: CHARACTER; OPTIONAL; scalar; INTENT(OUT).

Zone: CHARACTER; OPTIONAL; scalar; INTENT(OUT).

Values: INTEGER(KIND=1); OPTIONAL; DIMENSION(8); INTENT(OUT).

Intrinsic groups: f90.

Description:

Returns:

Date
The date in the form ccyymmdd: century, year, month and day;
Time
The time in the form hhmmss.ss: hours, minutes, seconds and milliseconds;
Zone
The difference between local time and UTC (GMT) in the form Shhmm: sign, hours and minutes, e.g. -0500 (winter in New York);
Values
The year, month of the year, day of the month, time difference in minutes from UTC, hour of the day, minutes of the hour, seconds of the minute, and milliseconds of the second in successive values of the array.

Programs making use of this intrinsic might not be Year 10000 (Y10K) compliant. For example, the date might appear, to such programs, to wrap around (change from a larger value to a smaller one) as of the Year 10000.

On systems where a millisecond timer isn't available, the millisecond value is returned as zero.


Next: , Previous: Date_and_Time Intrinsic, Up: Table of Intrinsic Functions
8.11.9.61 DbesJ0 Intrinsic

     DbesJ0(X)

DbesJ0: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Archaic form of BESJ0() that is specific to one type for X. See BesJ0 Intrinsic.


Next: , Previous: DbesJ0 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.62 DbesJ1 Intrinsic

     DbesJ1(X)

DbesJ1: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Archaic form of BESJ1() that is specific to one type for X. See BesJ1 Intrinsic.


Next: , Previous: DbesJ1 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.63 DbesJN Intrinsic

     DbesJN(N, X)

DbesJN: REAL(KIND=2) function.

N: INTEGER not wider than the default kind; scalar; INTENT(IN).

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Archaic form of BESJN() that is specific to one type for X. See BesJN Intrinsic.


Next: , Previous: DbesJN Intrinsic, Up: Table of Intrinsic Functions
8.11.9.64 DbesY0 Intrinsic

     DbesY0(X)

DbesY0: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Archaic form of BESY0() that is specific to one type for X. See BesY0 Intrinsic.


Next: , Previous: DbesY0 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.65 DbesY1 Intrinsic

     DbesY1(X)

DbesY1: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Archaic form of BESY1() that is specific to one type for X. See BesY1 Intrinsic.


Next: , Previous: DbesY1 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.66 DbesYN Intrinsic

     DbesYN(N, X)

DbesYN: REAL(KIND=2) function.

N: INTEGER not wider than the default kind; scalar; INTENT(IN).

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Archaic form of BESYN() that is specific to one type for X. See BesYN Intrinsic.


Next: , Previous: DbesYN Intrinsic, Up: Table of Intrinsic Functions
8.11.9.67 Dble Intrinsic

     Dble(A)

Dble: REAL(KIND=2) function.

A: INTEGER, REAL, or COMPLEX; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns A converted to double precision (REAL(KIND=2)). If A is COMPLEX, the real part of A is used for the conversion and the imaginary part disregarded.

See Sngl Intrinsic, for the function that converts to single precision.

See Int Intrinsic, for the function that converts to INTEGER.

See Complex Intrinsic, for the function that converts to COMPLEX.


Next: , Previous: Dble Intrinsic, Up: Table of Intrinsic Functions
8.11.9.68 DCos Intrinsic

     DCos(X)

DCos: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of COS() that is specific to one type for X. See Cos Intrinsic.


Next: , Previous: DCos Intrinsic, Up: Table of Intrinsic Functions
8.11.9.69 DCosH Intrinsic

     DCosH(X)

DCosH: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of COSH() that is specific to one type for X. See CosH Intrinsic.


Next: , Previous: DCosH Intrinsic, Up: Table of Intrinsic Functions
8.11.9.70 DDiM Intrinsic

     DDiM(X, Y)

DDiM: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Y: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of DIM() that is specific to one type for X and Y. See DiM Intrinsic.


Next: , Previous: DDiM Intrinsic, Up: Table of Intrinsic Functions
8.11.9.71 DErF Intrinsic

     DErF(X)

DErF: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Archaic form of ERF() that is specific to one type for X. See ErF Intrinsic.


Next: , Previous: DErF Intrinsic, Up: Table of Intrinsic Functions
8.11.9.72 DErFC Intrinsic

     DErFC(X)

DErFC: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Archaic form of ERFC() that is specific to one type for X. See ErFC Intrinsic.


Next: , Previous: DErFC Intrinsic, Up: Table of Intrinsic Functions
8.11.9.73 DExp Intrinsic

     DExp(X)

DExp: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of EXP() that is specific to one type for X. See Exp Intrinsic.


Next: , Previous: DExp Intrinsic, Up: Table of Intrinsic Functions
8.11.9.74 Digits Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Digits to use this name for an external procedure.


Next: , Previous: Digits Intrinsic, Up: Table of Intrinsic Functions
8.11.9.75 DiM Intrinsic

     DiM(X, Y)

DiM: INTEGER or REAL function, the exact type being the result of cross-promoting the types of all the arguments.

X: INTEGER or REAL; scalar; INTENT(IN).

Y: INTEGER or REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns X-Y if X is greater than Y; otherwise returns zero.


Next: , Previous: DiM Intrinsic, Up: Table of Intrinsic Functions
8.11.9.76 DInt Intrinsic

     DInt(A)

DInt: REAL(KIND=2) function.

A: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of AINT() that is specific to one type for A. See AInt Intrinsic.


Next: , Previous: DInt Intrinsic, Up: Table of Intrinsic Functions
8.11.9.77 DLog Intrinsic

     DLog(X)

DLog: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of LOG() that is specific to one type for X. See Log Intrinsic.


Next: , Previous: DLog Intrinsic, Up: Table of Intrinsic Functions
8.11.9.78 DLog10 Intrinsic

     DLog10(X)

DLog10: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of LOG10() that is specific to one type for X. See Log10 Intrinsic.


Next: , Previous: DLog10 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.79 DMax1 Intrinsic

     DMax1(A-1, A-2, ..., A-n)

DMax1: REAL(KIND=2) function.

A: REAL(KIND=2); at least two such arguments must be provided; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of MAX() that is specific to one type for A. See Max Intrinsic.


Next: , Previous: DMax1 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.80 DMin1 Intrinsic

     DMin1(A-1, A-2, ..., A-n)

DMin1: REAL(KIND=2) function.

A: REAL(KIND=2); at least two such arguments must be provided; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of MIN() that is specific to one type for A. See Min Intrinsic.


Next: , Previous: DMin1 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.81 DMod Intrinsic

     DMod(A, P)

DMod: REAL(KIND=2) function.

A: REAL(KIND=2); scalar; INTENT(IN).

P: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of MOD() that is specific to one type for A. See Mod Intrinsic.


Next: , Previous: DMod Intrinsic, Up: Table of Intrinsic Functions
8.11.9.82 DNInt Intrinsic

     DNInt(A)

DNInt: REAL(KIND=2) function.

A: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of ANINT() that is specific to one type for A. See ANInt Intrinsic.


Next: , Previous: DNInt Intrinsic, Up: Table of Intrinsic Functions
8.11.9.83 Dot_Product Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Dot_Product to use this name for an external procedure.


Next: , Previous: Dot_Product Intrinsic, Up: Table of Intrinsic Functions
8.11.9.84 DProd Intrinsic

     DProd(X, Y)

DProd: REAL(KIND=2) function.

X: REAL(KIND=1); scalar; INTENT(IN).

Y: REAL(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns DBLE(X)*DBLE(Y).


Next: , Previous: DProd Intrinsic, Up: Table of Intrinsic Functions
8.11.9.85 DSign Intrinsic

     DSign(A, B)

DSign: REAL(KIND=2) function.

A: REAL(KIND=2); scalar; INTENT(IN).

B: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of SIGN() that is specific to one type for A and B. See Sign Intrinsic.


Next: , Previous: DSign Intrinsic, Up: Table of Intrinsic Functions
8.11.9.86 DSin Intrinsic

     DSin(X)

DSin: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of SIN() that is specific to one type for X. See Sin Intrinsic.


Next: , Previous: DSin Intrinsic, Up: Table of Intrinsic Functions
8.11.9.87 DSinH Intrinsic

     DSinH(X)

DSinH: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of SINH() that is specific to one type for X. See SinH Intrinsic.


Next: , Previous: DSinH Intrinsic, Up: Table of Intrinsic Functions
8.11.9.88 DSqRt Intrinsic

     DSqRt(X)

DSqRt: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of SQRT() that is specific to one type for X. See SqRt Intrinsic.


Next: , Previous: DSqRt Intrinsic, Up: Table of Intrinsic Functions
8.11.9.89 DTan Intrinsic

     DTan(X)

DTan: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of TAN() that is specific to one type for X. See Tan Intrinsic.


Next: , Previous: DTan Intrinsic, Up: Table of Intrinsic Functions
8.11.9.90 DTanH Intrinsic

     DTanH(X)

DTanH: REAL(KIND=2) function.

X: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of TANH() that is specific to one type for X. See TanH Intrinsic.


Next: , Previous: DTanH Intrinsic, Up: Table of Intrinsic Functions
8.11.9.91 DTime Intrinsic (subroutine)

     CALL DTime(TArray, Result)

TArray: REAL(KIND=1); DIMENSION(2); INTENT(OUT).

Result: REAL(KIND=1); scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Initially, return the number of seconds of runtime since the start of the process's execution in Result, and the user and system components of this in TArray(1) and TArray(2) respectively. The value of Result is equal to TArray(1) + TArray(2).

Subsequent invocations of DTIME() set values based on accumulations since the previous invocation.

On some systems, the underlying timings are represented using types with sufficiently small limits that overflows (wraparounds) are possible, such as 32-bit types. Therefore, the values returned by this intrinsic might be, or become, negative, or numerically less than previous values, during a single run of the compiled program.

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine.

For information on other intrinsics with the same name: See DTime Intrinsic (function).


Next: , Previous: DTime Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.92 EOShift Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL EOShift to use this name for an external procedure.


Next: , Previous: EOShift Intrinsic, Up: Table of Intrinsic Functions
8.11.9.93 Epsilon Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Epsilon to use this name for an external procedure.


Next: , Previous: Epsilon Intrinsic, Up: Table of Intrinsic Functions
8.11.9.94 ErF Intrinsic

     ErF(X)

ErF: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Returns the error function of X. See erf(3m), which provides the implementation.


Next: , Previous: ErF Intrinsic, Up: Table of Intrinsic Functions
8.11.9.95 ErFC Intrinsic

     ErFC(X)

ErFC: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Returns the complementary error function of X: ERFC(R) = 1 - ERF(R) (except that the result might be more accurate than explicitly evaluating that formulae would give). See erfc(3m), which provides the implementation.


Next: , Previous: ErFC Intrinsic, Up: Table of Intrinsic Functions
8.11.9.96 ETime Intrinsic (subroutine)

     CALL ETime(TArray, Result)

TArray: REAL(KIND=1); DIMENSION(2); INTENT(OUT).

Result: REAL(KIND=1); scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Return the number of seconds of runtime since the start of the process's execution in Result, and the user and system components of this in TArray(1) and TArray(2) respectively. The value of Result is equal to TArray(1) + TArray(2).

On some systems, the underlying timings are represented using types with sufficiently small limits that overflows (wraparounds) are possible, such as 32-bit types. Therefore, the values returned by this intrinsic might be, or become, negative, or numerically less than previous values, during a single run of the compiled program.

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine.

For information on other intrinsics with the same name: See ETime Intrinsic (function).


Next: , Previous: ETime Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.97 ETime Intrinsic (function)

     ETime(TArray)

ETime: REAL(KIND=1) function.

TArray: REAL(KIND=1); DIMENSION(2); INTENT(OUT).

Intrinsic groups: unix.

Description:

Return the number of seconds of runtime since the start of the process's execution as the function value, and the user and system components of this in TArray(1) and TArray(2) respectively. The functions' value is equal to TArray(1) + TArray(2).

On some systems, the underlying timings are represented using types with sufficiently small limits that overflows (wraparounds) are possible, such as 32-bit types. Therefore, the values returned by this intrinsic might be, or become, negative, or numerically less than previous values, during a single run of the compiled program.

For information on other intrinsics with the same name: See ETime Intrinsic (subroutine).


Next: , Previous: ETime Intrinsic (function), Up: Table of Intrinsic Functions
8.11.9.98 Exit Intrinsic

     CALL Exit(Status)

Status: INTEGER not wider than the default kind; OPTIONAL; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Exit the program with status Status after closing open Fortran I/O units and otherwise behaving as exit(2). If Status is omitted the canonical `success' value will be returned to the system.


Next: , Previous: Exit Intrinsic, Up: Table of Intrinsic Functions
8.11.9.99 Exp Intrinsic

     Exp(X)

Exp: REAL or COMPLEX function, the exact type being that of argument X.

X: REAL or COMPLEX; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns e**X, where e is approximately 2.7182818.

See Log Intrinsic, for the inverse of this function.


Next: , Previous: Exp Intrinsic, Up: Table of Intrinsic Functions
8.11.9.100 Exponent Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Exponent to use this name for an external procedure.


Next: , Previous: Exponent Intrinsic, Up: Table of Intrinsic Functions
8.11.9.101 FDate Intrinsic (subroutine)

     CALL FDate(Date)

Date: CHARACTER; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Returns the current date (using the same format as CTIME()) in Date.

Equivalent to:

     CALL CTIME(Date, TIME8())

Programs making use of this intrinsic might not be Year 10000 (Y10K) compliant. For example, the date might appear, to such programs, to wrap around (change from a larger value to a smaller one) as of the Year 10000.

See CTime Intrinsic (subroutine).

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine.

For information on other intrinsics with the same name: See FDate Intrinsic (function).


Next: , Previous: FDate Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.102 FDate Intrinsic (function)

     FDate()

FDate: CHARACTER*(*) function.

Intrinsic groups: unix.

Description:

Returns the current date (using the same format as CTIME()).

Equivalent to:

     CTIME(TIME8())

Programs making use of this intrinsic might not be Year 10000 (Y10K) compliant. For example, the date might appear, to such programs, to wrap around (change from a larger value to a smaller one) as of the Year 10000.

See CTime Intrinsic (function).

For information on other intrinsics with the same name: See FDate Intrinsic (subroutine).


Next: , Previous: FDate Intrinsic (function), Up: Table of Intrinsic Functions
8.11.9.103 FGet Intrinsic (subroutine)

     CALL FGet(C, Status)

C: CHARACTER; scalar; INTENT(OUT).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Reads a single character into C in stream mode from unit 5 (by-passing normal formatted output) using getc(3). Returns in Status 0 on success, −1 on end-of-file, and the error code from ferror(3) otherwise.

Stream I/O should not be mixed with normal record-oriented (formatted or unformatted) I/O on the same unit; the results are unpredictable.

For information on other intrinsics with the same name: See FGet Intrinsic (function).


Next: , Previous: FGet Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.104 FGetC Intrinsic (subroutine)

     CALL FGetC(Unit, C, Status)

Unit: INTEGER; scalar; INTENT(IN).

C: CHARACTER; scalar; INTENT(OUT).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Reads a single character into C in stream mode from unit Unit (by-passing normal formatted output) using getc(3). Returns in Status 0 on success, −1 on end-of-file, and the error code from ferror(3) otherwise.

Stream I/O should not be mixed with normal record-oriented (formatted or unformatted) I/O on the same unit; the results are unpredictable.

For information on other intrinsics with the same name: See FGetC Intrinsic (function).


Next: , Previous: FGetC Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.105 Float Intrinsic

     Float(A)

Float: REAL(KIND=1) function.

A: INTEGER; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of REAL() that is specific to one type for A. See Real Intrinsic.


Next: , Previous: Float Intrinsic, Up: Table of Intrinsic Functions
8.11.9.106 Floor Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Floor to use this name for an external procedure.


Next: , Previous: Floor Intrinsic, Up: Table of Intrinsic Functions
8.11.9.107 Flush Intrinsic

     CALL Flush(Unit)

Unit: INTEGER; OPTIONAL; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Flushes Fortran unit(s) currently open for output. Without the optional argument, all such units are flushed, otherwise just the unit specified by Unit.

Some non-GNU implementations of Fortran provide this intrinsic as a library procedure that might or might not support the (optional) Unit argument.


Next: , Previous: Flush Intrinsic, Up: Table of Intrinsic Functions
8.11.9.108 FNum Intrinsic

     FNum(Unit)

FNum: INTEGER(KIND=1) function.

Unit: INTEGER; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Returns the Unix file descriptor number corresponding to the open Fortran I/O unit Unit. This could be passed to an interface to C I/O routines.


Next: , Previous: FNum Intrinsic, Up: Table of Intrinsic Functions
8.11.9.109 FPut Intrinsic (subroutine)

     CALL FPut(C, Status)

C: CHARACTER; scalar; INTENT(IN).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Writes the single character C in stream mode to unit 6 (by-passing normal formatted output) using putc(3). Returns in Status 0 on success, the error code from ferror(3) otherwise.

Stream I/O should not be mixed with normal record-oriented (formatted or unformatted) I/O on the same unit; the results are unpredictable.

For information on other intrinsics with the same name: See FPut Intrinsic (function).


Next: , Previous: FPut Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.110 FPutC Intrinsic (subroutine)

     CALL FPutC(Unit, C, Status)

Unit: INTEGER; scalar; INTENT(IN).

C: CHARACTER; scalar; INTENT(IN).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Writes the single character Unit in stream mode to unit 6 (by-passing normal formatted output) using putc(3). Returns in C 0 on success, the error code from ferror(3) otherwise.

Stream I/O should not be mixed with normal record-oriented (formatted or unformatted) I/O on the same unit; the results are unpredictable.

For information on other intrinsics with the same name: See FPutC Intrinsic (function).


Next: , Previous: FPutC Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.111 Fraction Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Fraction to use this name for an external procedure.


Next: , Previous: Fraction Intrinsic, Up: Table of Intrinsic Functions
8.11.9.112 FSeek Intrinsic

     CALL FSeek(Unit, Offset, Whence, ErrLab)

Unit: INTEGER; scalar; INTENT(IN).

Offset: INTEGER; scalar; INTENT(IN).

Whence: INTEGER; scalar; INTENT(IN).

ErrLab: *label, where label is the label of an executable statement; OPTIONAL.

Intrinsic groups: unix.

Description:

Attempts to move Fortran unit Unit to the specified Offset: absolute offset if Whence=0; relative to the current offset if Whence=1; relative to the end of the file if Whence=2. It branches to label ErrLab if Unit is not open or if the call otherwise fails.


Next: , Previous: FSeek Intrinsic, Up: Table of Intrinsic Functions
8.11.9.113 FStat Intrinsic (subroutine)

     CALL FStat(Unit, SArray, Status)

Unit: INTEGER; scalar; INTENT(IN).

SArray: INTEGER(KIND=1); DIMENSION(13); INTENT(OUT).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Obtains data about the file open on Fortran I/O unit Unit and places them in the array SArray. The values in this array are extracted from the stat structure as returned by fstat(2) q.v., as follows:

  1. Device ID
  2. Inode number
  3. File mode
  4. Number of links
  5. Owner's uid
  6. Owner's gid
  7. ID of device containing directory entry for file (0 if not available)
  8. File size (bytes)
  9. Last access time
  10. Last modification time
  11. Last file status change time
  12. Preferred I/O block size (-1 if not available)
  13. Number of blocks allocated (-1 if not available)

Not all these elements are relevant on all systems. If an element is not relevant, it is returned as 0.

If the Status argument is supplied, it contains 0 on success or a nonzero error code upon return.

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

For information on other intrinsics with the same name: See FStat Intrinsic (function).


Next: , Previous: FStat Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.114 FStat Intrinsic (function)

     FStat(Unit, SArray)

FStat: INTEGER(KIND=1) function.

Unit: INTEGER; scalar; INTENT(IN).

SArray: INTEGER(KIND=1); DIMENSION(13); INTENT(OUT).

Intrinsic groups: unix.

Description:

Obtains data about the file open on Fortran I/O unit Unit and places them in the array SArray. The values in this array are extracted from the stat structure as returned by fstat(2) q.v., as follows:

  1. Device ID
  2. Inode number
  3. File mode
  4. Number of links
  5. Owner's uid
  6. Owner's gid
  7. ID of device containing directory entry for file (0 if not available)
  8. File size (bytes)
  9. Last access time
  10. Last modification time
  11. Last file status change time
  12. Preferred I/O block size (-1 if not available)
  13. Number of blocks allocated (-1 if not available)

Not all these elements are relevant on all systems. If an element is not relevant, it is returned as 0.

Returns 0 on success or a nonzero error code.

For information on other intrinsics with the same name: See FStat Intrinsic (subroutine).


Next: , Previous: FStat Intrinsic (function), Up: Table of Intrinsic Functions
8.11.9.115 FTell Intrinsic (subroutine)

     CALL FTell(Unit, Offset)

Unit: INTEGER; scalar; INTENT(IN).

Offset: INTEGER(KIND=1); scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Sets Offset to the current offset of Fortran unit Unit (or to −1 if Unit is not open).

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine.

For information on other intrinsics with the same name: See FTell Intrinsic (function).


Next: , Previous: FTell Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.116 FTell Intrinsic (function)

     FTell(Unit)

FTell: INTEGER(KIND=1) function.

Unit: INTEGER; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Returns the current offset of Fortran unit Unit (or −1 if Unit is not open).

For information on other intrinsics with the same name: See FTell Intrinsic (subroutine).


Next: , Previous: FTell Intrinsic (function), Up: Table of Intrinsic Functions
8.11.9.117 GError Intrinsic

     CALL GError(Message)

Message: CHARACTER; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Returns the system error message corresponding to the last system error (C errno).


Next: , Previous: GError Intrinsic, Up: Table of Intrinsic Functions
8.11.9.118 GetArg Intrinsic

     CALL GetArg(Pos, Value)

Pos: INTEGER not wider than the default kind; scalar; INTENT(IN).

Value: CHARACTER; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Sets Value to the Pos-th command-line argument (or to all blanks if there are fewer than Value command-line arguments); CALL GETARG(0, value) sets value to the name of the program (on systems that support this feature).

See IArgC Intrinsic, for information on how to get the number of arguments.


Next: , Previous: GetArg Intrinsic, Up: Table of Intrinsic Functions
8.11.9.119 GetCWD Intrinsic (subroutine)

     CALL GetCWD(Name, Status)

Name: CHARACTER; scalar; INTENT(OUT).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Places the current working directory in Name. If the Status argument is supplied, it contains 0 success or a nonzero error code upon return (ENOSYS if the system does not provide getcwd(3) or getwd(3)).

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

For information on other intrinsics with the same name: See GetCWD Intrinsic (function).


Next: , Previous: GetCWD Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.120 GetCWD Intrinsic (function)

     GetCWD(Name)

GetCWD: INTEGER(KIND=1) function.

Name: CHARACTER; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Places the current working directory in Name. Returns 0 on success, otherwise a nonzero error code (ENOSYS if the system does not provide getcwd(3) or getwd(3)).

For information on other intrinsics with the same name: See GetCWD Intrinsic (subroutine).


Next: , Previous: GetCWD Intrinsic (function), Up: Table of Intrinsic Functions
8.11.9.121 GetEnv Intrinsic

     CALL GetEnv(Name, Value)

Name: CHARACTER; scalar; INTENT(IN).

Value: CHARACTER; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Sets Value to the value of environment variable given by the value of Name ($name in shell terms) or to blanks if $name has not been set. A null character (CHAR(0)) marks the end of the name in Name—otherwise, trailing blanks in Name are ignored.


Next: , Previous: GetEnv Intrinsic, Up: Table of Intrinsic Functions
8.11.9.122 GetGId Intrinsic

     GetGId()

GetGId: INTEGER(KIND=1) function.

Intrinsic groups: unix.

Description:

Returns the group id for the current process.


Next: , Previous: GetGId Intrinsic, Up: Table of Intrinsic Functions
8.11.9.123 GetLog Intrinsic

     CALL GetLog(Login)

Login: CHARACTER; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Returns the login name for the process in Login.

Caution: On some systems, the getlogin(3) function, which this intrinsic calls at run time, is either not implemented or returns a null pointer. In the latter case, this intrinsic returns blanks in Login.


Next: , Previous: GetLog Intrinsic, Up: Table of Intrinsic Functions
8.11.9.124 GetPId Intrinsic

     GetPId()

GetPId: INTEGER(KIND=1) function.

Intrinsic groups: unix.

Description:

Returns the process id for the current process.


Next: , Previous: GetPId Intrinsic, Up: Table of Intrinsic Functions
8.11.9.125 GetUId Intrinsic

     GetUId()

GetUId: INTEGER(KIND=1) function.

Intrinsic groups: unix.

Description:

Returns the user id for the current process.


Next: , Previous: GetUId Intrinsic, Up: Table of Intrinsic Functions
8.11.9.126 GMTime Intrinsic

     CALL GMTime(STime, TArray)

STime: INTEGER(KIND=1); scalar; INTENT(IN).

TArray: INTEGER(KIND=1); DIMENSION(9); INTENT(OUT).

Intrinsic groups: unix.

Description:

Given a system time value STime, fills TArray with values extracted from it appropriate to the GMT time zone using gmtime(3).

The array elements are as follows:

  1. Seconds after the minute, range 0–59 or 0–61 to allow for leap seconds
  2. Minutes after the hour, range 0–59
  3. Hours past midnight, range 0–23
  4. Day of month, range 0–31
  5. Number of months since January, range 0–12
  6. Years since 1900
  7. Number of days since Sunday, range 0–6
  8. Days since January 1
  9. Daylight savings indicator: positive if daylight savings is in effect, zero if not, and negative if the information isn't available.


Next: , Previous: GMTime Intrinsic, Up: Table of Intrinsic Functions
8.11.9.127 HostNm Intrinsic (subroutine)

     CALL HostNm(Name, Status)

Name: CHARACTER; scalar; INTENT(OUT).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Fills Name with the system's host name returned by gethostname(2). If the Status argument is supplied, it contains 0 on success or a nonzero error code upon return (ENOSYS if the system does not provide gethostname(2)).

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

On some systems (specifically SCO) it might be necessary to link the “socket” library if you call this routine. Typically this means adding -lg2c -lsocket -lm to the g77 command line when linking the program.

For information on other intrinsics with the same name: See HostNm Intrinsic (function).


Next: , Previous: HostNm Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.128 HostNm Intrinsic (function)

     HostNm(Name)

HostNm: INTEGER(KIND=1) function.

Name: CHARACTER; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Fills Name with the system's host name returned by gethostname(2), returning 0 on success or a nonzero error code (ENOSYS if the system does not provide gethostname(2)).

On some systems (specifically SCO) it might be necessary to link the “socket” library if you call this routine. Typically this means adding -lg2c -lsocket -lm to the g77 command line when linking the program.

For information on other intrinsics with the same name: See HostNm Intrinsic (subroutine).


Next: , Previous: HostNm Intrinsic (function), Up: Table of Intrinsic Functions
8.11.9.129 Huge Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Huge to use this name for an external procedure.


Next: , Previous: Huge Intrinsic, Up: Table of Intrinsic Functions
8.11.9.130 IAbs Intrinsic

     IAbs(A)

IAbs: INTEGER(KIND=1) function.

A: INTEGER(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of ABS() that is specific to one type for A. See Abs Intrinsic.


Next: , Previous: IAbs Intrinsic, Up: Table of Intrinsic Functions
8.11.9.131 IAChar Intrinsic

     IAChar(C)

IAChar: INTEGER(KIND=1) function.

C: CHARACTER; scalar; INTENT(IN).

Intrinsic groups: f2c, f90.

Description:

Returns the code for the ASCII character in the first character position of C.

See AChar Intrinsic, for the inverse of this function.

See IChar Intrinsic, for the function corresponding to the system's native character set.


Next: , Previous: IAChar Intrinsic, Up: Table of Intrinsic Functions
8.11.9.132 IAnd Intrinsic

     IAnd(I, J)

IAnd: INTEGER function, the exact type being the result of cross-promoting the types of all the arguments.

I: INTEGER; scalar; INTENT(IN).

J: INTEGER; scalar; INTENT(IN).

Intrinsic groups: mil, f90, vxt.

Description:

Returns value resulting from boolean AND of pair of bits in each of I and J.


Next: , Previous: IAnd Intrinsic, Up: Table of Intrinsic Functions
8.11.9.133 IArgC Intrinsic

     IArgC()

IArgC: INTEGER(KIND=1) function.

Intrinsic groups: unix.

Description:

Returns the number of command-line arguments.

This count does not include the specification of the program name itself.


Next: , Previous: IArgC Intrinsic, Up: Table of Intrinsic Functions
8.11.9.134 IBClr Intrinsic

     IBClr(I, Pos)

IBClr: INTEGER function, the KIND= value of the type being that of argument I.

I: INTEGER; scalar; INTENT(IN).

Pos: INTEGER; scalar; INTENT(IN).

Intrinsic groups: mil, f90, vxt.

Description:

Returns the value of I with bit Pos cleared (set to zero). See BTest Intrinsic, for information on bit positions.


Next: , Previous: IBClr Intrinsic, Up: Table of Intrinsic Functions
8.11.9.135 IBits Intrinsic

     IBits(I, Pos, Len)

IBits: INTEGER function, the KIND= value of the type being that of argument I.

I: INTEGER; scalar; INTENT(IN).

Pos: INTEGER; scalar; INTENT(IN).

Len: INTEGER; scalar; INTENT(IN).

Intrinsic groups: mil, f90, vxt.

Description:

Extracts a subfield of length Len from I, starting from bit position Pos and extending left for Len bits. The result is right-justified and the remaining bits are zeroed. The value of Pos+Len must be less than or equal to the value BIT_SIZE(I). See Bit_Size Intrinsic.


Next: , Previous: IBits Intrinsic, Up: Table of Intrinsic Functions
8.11.9.136 IBSet Intrinsic

     IBSet(I, Pos)

IBSet: INTEGER function, the KIND= value of the type being that of argument I.

I: INTEGER; scalar; INTENT(IN).

Pos: INTEGER; scalar; INTENT(IN).

Intrinsic groups: mil, f90, vxt.

Description:

Returns the value of I with bit Pos set (to one). See BTest Intrinsic, for information on bit positions.


Next: , Previous: IBSet Intrinsic, Up: Table of Intrinsic Functions
8.11.9.137 IChar Intrinsic

     IChar(C)

IChar: INTEGER(KIND=1) function.

C: CHARACTER; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the code for the character in the first character position of C.

Because the system's native character set is used, the correspondence between character and their codes is not necessarily the same between GNU Fortran implementations.

Note that no intrinsic exists to convert a printable character string to a numerical value. For example, there is no intrinsic that, given the CHARACTER value '154', returns an INTEGER or REAL value with the value 154.

Instead, you can use internal-file I/O to do this kind of conversion. For example:

     INTEGER VALUE
     CHARACTER*10 STRING
     STRING = '154'
     READ (STRING, '(I10)'), VALUE
     PRINT *, VALUE
     END

The above program, when run, prints:

      154

See Char Intrinsic, for the inverse of the ICHAR function.

See IAChar Intrinsic, for the function corresponding to the ASCII character set.


Next: , Previous: IChar Intrinsic, Up: Table of Intrinsic Functions
8.11.9.138 IDate Intrinsic (UNIX)

     CALL IDate(TArray)

TArray: INTEGER(KIND=1); DIMENSION(3); INTENT(OUT).

Intrinsic groups: unix.

Description:

Fills TArray with the numerical values at the current local time. The day (in the range 1–31), month (in the range 1–12), and year appear in elements 1, 2, and 3 of TArray, respectively. The year has four significant digits.

Programs making use of this intrinsic might not be Year 10000 (Y10K) compliant. For example, the date might appear, to such programs, to wrap around (change from a larger value to a smaller one) as of the Year 10000.

For information on other intrinsics with the same name: See IDate Intrinsic (VXT).


Next: , Previous: IDate Intrinsic (UNIX), Up: Table of Intrinsic Functions
8.11.9.139 IDiM Intrinsic

     IDiM(X, Y)

IDiM: INTEGER(KIND=1) function.

X: INTEGER(KIND=1); scalar; INTENT(IN).

Y: INTEGER(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of DIM() that is specific to one type for X and Y. See DiM Intrinsic.


Next: , Previous: IDiM Intrinsic, Up: Table of Intrinsic Functions
8.11.9.140 IDInt Intrinsic

     IDInt(A)

IDInt: INTEGER(KIND=1) function.

A: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of INT() that is specific to one type for A. See Int Intrinsic.


Next: , Previous: IDInt Intrinsic, Up: Table of Intrinsic Functions
8.11.9.141 IDNInt Intrinsic

     IDNInt(A)

IDNInt: INTEGER(KIND=1) function.

A: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of NINT() that is specific to one type for A. See NInt Intrinsic.


Next: , Previous: IDNInt Intrinsic, Up: Table of Intrinsic Functions
8.11.9.142 IEOr Intrinsic

     IEOr(I, J)

IEOr: INTEGER function, the exact type being the result of cross-promoting the types of all the arguments.

I: INTEGER; scalar; INTENT(IN).

J: INTEGER; scalar; INTENT(IN).

Intrinsic groups: mil, f90, vxt.

Description:

Returns value resulting from boolean exclusive-OR of pair of bits in each of I and J.


Next: , Previous: IEOr Intrinsic, Up: Table of Intrinsic Functions
8.11.9.143 IErrNo Intrinsic

     IErrNo()

IErrNo: INTEGER(KIND=1) function.

Intrinsic groups: unix.

Description:

Returns the last system error number (corresponding to the C errno).


Next: , Previous: IErrNo Intrinsic, Up: Table of Intrinsic Functions
8.11.9.144 IFix Intrinsic

     IFix(A)

IFix: INTEGER(KIND=1) function.

A: REAL(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of INT() that is specific to one type for A. See Int Intrinsic.


Next: , Previous: IFix Intrinsic, Up: Table of Intrinsic Functions
8.11.9.145 Imag Intrinsic

     Imag(Z)

Imag: REAL function, the KIND= value of the type being that of argument Z.

Z: COMPLEX; scalar; INTENT(IN).

Intrinsic groups: f2c.

Description:

The imaginary part of Z is returned, without conversion.

Note: The way to do this in standard Fortran 90 is AIMAG(Z). However, when, for example, Z is DOUBLE COMPLEX, AIMAG(Z) means something different for some compilers that are not true Fortran 90 compilers but offer some extensions standardized by Fortran 90 (such as the DOUBLE COMPLEX type, also known as COMPLEX(KIND=2)).

The advantage of IMAG() is that, while not necessarily more or less portable than AIMAG(), it is more likely to cause a compiler that doesn't support it to produce a diagnostic than generate incorrect code.

See REAL() and AIMAG() of Complex, for more information.


Next: , Previous: Imag Intrinsic, Up: Table of Intrinsic Functions
8.11.9.146 ImagPart Intrinsic

     ImagPart(Z)

ImagPart: REAL function, the KIND= value of the type being that of argument Z.

Z: COMPLEX; scalar; INTENT(IN).

Intrinsic groups: gnu.

Description:

The imaginary part of Z is returned, without conversion.

Note: The way to do this in standard Fortran 90 is AIMAG(Z). However, when, for example, Z is DOUBLE COMPLEX, AIMAG(Z) means something different for some compilers that are not true Fortran 90 compilers but offer some extensions standardized by Fortran 90 (such as the DOUBLE COMPLEX type, also known as COMPLEX(KIND=2)).

The advantage of IMAGPART() is that, while not necessarily more or less portable than AIMAG(), it is more likely to cause a compiler that doesn't support it to produce a diagnostic than generate incorrect code.

See REAL() and AIMAG() of Complex, for more information.


Next: , Previous: ImagPart Intrinsic, Up: Table of Intrinsic Functions
8.11.9.147 Index Intrinsic

     Index(String, Substring)

Index: INTEGER(KIND=1) function.

String: CHARACTER; scalar; INTENT(IN).

Substring: CHARACTER; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the position of the start of the first occurrence of string Substring as a substring in String, counting from one. If Substring doesn't occur in String, zero is returned.


Next: , Previous: Index Intrinsic, Up: Table of Intrinsic Functions
8.11.9.148 Int Intrinsic

     Int(A)

Int: INTEGER(KIND=1) function.

A: INTEGER, REAL, or COMPLEX; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns A with the fractional portion of its magnitude truncated and its sign preserved, converted to type INTEGER(KIND=1).

If A is type COMPLEX, its real part is truncated and converted, and its imaginary part is disregarded.

See NInt Intrinsic, for how to convert, rounded to nearest whole number.

See AInt Intrinsic, for how to truncate to whole number without converting.


Next: , Previous: Int Intrinsic, Up: Table of Intrinsic Functions
8.11.9.149 Int2 Intrinsic

     Int2(A)

Int2: INTEGER(KIND=6) function.

A: INTEGER, REAL, or COMPLEX; scalar; INTENT(IN).

Intrinsic groups: gnu.

Description:

Returns A with the fractional portion of its magnitude truncated and its sign preserved, converted to type INTEGER(KIND=6).

If A is type COMPLEX, its real part is truncated and converted, and its imaginary part is disregarded.

See Int Intrinsic.

The precise meaning of this intrinsic might change in a future version of the GNU Fortran language, as more is learned about how it is used.


Next: , Previous: Int2 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.150 Int8 Intrinsic

     Int8(A)

Int8: INTEGER(KIND=2) function.

A: INTEGER, REAL, or COMPLEX; scalar; INTENT(IN).

Intrinsic groups: gnu.

Description:

Returns A with the fractional portion of its magnitude truncated and its sign preserved, converted to type INTEGER(KIND=2).

If A is type COMPLEX, its real part is truncated and converted, and its imaginary part is disregarded.

See Int Intrinsic.

The precise meaning of this intrinsic might change in a future version of the GNU Fortran language, as more is learned about how it is used.


Next: , Previous: Int8 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.151 IOr Intrinsic

     IOr(I, J)

IOr: INTEGER function, the exact type being the result of cross-promoting the types of all the arguments.

I: INTEGER; scalar; INTENT(IN).

J: INTEGER; scalar; INTENT(IN).

Intrinsic groups: mil, f90, vxt.

Description:

Returns value resulting from boolean OR of pair of bits in each of I and J.


Next: , Previous: IOr Intrinsic, Up: Table of Intrinsic Functions
8.11.9.152 IRand Intrinsic

     IRand(Flag)

IRand: INTEGER(KIND=1) function.

Flag: INTEGER; OPTIONAL; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Returns a uniform quasi-random number up to a system-dependent limit. If Flag is 0, the next number in sequence is returned; if Flag is 1, the generator is restarted by calling the UNIX function srand(0); if Flag has any other value, it is used as a new seed with srand().

See SRand Intrinsic.

Note: As typically implemented (by the routine of the same name in the C library), this random number generator is a very poor one, though the BSD and GNU libraries provide a much better implementation than the `traditional' one. On a different system you almost certainly want to use something better.


Next: , Previous: IRand Intrinsic, Up: Table of Intrinsic Functions
8.11.9.153 IsaTty Intrinsic

     IsaTty(Unit)

IsaTty: LOGICAL(KIND=1) function.

Unit: INTEGER; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Returns .TRUE. if and only if the Fortran I/O unit specified by Unit is connected to a terminal device. See isatty(3).


Next: , Previous: IsaTty Intrinsic, Up: Table of Intrinsic Functions
8.11.9.154 IShft Intrinsic

     IShft(I, Shift)

IShft: INTEGER function, the KIND= value of the type being that of argument I.

I: INTEGER; scalar; INTENT(IN).

Shift: INTEGER; scalar; INTENT(IN).

Intrinsic groups: mil, f90, vxt.

Description:

All bits representing I are shifted Shift places. Shift.GT.0 indicates a left shift, Shift.EQ.0 indicates no shift and Shift.LT.0 indicates a right shift. If the absolute value of the shift count is greater than BIT_SIZE(I), the result is undefined. Bits shifted out from the left end or the right end are lost. Zeros are shifted in from the opposite end.

See IShftC Intrinsic, for the circular-shift equivalent.


Next: , Previous: IShft Intrinsic, Up: Table of Intrinsic Functions
8.11.9.155 IShftC Intrinsic

     IShftC(I, Shift, Size)

IShftC: INTEGER function, the KIND= value of the type being that of argument I.

I: INTEGER; scalar; INTENT(IN).

Shift: INTEGER; scalar; INTENT(IN).

Size: INTEGER; scalar; INTENT(IN).

Intrinsic groups: mil, f90, vxt.

Description:

The rightmost Size bits of the argument I are shifted circularly Shift places, i.e. the bits shifted out of one end are shifted into the opposite end. No bits are lost. The unshifted bits of the result are the same as the unshifted bits of I. The absolute value of the argument Shift must be less than or equal to Size. The value of Size must be greater than or equal to one and less than or equal to BIT_SIZE(I).

See IShft Intrinsic, for the logical shift equivalent.


Next: , Previous: IShftC Intrinsic, Up: Table of Intrinsic Functions
8.11.9.156 ISign Intrinsic

     ISign(A, B)

ISign: INTEGER(KIND=1) function.

A: INTEGER(KIND=1); scalar; INTENT(IN).

B: INTEGER(KIND=1); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of SIGN() that is specific to one type for A and B. See Sign Intrinsic.


Next: , Previous: ISign Intrinsic, Up: Table of Intrinsic Functions
8.11.9.157 ITime Intrinsic

     CALL ITime(TArray)

TArray: INTEGER(KIND=1); DIMENSION(3); INTENT(OUT).

Intrinsic groups: unix.

Description:

Returns the current local time hour, minutes, and seconds in elements 1, 2, and 3 of TArray, respectively.


Next: , Previous: ITime Intrinsic, Up: Table of Intrinsic Functions
8.11.9.158 Kill Intrinsic (subroutine)

     CALL Kill(Pid, Signal, Status)

Pid: INTEGER; scalar; INTENT(IN).

Signal: INTEGER; scalar; INTENT(IN).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Sends the signal specified by Signal to the process Pid. If the Status argument is supplied, it contains 0 on success or a nonzero error code upon return. See kill(2).

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

For information on other intrinsics with the same name: See Kill Intrinsic (function).


Next: , Previous: Kill Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.159 Kind Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Kind to use this name for an external procedure.


Next: , Previous: Kind Intrinsic, Up: Table of Intrinsic Functions
8.11.9.160 LBound Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL LBound to use this name for an external procedure.


Next: , Previous: LBound Intrinsic, Up: Table of Intrinsic Functions
8.11.9.161 Len Intrinsic

     Len(String)

Len: INTEGER(KIND=1) function.

String: CHARACTER; scalar.

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the length of String.

If String is an array, the length of an element of String is returned.

Note that String need not be defined when this intrinsic is invoked, since only the length, not the content, of String is needed.

See Bit_Size Intrinsic, for the function that determines the size of its argument in bits.


Next: , Previous: Len Intrinsic, Up: Table of Intrinsic Functions
8.11.9.162 Len_Trim Intrinsic

     Len_Trim(String)

Len_Trim: INTEGER(KIND=1) function.

String: CHARACTER; scalar; INTENT(IN).

Intrinsic groups: f90.

Description:

Returns the index of the last non-blank character in String. LNBLNK and LEN_TRIM are equivalent.


Next: , Previous: Len_Trim Intrinsic, Up: Table of Intrinsic Functions
8.11.9.163 LGe Intrinsic

     LGe(String_A, String_B)

LGe: LOGICAL(KIND=1) function.

String_A: CHARACTER; scalar; INTENT(IN).

String_B: CHARACTER; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns .TRUE. if String_A.GE.String_B, .FALSE. otherwise. String_A and String_B are interpreted as containing ASCII character codes. If either value contains a character not in the ASCII character set, the result is processor dependent.

If the String_A and String_B are not the same length, the shorter is compared as if spaces were appended to it to form a value that has the same length as the longer.

The lexical comparison intrinsics LGe, LGt, LLe, and LLt differ from the corresponding intrinsic operators .GE., .GT., .LE., .LT.. Because the ASCII collating sequence is assumed, the following expressions always return .TRUE.:

     LGE ('0', ' ')
     LGE ('A', '0')
     LGE ('a', 'A')

The following related expressions do not always return .TRUE., as they are not necessarily evaluated assuming the arguments use ASCII encoding:

     '0' .GE. ' '
     'A' .GE. '0'
     'a' .GE. 'A'

The same difference exists between LGt and .GT.; between LLe and .LE.; and between LLt and .LT..


Next: , Previous: LGe Intrinsic, Up: Table of Intrinsic Functions
8.11.9.164 LGt Intrinsic

     LGt(String_A, String_B)

LGt: LOGICAL(KIND=1) function.

String_A: CHARACTER; scalar; INTENT(IN).

String_B: CHARACTER; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns .TRUE. if String_A.GT.String_B, .FALSE. otherwise. String_A and String_B are interpreted as containing ASCII character codes. If either value contains a character not in the ASCII character set, the result is processor dependent.

If the String_A and String_B are not the same length, the shorter is compared as if spaces were appended to it to form a value that has the same length as the longer.

See LGe Intrinsic, for information on the distinction between the LGT intrinsic and the .GT. operator.


Next: , Previous: LGt Intrinsic, Up: Table of Intrinsic Functions
8.11.9.165 Link Intrinsic (subroutine)

     CALL Link(Path1, Path2, Status)

Path1: CHARACTER; scalar; INTENT(IN).

Path2: CHARACTER; scalar; INTENT(IN).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Makes a (hard) link from file Path1 to Path2. A null character (CHAR(0)) marks the end of the names in Path1 and Path2—otherwise, trailing blanks in Path1 and Path2 are ignored. If the Status argument is supplied, it contains 0 on success or a nonzero error code upon return. See link(2).

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

For information on other intrinsics with the same name: See Link Intrinsic (function).


Next: , Previous: Link Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.166 LLe Intrinsic

     LLe(String_A, String_B)

LLe: LOGICAL(KIND=1) function.

String_A: CHARACTER; scalar; INTENT(IN).

String_B: CHARACTER; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns .TRUE. if String_A.LE.String_B, .FALSE. otherwise. String_A and String_B are interpreted as containing ASCII character codes. If either value contains a character not in the ASCII character set, the result is processor dependent.

If the String_A and String_B are not the same length, the shorter is compared as if spaces were appended to it to form a value that has the same length as the longer.

See LGe Intrinsic, for information on the distinction between the LLE intrinsic and the .LE. operator.


Next: , Previous: LLe Intrinsic, Up: Table of Intrinsic Functions
8.11.9.167 LLt Intrinsic

     LLt(String_A, String_B)

LLt: LOGICAL(KIND=1) function.

String_A: CHARACTER; scalar; INTENT(IN).

String_B: CHARACTER; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns .TRUE. if String_A.LT.String_B, .FALSE. otherwise. String_A and String_B are interpreted as containing ASCII character codes. If either value contains a character not in the ASCII character set, the result is processor dependent.

If the String_A and String_B are not the same length, the shorter is compared as if spaces were appended to it to form a value that has the same length as the longer.

See LGe Intrinsic, for information on the distinction between the LLT intrinsic and the .LT. operator.


Next: , Previous: LLt Intrinsic, Up: Table of Intrinsic Functions
8.11.9.168 LnBlnk Intrinsic

     LnBlnk(String)

LnBlnk: INTEGER(KIND=1) function.

String: CHARACTER; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Returns the index of the last non-blank character in String. LNBLNK and LEN_TRIM are equivalent.


Next: , Previous: LnBlnk Intrinsic, Up: Table of Intrinsic Functions
8.11.9.169 Loc Intrinsic

     Loc(Entity)

Loc: INTEGER(KIND=7) function.

Entity: Any type; cannot be a constant or expression.

Intrinsic groups: unix.

Description:

The LOC() intrinsic works the same way as the %LOC() construct. See The %LOC() Construct, for more information.


Next: , Previous: Loc Intrinsic, Up: Table of Intrinsic Functions
8.11.9.170 Log Intrinsic

     Log(X)

Log: REAL or COMPLEX function, the exact type being that of argument X.

X: REAL or COMPLEX; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the natural logarithm of X, which must be greater than zero or, if type COMPLEX, must not be zero.

See Exp Intrinsic, for the inverse of this function.

See Log10 Intrinsic, for the `common' (base-10) logarithm function.


Next: , Previous: Log Intrinsic, Up: Table of Intrinsic Functions
8.11.9.171 Log10 Intrinsic

     Log10(X)

Log10: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the common logarithm (base 10) of X, which must be greater than zero.

The inverse of this function is 10. ** LOG10(X).

See Log Intrinsic, for the natural logarithm function.


Next: , Previous: Log10 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.172 Logical Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Logical to use this name for an external procedure.


Next: , Previous: Logical Intrinsic, Up: Table of Intrinsic Functions
8.11.9.173 Long Intrinsic

     Long(A)

Long: INTEGER(KIND=1) function.

A: INTEGER(KIND=6); scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Archaic form of INT() that is specific to one type for A. See Int Intrinsic.

The precise meaning of this intrinsic might change in a future version of the GNU Fortran language, as more is learned about how it is used.


Next: , Previous: Long Intrinsic, Up: Table of Intrinsic Functions
8.11.9.174 LShift Intrinsic

     LShift(I, Shift)

LShift: INTEGER function, the KIND= value of the type being that of argument I.

I: INTEGER; scalar; INTENT(IN).

Shift: INTEGER; scalar; INTENT(IN).

Intrinsic groups: f2c.

Description:

Returns I shifted to the left Shift bits.

Although similar to the expression I*(2**Shift), there are important differences. For example, the sign of the result is not necessarily the same as the sign of I.

Currently this intrinsic is defined assuming the underlying representation of I is as a two's-complement integer. It is unclear at this point whether that definition will apply when a different representation is involved.

See LShift Intrinsic, for the inverse of this function.

See IShft Intrinsic, for information on a more widely available left-shifting intrinsic that is also more precisely defined.


Next: , Previous: LShift Intrinsic, Up: Table of Intrinsic Functions
8.11.9.175 LStat Intrinsic (subroutine)

     CALL LStat(File, SArray, Status)

File: CHARACTER; scalar; INTENT(IN).

SArray: INTEGER(KIND=1); DIMENSION(13); INTENT(OUT).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Obtains data about the given file File and places them in the array SArray. A null character (CHAR(0)) marks the end of the name in File—otherwise, trailing blanks in File are ignored. If File is a symbolic link it returns data on the link itself, so the routine is available only on systems that support symbolic links. The values in this array are extracted from the stat structure as returned by fstat(2) q.v., as follows:

  1. Device ID
  2. Inode number
  3. File mode
  4. Number of links
  5. Owner's uid
  6. Owner's gid
  7. ID of device containing directory entry for file (0 if not available)
  8. File size (bytes)
  9. Last access time
  10. Last modification time
  11. Last file status change time
  12. Preferred I/O block size (-1 if not available)
  13. Number of blocks allocated (-1 if not available)

Not all these elements are relevant on all systems. If an element is not relevant, it is returned as 0.

If the Status argument is supplied, it contains 0 on success or a nonzero error code upon return (ENOSYS if the system does not provide lstat(2)).

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

For information on other intrinsics with the same name: See LStat Intrinsic (function).


Next: , Previous: LStat Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.176 LStat Intrinsic (function)

     LStat(File, SArray)

LStat: INTEGER(KIND=1) function.

File: CHARACTER; scalar; INTENT(IN).

SArray: INTEGER(KIND=1); DIMENSION(13); INTENT(OUT).

Intrinsic groups: unix.

Description:

Obtains data about the given file File and places them in the array SArray. A null character (CHAR(0)) marks the end of the name in File—otherwise, trailing blanks in File are ignored. If File is a symbolic link it returns data on the link itself, so the routine is available only on systems that support symbolic links. The values in this array are extracted from the stat structure as returned by fstat(2) q.v., as follows:

  1. Device ID
  2. Inode number
  3. File mode
  4. Number of links
  5. Owner's uid
  6. Owner's gid
  7. ID of device containing directory entry for file (0 if not available)
  8. File size (bytes)
  9. Last access time
  10. Last modification time
  11. Last file status change time
  12. Preferred I/O block size (-1 if not available)
  13. Number of blocks allocated (-1 if not available)

Not all these elements are relevant on all systems. If an element is not relevant, it is returned as 0.

Returns 0 on success or a nonzero error code (ENOSYS if the system does not provide lstat(2)).

For information on other intrinsics with the same name: See LStat Intrinsic (subroutine).


Next: , Previous: LStat Intrinsic (function), Up: Table of Intrinsic Functions
8.11.9.177 LTime Intrinsic

     CALL LTime(STime, TArray)

STime: INTEGER(KIND=1); scalar; INTENT(IN).

TArray: INTEGER(KIND=1); DIMENSION(9); INTENT(OUT).

Intrinsic groups: unix.

Description:

Given a system time value STime, fills TArray with values extracted from it appropriate to the GMT time zone using localtime(3).

The array elements are as follows:

  1. Seconds after the minute, range 0–59 or 0–61 to allow for leap seconds
  2. Minutes after the hour, range 0–59
  3. Hours past midnight, range 0–23
  4. Day of month, range 0–31
  5. Number of months since January, range 0–12
  6. Years since 1900
  7. Number of days since Sunday, range 0–6
  8. Days since January 1
  9. Daylight savings indicator: positive if daylight savings is in effect, zero if not, and negative if the information isn't available.


Next: , Previous: LTime Intrinsic, Up: Table of Intrinsic Functions
8.11.9.178 MatMul Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL MatMul to use this name for an external procedure.


Next: , Previous: MatMul Intrinsic, Up: Table of Intrinsic Functions
8.11.9.179 Max Intrinsic

     Max(A-1, A-2, ..., A-n)

Max: INTEGER or REAL function, the exact type being the result of cross-promoting the types of all the arguments.

A: INTEGER or REAL; at least two such arguments must be provided; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the argument with the largest value.

See Min Intrinsic, for the opposite function.


Next: , Previous: Max Intrinsic, Up: Table of Intrinsic Functions
8.11.9.180 Max0 Intrinsic

     Max0(A-1, A-2, ..., A-n)

Max0: INTEGER(KIND=1) function.

A: INTEGER(KIND=1); at least two such arguments must be provided; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of MAX() that is specific to one type for A. See Max Intrinsic.


Next: , Previous: Max0 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.181 Max1 Intrinsic

     Max1(A-1, A-2, ..., A-n)

Max1: INTEGER(KIND=1) function.

A: REAL(KIND=1); at least two such arguments must be provided; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of MAX() that is specific to one type for A and a different return type. See Max Intrinsic.


Next: , Previous: Max1 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.182 MaxExponent Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL MaxExponent to use this name for an external procedure.


Next: , Previous: MaxExponent Intrinsic, Up: Table of Intrinsic Functions
8.11.9.183 MaxLoc Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL MaxLoc to use this name for an external procedure.


Next: , Previous: MaxLoc Intrinsic, Up: Table of Intrinsic Functions
8.11.9.184 MaxVal Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL MaxVal to use this name for an external procedure.


Next: , Previous: MaxVal Intrinsic, Up: Table of Intrinsic Functions
8.11.9.185 MClock Intrinsic

     MClock()

MClock: INTEGER(KIND=1) function.

Intrinsic groups: unix.

Description:

Returns the number of clock ticks since the start of the process. Supported on systems with clock(3) (q.v.).

This intrinsic is not fully portable, such as to systems with 32-bit INTEGER types but supporting times wider than 32 bits. Therefore, the values returned by this intrinsic might be, or become, negative, or numerically less than previous values, during a single run of the compiled program.

See MClock8 Intrinsic, for information on a similar intrinsic that might be portable to more GNU Fortran implementations, though to fewer Fortran compilers.

If the system does not support clock(3), -1 is returned.


Next: , Previous: MClock Intrinsic, Up: Table of Intrinsic Functions
8.11.9.186 MClock8 Intrinsic

     MClock8()

MClock8: INTEGER(KIND=2) function.

Intrinsic groups: unix.

Description:

Returns the number of clock ticks since the start of the process. Supported on systems with clock(3) (q.v.).

Warning: this intrinsic does not increase the range of the timing values over that returned by clock(3). On a system with a 32-bit clock(3), MCLOCK8 will return a 32-bit value, even though converted to an INTEGER(KIND=2) value. That means overflows of the 32-bit value can still occur. Therefore, the values returned by this intrinsic might be, or become, negative, or numerically less than previous values, during a single run of the compiled program.

No Fortran implementations other than GNU Fortran are known to support this intrinsic at the time of this writing. See MClock Intrinsic, for information on a similar intrinsic that might be portable to more Fortran compilers, though to fewer GNU Fortran implementations.

If the system does not support clock(3), -1 is returned.


Next: , Previous: MClock8 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.187 Merge Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Merge to use this name for an external procedure.


Next: , Previous: Merge Intrinsic, Up: Table of Intrinsic Functions
8.11.9.188 Min Intrinsic

     Min(A-1, A-2, ..., A-n)

Min: INTEGER or REAL function, the exact type being the result of cross-promoting the types of all the arguments.

A: INTEGER or REAL; at least two such arguments must be provided; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the argument with the smallest value.

See Max Intrinsic, for the opposite function.


Next: , Previous: Min Intrinsic, Up: Table of Intrinsic Functions
8.11.9.189 Min0 Intrinsic

     Min0(A-1, A-2, ..., A-n)

Min0: INTEGER(KIND=1) function.

A: INTEGER(KIND=1); at least two such arguments must be provided; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of MIN() that is specific to one type for A. See Min Intrinsic.


Next: , Previous: Min0 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.190 Min1 Intrinsic

     Min1(A-1, A-2, ..., A-n)

Min1: INTEGER(KIND=1) function.

A: REAL(KIND=1); at least two such arguments must be provided; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of MIN() that is specific to one type for A and a different return type. See Min Intrinsic.


Next: , Previous: Min1 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.191 MinExponent Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL MinExponent to use this name for an external procedure.


Next: , Previous: MinExponent Intrinsic, Up: Table of Intrinsic Functions
8.11.9.192 MinLoc Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL MinLoc to use this name for an external procedure.


Next: , Previous: MinLoc Intrinsic, Up: Table of Intrinsic Functions
8.11.9.193 MinVal Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL MinVal to use this name for an external procedure.


Next: , Previous: MinVal Intrinsic, Up: Table of Intrinsic Functions
8.11.9.194 Mod Intrinsic

     Mod(A, P)

Mod: INTEGER or REAL function, the exact type being the result of cross-promoting the types of all the arguments.

A: INTEGER or REAL; scalar; INTENT(IN).

P: INTEGER or REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns remainder calculated as:

     A - (INT(A / P) * P)

P must not be zero.


Next: , Previous: Mod Intrinsic, Up: Table of Intrinsic Functions
8.11.9.195 Modulo Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Modulo to use this name for an external procedure.


Next: , Previous: Modulo Intrinsic, Up: Table of Intrinsic Functions
8.11.9.196 MvBits Intrinsic

     CALL MvBits(From, FromPos, Len, TO, ToPos)

From: INTEGER; scalar; INTENT(IN).

FromPos: INTEGER; scalar; INTENT(IN).

Len: INTEGER; scalar; INTENT(IN).

TO: INTEGER with same KIND= value as for From; scalar; INTENT(INOUT).

ToPos: INTEGER; scalar; INTENT(IN).

Intrinsic groups: mil, f90, vxt.

Description:

Moves Len bits from positions FromPos through FromPos+Len-1 of From to positions ToPos through FromPos+Len-1 of TO. The portion of argument TO not affected by the movement of bits is unchanged. Arguments From and TO are permitted to be the same numeric storage unit. The values of FromPos+Len and ToPos+Len must be less than or equal to BIT_SIZE(From).


Next: , Previous: MvBits Intrinsic, Up: Table of Intrinsic Functions
8.11.9.197 Nearest Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Nearest to use this name for an external procedure.


Next: , Previous: Nearest Intrinsic, Up: Table of Intrinsic Functions
8.11.9.198 NInt Intrinsic

     NInt(A)

NInt: INTEGER(KIND=1) function.

A: REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns A with the fractional portion of its magnitude eliminated by rounding to the nearest whole number and with its sign preserved, converted to type INTEGER(KIND=1).

If A is type COMPLEX, its real part is rounded and converted.

A fractional portion exactly equal to .5 is rounded to the whole number that is larger in magnitude. (Also called “Fortran round”.)

See Int Intrinsic, for how to convert, truncate to whole number.

See ANInt Intrinsic, for how to round to nearest whole number without converting.


Next: , Previous: NInt Intrinsic, Up: Table of Intrinsic Functions
8.11.9.199 Not Intrinsic

     Not(I)

Not: INTEGER function, the KIND= value of the type being that of argument I.

I: INTEGER; scalar; INTENT(IN).

Intrinsic groups: mil, f90, vxt.

Description:

Returns value resulting from boolean NOT of each bit in I.


Next: , Previous: Not Intrinsic, Up: Table of Intrinsic Functions
8.11.9.200 Or Intrinsic

     Or(I, J)

Or: INTEGER or LOGICAL function, the exact type being the result of cross-promoting the types of all the arguments.

I: INTEGER or LOGICAL; scalar; INTENT(IN).

J: INTEGER or LOGICAL; scalar; INTENT(IN).

Intrinsic groups: f2c.

Description:

Returns value resulting from boolean OR of pair of bits in each of I and J.


Next: , Previous: Or Intrinsic, Up: Table of Intrinsic Functions
8.11.9.201 Pack Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Pack to use this name for an external procedure.


Next: , Previous: Pack Intrinsic, Up: Table of Intrinsic Functions
8.11.9.202 PError Intrinsic

     CALL PError(String)

String: CHARACTER; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Prints (on the C stderr stream) a newline-terminated error message corresponding to the last system error. This is prefixed by String, a colon and a space. See perror(3).


Next: , Previous: PError Intrinsic, Up: Table of Intrinsic Functions
8.11.9.203 Precision Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Precision to use this name for an external procedure.


Next: , Previous: Precision Intrinsic, Up: Table of Intrinsic Functions
8.11.9.204 Present Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Present to use this name for an external procedure.


Next: , Previous: Present Intrinsic, Up: Table of Intrinsic Functions
8.11.9.205 Product Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Product to use this name for an external procedure.


Next: , Previous: Product Intrinsic, Up: Table of Intrinsic Functions
8.11.9.206 Radix Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Radix to use this name for an external procedure.


Next: , Previous: Radix Intrinsic, Up: Table of Intrinsic Functions
8.11.9.207 Rand Intrinsic

     Rand(Flag)

Rand: REAL(KIND=1) function.

Flag: INTEGER; OPTIONAL; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Returns a uniform quasi-random number between 0 and 1. If Flag is 0, the next number in sequence is returned; if Flag is 1, the generator is restarted by calling srand(0); if Flag has any other value, it is used as a new seed with srand.

See SRand Intrinsic.

Note: As typically implemented (by the routine of the same name in the C library), this random number generator is a very poor one, though the BSD and GNU libraries provide a much better implementation than the `traditional' one. On a different system you almost certainly want to use something better.


Next: , Previous: Rand Intrinsic, Up: Table of Intrinsic Functions
8.11.9.208 Random_Number Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Random_Number to use this name for an external procedure.


Next: , Previous: Random_Number Intrinsic, Up: Table of Intrinsic Functions
8.11.9.209 Random_Seed Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Random_Seed to use this name for an external procedure.


Next: , Previous: Random_Seed Intrinsic, Up: Table of Intrinsic Functions
8.11.9.210 Range Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Range to use this name for an external procedure.


Next: , Previous: Range Intrinsic, Up: Table of Intrinsic Functions
8.11.9.211 Real Intrinsic

     Real(A)

Real: REAL function. The exact type is REAL(KIND=1) when argument A is any type other than COMPLEX, or when it is COMPLEX(KIND=1). When A is any COMPLEX type other than COMPLEX(KIND=1), this intrinsic is valid only when used as the argument to REAL(), as explained below.

A: INTEGER, REAL, or COMPLEX; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Converts A to REAL(KIND=1).

Use of REAL() with a COMPLEX argument (other than COMPLEX(KIND=1)) is restricted to the following case:

     REAL(REAL(A))

This expression converts the real part of A to REAL(KIND=1).

See RealPart Intrinsic, for information on a GNU Fortran intrinsic that extracts the real part of an arbitrary COMPLEX value.

See REAL() and AIMAG() of Complex, for more information.


Next: , Previous: Real Intrinsic, Up: Table of Intrinsic Functions
8.11.9.212 RealPart Intrinsic

     RealPart(Z)

RealPart: REAL function, the KIND= value of the type being that of argument Z.

Z: COMPLEX; scalar; INTENT(IN).

Intrinsic groups: gnu.

Description:

The real part of Z is returned, without conversion.

Note: The way to do this in standard Fortran 90 is REAL(Z). However, when, for example, Z is COMPLEX(KIND=2), REAL(Z) means something different for some compilers that are not true Fortran 90 compilers but offer some extensions standardized by Fortran 90 (such as the DOUBLE COMPLEX type, also known as COMPLEX(KIND=2)).

The advantage of REALPART() is that, while not necessarily more or less portable than REAL(), it is more likely to cause a compiler that doesn't support it to produce a diagnostic than generate incorrect code.

See REAL() and AIMAG() of Complex, for more information.


Next: , Previous: RealPart Intrinsic, Up: Table of Intrinsic Functions
8.11.9.213 Rename Intrinsic (subroutine)

     CALL Rename(Path1, Path2, Status)

Path1: CHARACTER; scalar; INTENT(IN).

Path2: CHARACTER; scalar; INTENT(IN).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Renames the file Path1 to Path2. A null character (CHAR(0)) marks the end of the names in Path1 and Path2—otherwise, trailing blanks in Path1 and Path2 are ignored. See rename(2). If the Status argument is supplied, it contains 0 on success or a nonzero error code upon return.

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

For information on other intrinsics with the same name: See Rename Intrinsic (function).


Next: , Previous: Rename Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.214 Repeat Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Repeat to use this name for an external procedure.


Next: , Previous: Repeat Intrinsic, Up: Table of Intrinsic Functions
8.11.9.215 Reshape Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Reshape to use this name for an external procedure.


Next: , Previous: Reshape Intrinsic, Up: Table of Intrinsic Functions
8.11.9.216 RRSpacing Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL RRSpacing to use this name for an external procedure.


Next: , Previous: RRSpacing Intrinsic, Up: Table of Intrinsic Functions
8.11.9.217 RShift Intrinsic

     RShift(I, Shift)

RShift: INTEGER function, the KIND= value of the type being that of argument I.

I: INTEGER; scalar; INTENT(IN).

Shift: INTEGER; scalar; INTENT(IN).

Intrinsic groups: f2c.

Description:

Returns I shifted to the right Shift bits.

Although similar to the expression I/(2**Shift), there are important differences. For example, the sign of the result is undefined.

Currently this intrinsic is defined assuming the underlying representation of I is as a two's-complement integer. It is unclear at this point whether that definition will apply when a different representation is involved.

See RShift Intrinsic, for the inverse of this function.

See IShft Intrinsic, for information on a more widely available right-shifting intrinsic that is also more precisely defined.


Next: , Previous: RShift Intrinsic, Up: Table of Intrinsic Functions
8.11.9.218 Scale Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Scale to use this name for an external procedure.


Next: , Previous: Scale Intrinsic, Up: Table of Intrinsic Functions
8.11.9.219 Scan Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Scan to use this name for an external procedure.


Next: , Previous: Scan Intrinsic, Up: Table of Intrinsic Functions
8.11.9.220 Second Intrinsic (function)

     Second()

Second: REAL(KIND=1) function.

Intrinsic groups: unix.

Description:

Returns the process's runtime in seconds—the same value as the UNIX function etime returns.

On some systems, the underlying timings are represented using types with sufficiently small limits that overflows (wraparounds) are possible, such as 32-bit types. Therefore, the values returned by this intrinsic might be, or become, negative, or numerically less than previous values, during a single run of the compiled program.

For information on other intrinsics with the same name: See Second Intrinsic (subroutine).


Next: , Previous: Second Intrinsic (function), Up: Table of Intrinsic Functions
8.11.9.221 Second Intrinsic (subroutine)

     CALL Second(Seconds)

Seconds: REAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Returns the process's runtime in seconds in Seconds—the same value as the UNIX function etime returns.

On some systems, the underlying timings are represented using types with sufficiently small limits that overflows (wraparounds) are possible, such as 32-bit types. Therefore, the values returned by this intrinsic might be, or become, negative, or numerically less than previous values, during a single run of the compiled program.

This routine is known from Cray Fortran. See CPU_Time Intrinsic, for a standard equivalent.

For information on other intrinsics with the same name: See Second Intrinsic (function).


Next: , Previous: Second Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.222 Selected_Int_Kind Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Selected_Int_Kind to use this name for an external procedure.


Next: , Previous: Selected_Int_Kind Intrinsic, Up: Table of Intrinsic Functions
8.11.9.223 Selected_Real_Kind Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Selected_Real_Kind to use this name for an external procedure.


Next: , Previous: Selected_Real_Kind Intrinsic, Up: Table of Intrinsic Functions
8.11.9.224 Set_Exponent Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Set_Exponent to use this name for an external procedure.


Next: , Previous: Set_Exponent Intrinsic, Up: Table of Intrinsic Functions
8.11.9.225 Shape Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Shape to use this name for an external procedure.


Next: , Previous: Shape Intrinsic, Up: Table of Intrinsic Functions
8.11.9.226 Short Intrinsic

     Short(A)

Short: INTEGER(KIND=6) function.

A: INTEGER; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Returns A with the fractional portion of its magnitude truncated and its sign preserved, converted to type INTEGER(KIND=6).

If A is type COMPLEX, its real part is truncated and converted, and its imaginary part is disregarded.

See Int Intrinsic.

The precise meaning of this intrinsic might change in a future version of the GNU Fortran language, as more is learned about how it is used.


Next: , Previous: Short Intrinsic, Up: Table of Intrinsic Functions
8.11.9.227 Sign Intrinsic

     Sign(A, B)

Sign: INTEGER or REAL function, the exact type being the result of cross-promoting the types of all the arguments.

A: INTEGER or REAL; scalar; INTENT(IN).

B: INTEGER or REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns ABS(A)*s, where s is +1 if B.GE.0, -1 otherwise.

See Abs Intrinsic, for the function that returns the magnitude of a value.


Next: , Previous: Sign Intrinsic, Up: Table of Intrinsic Functions
8.11.9.228 Signal Intrinsic (subroutine)

     CALL Signal(Number, Handler, Status)

Number: INTEGER; scalar; INTENT(IN).

Handler: Signal handler (INTEGER FUNCTION or SUBROUTINE) or dummy/global INTEGER(KIND=1) scalar.

Status: INTEGER(KIND=7); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

If Handler is a an EXTERNAL routine, arranges for it to be invoked with a single integer argument (of system-dependent length) when signal Number occurs. If Handler is an integer, it can be used to turn off handling of signal Number or revert to its default action. See signal(2).

Note that Handler will be called using C conventions, so the value of its argument in Fortran terms Fortran terms is obtained by applying %LOC() (or LOC()) to it.

The value returned by signal(2) is written to Status, if that argument is supplied. Otherwise the return value is ignored.

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

Warning: Use of the libf2c run-time library function signal_ directly (such as via EXTERNAL SIGNAL) requires use of the %VAL() construct to pass an INTEGER value (such as SIG_IGN or SIG_DFL) for the Handler argument.

However, while CALL SIGNAL(signum, %VAL(SIG_IGN)) works when SIGNAL is treated as an external procedure (and resolves, at link time, to libf2c's signal_ routine), this construct is not valid when SIGNAL is recognized as the intrinsic of that name.

Therefore, for maximum portability and reliability, code such references to the SIGNAL facility as follows:

     INTRINSIC SIGNAL
     ...
     CALL SIGNAL(signum, SIG_IGN)

g77 will compile such a call correctly, while other compilers will generally either do so as well or reject the INTRINSIC SIGNAL statement via a diagnostic, allowing you to take appropriate action.

For information on other intrinsics with the same name: See Signal Intrinsic (function).


Next: , Previous: Signal Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.229 Sin Intrinsic

     Sin(X)

Sin: REAL or COMPLEX function, the exact type being that of argument X.

X: REAL or COMPLEX; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the sine of X, an angle measured in radians.

See ASin Intrinsic, for the inverse of this function.


Next: , Previous: Sin Intrinsic, Up: Table of Intrinsic Functions
8.11.9.230 SinH Intrinsic

     SinH(X)

SinH: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the hyperbolic sine of X.


Next: , Previous: SinH Intrinsic, Up: Table of Intrinsic Functions
8.11.9.231 Sleep Intrinsic

     CALL Sleep(Seconds)

Seconds: INTEGER(KIND=1); scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Causes the process to pause for Seconds seconds. See sleep(2).


Next: , Previous: Sleep Intrinsic, Up: Table of Intrinsic Functions
8.11.9.232 Sngl Intrinsic

     Sngl(A)

Sngl: REAL(KIND=1) function.

A: REAL(KIND=2); scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Archaic form of REAL() that is specific to one type for A. See Real Intrinsic.


Next: , Previous: Sngl Intrinsic, Up: Table of Intrinsic Functions
8.11.9.233 Spacing Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Spacing to use this name for an external procedure.


Next: , Previous: Spacing Intrinsic, Up: Table of Intrinsic Functions
8.11.9.234 Spread Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Spread to use this name for an external procedure.


Next: , Previous: Spread Intrinsic, Up: Table of Intrinsic Functions
8.11.9.235 SqRt Intrinsic

     SqRt(X)

SqRt: REAL or COMPLEX function, the exact type being that of argument X.

X: REAL or COMPLEX; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the square root of X, which must not be negative.

To calculate and represent the square root of a negative number, complex arithmetic must be used. For example, SQRT(COMPLEX(X)).

The inverse of this function is SQRT(X) * SQRT(X).


Next: , Previous: SqRt Intrinsic, Up: Table of Intrinsic Functions
8.11.9.236 SRand Intrinsic

     CALL SRand(Seed)

Seed: INTEGER; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Reinitializes the generator with the seed in Seed. See IRand Intrinsic. See Rand Intrinsic.


Next: , Previous: SRand Intrinsic, Up: Table of Intrinsic Functions
8.11.9.237 Stat Intrinsic (subroutine)

     CALL Stat(File, SArray, Status)

File: CHARACTER; scalar; INTENT(IN).

SArray: INTEGER(KIND=1); DIMENSION(13); INTENT(OUT).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Obtains data about the given file File and places them in the array SArray. A null character (CHAR(0)) marks the end of the name in File—otherwise, trailing blanks in File are ignored. The values in this array are extracted from the stat structure as returned by fstat(2) q.v., as follows:

  1. Device ID
  2. Inode number
  3. File mode
  4. Number of links
  5. Owner's uid
  6. Owner's gid
  7. ID of device containing directory entry for file (0 if not available)
  8. File size (bytes)
  9. Last access time
  10. Last modification time
  11. Last file status change time
  12. Preferred I/O block size (-1 if not available)
  13. Number of blocks allocated (-1 if not available)

Not all these elements are relevant on all systems. If an element is not relevant, it is returned as 0.

If the Status argument is supplied, it contains 0 on success or a nonzero error code upon return.

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

For information on other intrinsics with the same name: See Stat Intrinsic (function).


Next: , Previous: Stat Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.238 Stat Intrinsic (function)

     Stat(File, SArray)

Stat: INTEGER(KIND=1) function.

File: CHARACTER; scalar; INTENT(IN).

SArray: INTEGER(KIND=1); DIMENSION(13); INTENT(OUT).

Intrinsic groups: unix.

Description:

Obtains data about the given file File and places them in the array SArray. A null character (CHAR(0)) marks the end of the name in File—otherwise, trailing blanks in File are ignored. The values in this array are extracted from the stat structure as returned by fstat(2) q.v., as follows:

  1. Device ID
  2. Inode number
  3. File mode
  4. Number of links
  5. Owner's uid
  6. Owner's gid
  7. ID of device containing directory entry for file (0 if not available)
  8. File size (bytes)
  9. Last access time
  10. Last modification time
  11. Last file status change time
  12. Preferred I/O block size (-1 if not available)
  13. Number of blocks allocated (-1 if not available)

Not all these elements are relevant on all systems. If an element is not relevant, it is returned as 0.

Returns 0 on success or a nonzero error code.

For information on other intrinsics with the same name: See Stat Intrinsic (subroutine).


Next: , Previous: Stat Intrinsic (function), Up: Table of Intrinsic Functions
8.11.9.239 Sum Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Sum to use this name for an external procedure.


Next: , Previous: Sum Intrinsic, Up: Table of Intrinsic Functions
8.11.9.240 SymLnk Intrinsic (subroutine)

     CALL SymLnk(Path1, Path2, Status)

Path1: CHARACTER; scalar; INTENT(IN).

Path2: CHARACTER; scalar; INTENT(IN).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Makes a symbolic link from file Path1 to Path2. A null character (CHAR(0)) marks the end of the names in Path1 and Path2—otherwise, trailing blanks in Path1 and Path2 are ignored. If the Status argument is supplied, it contains 0 on success or a nonzero error code upon return (ENOSYS if the system does not provide symlink(2)).

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

For information on other intrinsics with the same name: See SymLnk Intrinsic (function).


Next: , Previous: SymLnk Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.241 System Intrinsic (subroutine)

     CALL System(Command, Status)

Command: CHARACTER; scalar; INTENT(IN).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Passes the command Command to a shell (see system(3)). If argument Status is present, it contains the value returned by system(3), presumably 0 if the shell command succeeded. Note that which shell is used to invoke the command is system-dependent and environment-dependent.

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

For information on other intrinsics with the same name: See System Intrinsic (function).


Next: , Previous: System Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.242 System_Clock Intrinsic

     CALL System_Clock(Count, Rate, Max)

Count: INTEGER(KIND=1); scalar; INTENT(OUT).

Rate: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Max: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: f90.

Description:

Returns in Count the current value of the system clock; this is the value returned by the UNIX function times(2) in this implementation, but isn't in general. Rate is the number of clock ticks per second and Max is the maximum value this can take, which isn't very useful in this implementation since it's just the maximum C unsigned int value.

On some systems, the underlying timings are represented using types with sufficiently small limits that overflows (wraparounds) are possible, such as 32-bit types. Therefore, the values returned by this intrinsic might be, or become, negative, or numerically less than previous values, during a single run of the compiled program.


Next: , Previous: System_Clock Intrinsic, Up: Table of Intrinsic Functions
8.11.9.243 Tan Intrinsic

     Tan(X)

Tan: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the tangent of X, an angle measured in radians.

See ATan Intrinsic, for the inverse of this function.


Next: , Previous: Tan Intrinsic, Up: Table of Intrinsic Functions
8.11.9.244 TanH Intrinsic

     TanH(X)

TanH: REAL function, the KIND= value of the type being that of argument X.

X: REAL; scalar; INTENT(IN).

Intrinsic groups: (standard FORTRAN 77).

Description:

Returns the hyperbolic tangent of X.


Next: , Previous: TanH Intrinsic, Up: Table of Intrinsic Functions
8.11.9.245 Time Intrinsic (UNIX)

     Time()

Time: INTEGER(KIND=1) function.

Intrinsic groups: unix.

Description:

Returns the current time encoded as an integer (in the manner of the UNIX function time(3)). This value is suitable for passing to CTIME, GMTIME, and LTIME.

This intrinsic is not fully portable, such as to systems with 32-bit INTEGER types but supporting times wider than 32 bits. Therefore, the values returned by this intrinsic might be, or become, negative, or numerically less than previous values, during a single run of the compiled program.

See Time8 Intrinsic, for information on a similar intrinsic that might be portable to more GNU Fortran implementations, though to fewer Fortran compilers.

For information on other intrinsics with the same name: See Time Intrinsic (VXT).


Next: , Previous: Time Intrinsic (UNIX), Up: Table of Intrinsic Functions
8.11.9.246 Time8 Intrinsic

     Time8()

Time8: INTEGER(KIND=2) function.

Intrinsic groups: unix.

Description:

Returns the current time encoded as a long integer (in the manner of the UNIX function time(3)). This value is suitable for passing to CTIME, GMTIME, and LTIME.

Warning: this intrinsic does not increase the range of the timing values over that returned by time(3). On a system with a 32-bit time(3), TIME8 will return a 32-bit value, even though converted to an INTEGER(KIND=2) value. That means overflows of the 32-bit value can still occur. Therefore, the values returned by this intrinsic might be, or become, negative, or numerically less than previous values, during a single run of the compiled program.

No Fortran implementations other than GNU Fortran are known to support this intrinsic at the time of this writing. See Time Intrinsic (UNIX), for information on a similar intrinsic that might be portable to more Fortran compilers, though to fewer GNU Fortran implementations.


Next: , Previous: Time8 Intrinsic, Up: Table of Intrinsic Functions
8.11.9.247 Tiny Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Tiny to use this name for an external procedure.


Next: , Previous: Tiny Intrinsic, Up: Table of Intrinsic Functions
8.11.9.248 Transfer Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Transfer to use this name for an external procedure.


Next: , Previous: Transfer Intrinsic, Up: Table of Intrinsic Functions
8.11.9.249 Transpose Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Transpose to use this name for an external procedure.


Next: , Previous: Transpose Intrinsic, Up: Table of Intrinsic Functions
8.11.9.250 Trim Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Trim to use this name for an external procedure.


Next: , Previous: Trim Intrinsic, Up: Table of Intrinsic Functions
8.11.9.251 TtyNam Intrinsic (subroutine)

     CALL TtyNam(Unit, Name)

Unit: INTEGER; scalar; INTENT(IN).

Name: CHARACTER; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Sets Name to the name of the terminal device open on logical unit Unit or to a blank string if Unit is not connected to a terminal.

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine.

For information on other intrinsics with the same name: See TtyNam Intrinsic (function).


Next: , Previous: TtyNam Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.252 TtyNam Intrinsic (function)

     TtyNam(Unit)

TtyNam: CHARACTER*(*) function.

Unit: INTEGER; scalar; INTENT(IN).

Intrinsic groups: unix.

Description:

Returns the name of the terminal device open on logical unit Unit or a blank string if Unit is not connected to a terminal.

For information on other intrinsics with the same name: See TtyNam Intrinsic (subroutine).


Next: , Previous: TtyNam Intrinsic (function), Up: Table of Intrinsic Functions
8.11.9.253 UBound Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL UBound to use this name for an external procedure.


Next: , Previous: UBound Intrinsic, Up: Table of Intrinsic Functions
8.11.9.254 UMask Intrinsic (subroutine)

     CALL UMask(Mask, Old)

Mask: INTEGER; scalar; INTENT(IN).

Old: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Sets the file creation mask to Mask and returns the old value in argument Old if it is supplied. See umask(2).

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine.

For information on other intrinsics with the same name: See UMask Intrinsic (function).


Next: , Previous: UMask Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.255 Unlink Intrinsic (subroutine)

     CALL Unlink(File, Status)

File: CHARACTER; scalar; INTENT(IN).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Unlink the file File. A null character (CHAR(0)) marks the end of the name in File—otherwise, trailing blanks in File are ignored. If the Status argument is supplied, it contains 0 on success or a nonzero error code upon return. See unlink(2).

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

For information on other intrinsics with the same name: See Unlink Intrinsic (function).


Next: , Previous: Unlink Intrinsic (subroutine), Up: Table of Intrinsic Functions
8.11.9.256 Unpack Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Unpack to use this name for an external procedure.


Next: , Previous: Unpack Intrinsic, Up: Table of Intrinsic Functions
8.11.9.257 Verify Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL Verify to use this name for an external procedure.


Next: , Previous: Verify Intrinsic, Up: Table of Intrinsic Functions
8.11.9.258 XOr Intrinsic

     XOr(I, J)

XOr: INTEGER or LOGICAL function, the exact type being the result of cross-promoting the types of all the arguments.

I: INTEGER or LOGICAL; scalar; INTENT(IN).

J: INTEGER or LOGICAL; scalar; INTENT(IN).

Intrinsic groups: f2c.

Description:

Returns value resulting from boolean exclusive-OR of pair of bits in each of I and J.


Next: , Previous: XOr Intrinsic, Up: Table of Intrinsic Functions
8.11.9.259 ZAbs Intrinsic

     ZAbs(A)

ZAbs: REAL(KIND=2) function.

A: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c.

Description:

Archaic form of ABS() that is specific to one type for A. See Abs Intrinsic.


Next: , Previous: ZAbs Intrinsic, Up: Table of Intrinsic Functions
8.11.9.260 ZCos Intrinsic

     ZCos(X)

ZCos: COMPLEX(KIND=2) function.

X: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c.

Description:

Archaic form of COS() that is specific to one type for X. See Cos Intrinsic.


Next: , Previous: ZCos Intrinsic, Up: Table of Intrinsic Functions
8.11.9.261 ZExp Intrinsic

     ZExp(X)

ZExp: COMPLEX(KIND=2) function.

X: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c.

Description:

Archaic form of EXP() that is specific to one type for X. See Exp Intrinsic.


Next: , Previous: ZExp Intrinsic, Up: Table of Intrinsic Functions
8.11.9.262 ZLog Intrinsic

     ZLog(X)

ZLog: COMPLEX(KIND=2) function.

X: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c.

Description:

Archaic form of LOG() that is specific to one type for X. See Log Intrinsic.


Next: , Previous: ZLog Intrinsic, Up: Table of Intrinsic Functions
8.11.9.263 ZSin Intrinsic

     ZSin(X)

ZSin: COMPLEX(KIND=2) function.

X: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c.

Description:

Archaic form of SIN() that is specific to one type for X. See Sin Intrinsic.


Previous: ZSin Intrinsic, Up: Table of Intrinsic Functions
8.11.9.264 ZSqRt Intrinsic

     ZSqRt(X)

ZSqRt: COMPLEX(KIND=2) function.

X: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c.

Description:

Archaic form of SQRT() that is specific to one type for X. See SqRt Intrinsic.


Next: , Previous: Functions and Subroutines, Up: Language

8.12 Scope and Classes of Symbolic Names

(The following information augments or overrides the information in Chapter 18 of ANSI X3.9-1978 FORTRAN 77 in specifying the GNU Fortran language. Chapter 18 of that document otherwise serves as the basis for the relevant aspects of GNU Fortran.)


Up: Scope and Classes of Names

8.12.1 Underscores in Symbol Names

Underscores (_) are accepted in symbol names after the first character (which must be a letter).


Next: , Previous: Scope and Classes of Names, Up: Language

8.13 I/O

A dollar sign at the end of an output format specification suppresses the newline at the end of the output.

Edit descriptors in FORMAT statements may contain compile-time INTEGER constant expressions in angle brackets, such as

     10    FORMAT (I<WIDTH>)

The OPEN specifier NAME= is equivalent to FILE=.

These Fortran 90 features are supported:


Previous: I/O, Up: Language

8.14 Fortran 90 Features

For convenience this section collects a list (probably incomplete) of the Fortran 90 features supported by the GNU Fortran language, even if they are documented elsewhere. See Characters, Lines, and Execution Sequence, for information on additional fixed source form lexical issues. Further, the free source form is supported through the -ffree-form option. Other Fortran 90 features can be turned on by the -ff90 option; see Fortran 90. For information on the Fortran 90 intrinsics available, see Table of Intrinsic Functions.

Automatic arrays in procedures
Character assignments
In character assignments, the variable being assigned may occur on the right hand side of the assignment.
Character strings
Strings may have zero length and substrings of character constants are permitted. Character constants may be enclosed in double quotes (") as well as single quotes. See Character Type.
Construct names
(Symbolic tags on blocks.) See Construct Names.
CYCLE and EXIT
See The CYCLE and EXIT Statements.
DOUBLE COMPLEX
See DOUBLE COMPLEX Statement.
DO WHILE
See DO WHILE.
END decoration
See Statements.
END DO
See END DO.
KIND
IMPLICIT NONE
INCLUDE statements
See INCLUDE.
List-directed and namelist I/O on internal files
Binary, octal and hexadecimal constants
These are supported more generally than required by Fortran 90. See Integer Type.
O and Z edit descriptors
NAMELIST
See NAMELIST.
OPEN specifiers
STATUS='REPLACE' is supported. The FILE= specifier may be omitted in an OPEN statement if STATUS='SCRATCH' is supplied.
FORMAT edit descriptors
The Z edit descriptor is supported.
Relational operators
The operators <, <=, ==, /=, > and >= may be used instead of .LT., .LE., .EQ., .NE., .GT. and .GE. respectively.
SELECT CASE
Not fully implemented. See SELECT CASE on CHARACTER Type.
Specification statements
A limited subset of the Fortran 90 syntax and semantics for variable declarations is supported, including KIND. See Kind Notation. (KIND is of limited usefulness in the absence of the KIND-related intrinsics, since these intrinsics permit writing more widely portable code.) An example of supported KIND usage is:
          INTEGER (KIND=1) :: FOO=1, BAR=2
          CHARACTER (LEN=3) FOO
     

PARAMETER and DIMENSION attributes aren't supported.


Next: , Previous: Compiler, Up: Top

9 Other Dialects

GNU Fortran supports a variety of features that are not considered part of the GNU Fortran language itself, but are representative of various dialects of Fortran that g77 supports in whole or in part.

Any of the features listed below might be disallowed by g77 unless some command-line option is specified. Currently, some of the features are accepted using the default invocation of g77, but that might change in the future.

Note: This portion of the documentation definitely needs a lot of work!


Next: , Up: Other Dialects

9.1 Source Form

GNU Fortran accepts programs written in either fixed form or free form.

Fixed form corresponds to ANSI FORTRAN 77 (plus popular extensions, such as allowing tabs) and Fortran 90's fixed form.

Free form corresponds to Fortran 90's free form (though possibly not entirely up-to-date, and without complaining about some things that for which Fortran 90 requires diagnostics, such as the spaces in the constant in R = 3 . 1).

The way a Fortran compiler views source files depends entirely on the implementation choices made for the compiler, since those choices are explicitly left to the implementation by the published Fortran standards. GNU Fortran currently tries to be somewhat like a few popular compilers (f2c, Digital (“DEC”) Fortran, and so on).

This section describes how g77 interprets source lines.


Next: , Up: Source Form

9.1.1 Carriage Returns

Carriage returns (\r) in source lines are ignored. This is somewhat different from f2c, which seems to treat them as spaces outside character/Hollerith constants, and encodes them as \r inside such constants.


Next: , Previous: Carriage Returns, Up: Source Form

9.1.2 Tabs

A source line with a <TAB> character anywhere in it is treated as entirely significant—however long it is—instead of ending in column 72 (for fixed-form source) or 132 (for free-form source). This also is different from f2c, which encodes tabs as \t (the ASCII <TAB> character) inside character and Hollerith constants, but nevertheless seems to treat the column position as if it had been affected by the canonical tab positioning.

g77 effectively translates tabs to the appropriate number of spaces (a la the default for the UNIX expand command) before doing any other processing, other than (currently) noting whether a tab was found on a line and using this information to decide how to interpret the length of the line and continued constants.


Next: , Previous: Tabs, Up: Source Form

9.1.3 Short Lines

Source lines shorter than the applicable fixed-form length are treated as if they were padded with spaces to that length. (None of this is relevant to source files written in free form.)

This affects only continued character and Hollerith constants, and is a different interpretation than provided by some other popular compilers (although a bit more consistent with the traditional punched-card basis of Fortran and the way the Fortran standard expressed fixed source form).

g77 might someday offer an option to warn about cases where differences might be seen as a result of this treatment, and perhaps an option to specify the alternate behavior as well.

Note that this padding cannot apply to lines that are effectively of infinite length—such lines are specified using command-line options like -ffixed-line-length-none, for example.


Next: , Previous: Short Lines, Up: Source Form

9.1.4 Long Lines

Source lines longer than the applicable length are truncated to that length. Currently, g77 does not warn if the truncated characters are not spaces, to accommodate existing code written for systems that treated truncated text as commentary (especially in columns 73 through 80).

See Options Controlling Fortran Dialect, for information on the -ffixed-line-length-n option, which can be used to set the line length applicable to fixed-form source files.


Previous: Long Lines, Up: Source Form

9.1.5 Ampersand Continuation Line

A & in column 1 of fixed-form source denotes an arbitrary-length continuation line, imitating the behavior of f2c.


Next: , Previous: Source Form, Up: Other Dialects

9.2 Trailing Comment

g77 supports use of /* to start a trailing comment. In the GNU Fortran language, ! is used for this purpose.

/* is not in the GNU Fortran language because the use of /* in a program might suggest to some readers that a block, not trailing, comment is started (and thus ended by */, not end of line), since that is the meaning of /* in C.

Also, such readers might think they can use // to start a trailing comment as an alternative to /*, but // already denotes concatenation, and such a “comment” might actually result in a program that compiles without error (though it would likely behave incorrectly).


Next: , Previous: Trailing Comment, Up: Other Dialects

9.3 Debug Line

Use of D or d as the first character (column 1) of a source line denotes a debug line.

In turn, a debug line is treated as either a comment line or a normal line, depending on whether debug lines are enabled.

When treated as a comment line, a line beginning with D or d is treated as if it the first character was C or c, respectively. When treated as a normal line, such a line is treated as if the first character was <SPC> (space).

(Currently, g77 provides no means for treating debug lines as normal lines.)


Next: , Previous: Debug Line, Up: Other Dialects

9.4 Dollar Signs in Symbol Names

Dollar signs ($) are allowed in symbol names (after the first character) when the -fdollar-ok option is specified.


Next: , Previous: Dollar Signs, Up: Other Dialects

9.5 Case Sensitivity

GNU Fortran offers the programmer way too much flexibility in deciding how source files are to be treated vis-a-vis uppercase and lowercase characters. There are 66 useful settings that affect case sensitivity, plus 10 settings that are nearly useless, with the remaining 116 settings being either redundant or useless.

None of these settings have any effect on the contents of comments (the text after a c or C in Column 1, for example) or of character or Hollerith constants. Note that things like the E in the statement CALL FOO(3.2E10) and the TO in ASSIGN 10 TO LAB are considered built-in keywords, and so are affected by these settings.

Low-level switches are identified in this section as follows:

Note 1: g77 eventually will support NAMELIST in a manner that is consistent with these source switches—in the sense that input will be expected to meet the same requirements as source code in terms of matching symbol names and keywords (for the exponent letters).

Currently, however, NAMELIST is supported by libg2c, which uppercases NAMELIST input and symbol names for matching. This means not only that NAMELIST output currently shows symbol (and keyword) names in uppercase even if lower-case source conversion (option A2) is selected, but that NAMELIST cannot be adequately supported when source case preservation (option A0) is selected.

If A0 is selected, a warning message will be output for each NAMELIST statement to this effect. The behavior of the program is undefined at run time if two or more symbol names appear in a given NAMELIST such that the names are identical when converted to upper case (e.g. NAMELIST /X/ VAR, Var, var). For complete and total elegance, perhaps there should be a warning when option A2 is selected, since the output of NAMELIST is currently in uppercase but will someday be lowercase (when a libg77 is written), but that seems to be overkill for a product in beta test.

Note 2: Rules for InitialCaps names are:

So A, Ab, ABc, AbC, and Abc are valid InitialCaps names, but AB, A2, and ABC are not. Note that most, but not all, built-in names meet these requirements—the exceptions are some of the two-letter format specifiers, such as BN and BZ.

Here are the names of the corresponding command-line options:

     A0: -fsource-case-preserve
     A1: -fsource-case-upper
     A2: -fsource-case-lower
     
     B0: -fmatch-case-any
     B1: -fmatch-case-upper
     B2: -fmatch-case-lower
     B3: -fmatch-case-initcap
     
     C0: -fintrin-case-any
     C1: -fintrin-case-upper
     C2: -fintrin-case-lower
     C3: -fintrin-case-initcap
     
     D0: -fsymbol-case-any
     D1: -fsymbol-case-upper
     D2: -fsymbol-case-lower
     D3: -fsymbol-case-initcap

Useful combinations of the above settings, along with abbreviated option names that set some of these combinations all at once:

      1: A0--  B0---  C0---  D0---    -fcase-preserve
      2: A0--  B0---  C0---  D-1--
      3: A0--  B0---  C0---  D--2-
      4: A0--  B0---  C0---  D---3
      5: A0--  B0---  C-1--  D0---
      6: A0--  B0---  C-1--  D-1--
      7: A0--  B0---  C-1--  D--2-
      8: A0--  B0---  C-1--  D---3
      9: A0--  B0---  C--2-  D0---
     10: A0--  B0---  C--2-  D-1--
     11: A0--  B0---  C--2-  D--2-
     12: A0--  B0---  C--2-  D---3
     13: A0--  B0---  C---3  D0---
     14: A0--  B0---  C---3  D-1--
     15: A0--  B0---  C---3  D--2-
     16: A0--  B0---  C---3  D---3
     17: A0--  B-1--  C0---  D0---
     18: A0--  B-1--  C0---  D-1--
     19: A0--  B-1--  C0---  D--2-
     20: A0--  B-1--  C0---  D---3
     21: A0--  B-1--  C-1--  D0---
     22: A0--  B-1--  C-1--  D-1--    -fcase-strict-upper
     23: A0--  B-1--  C-1--  D--2-
     24: A0--  B-1--  C-1--  D---3
     25: A0--  B-1--  C--2-  D0---
     26: A0--  B-1--  C--2-  D-1--
     27: A0--  B-1--  C--2-  D--2-
     28: A0--  B-1--  C--2-  D---3
     29: A0--  B-1--  C---3  D0---
     30: A0--  B-1--  C---3  D-1--
     31: A0--  B-1--  C---3  D--2-
     32: A0--  B-1--  C---3  D---3
     33: A0--  B--2-  C0---  D0---
     34: A0--  B--2-  C0---  D-1--
     35: A0--  B--2-  C0---  D--2-
     36: A0--  B--2-  C0---  D---3
     37: A0--  B--2-  C-1--  D0---
     38: A0--  B--2-  C-1--  D-1--
     39: A0--  B--2-  C-1--  D--2-
     40: A0--  B--2-  C-1--  D---3
     41: A0--  B--2-  C--2-  D0---
     42: A0--  B--2-  C--2-  D-1--
     43: A0--  B--2-  C--2-  D--2-    -fcase-strict-lower
     44: A0--  B--2-  C--2-  D---3
     45: A0--  B--2-  C---3  D0---
     46: A0--  B--2-  C---3  D-1--
     47: A0--  B--2-  C---3  D--2-
     48: A0--  B--2-  C---3  D---3
     49: A0--  B---3  C0---  D0---
     50: A0--  B---3  C0---  D-1--
     51: A0--  B---3  C0---  D--2-
     52: A0--  B---3  C0---  D---3
     53: A0--  B---3  C-1--  D0---
     54: A0--  B---3  C-1--  D-1--
     55: A0--  B---3  C-1--  D--2-
     56: A0--  B---3  C-1--  D---3
     57: A0--  B---3  C--2-  D0---
     58: A0--  B---3  C--2-  D-1--
     59: A0--  B---3  C--2-  D--2-
     60: A0--  B---3  C--2-  D---3
     61: A0--  B---3  C---3  D0---
     62: A0--  B---3  C---3  D-1--
     63: A0--  B---3  C---3  D--2-
     64: A0--  B---3  C---3  D---3    -fcase-initcap
     65: A-1-  B01--  C01--  D01--    -fcase-upper
     66: A--2  B0-2-  C0-2-  D0-2-    -fcase-lower

Number 22 is the “strict” ANSI FORTRAN 77 model wherein all input (except comments, character constants, and Hollerith strings) must be entered in uppercase. Use -fcase-strict-upper to specify this combination.

Number 43 is like Number 22 except all input must be lowercase. Use -fcase-strict-lower to specify this combination.

Number 65 is the “classic” ANSI FORTRAN 77 model as implemented on many non-UNIX machines whereby all the source is translated to uppercase. Use -fcase-upper to specify this combination.

Number 66 is the “canonical” UNIX model whereby all the source is translated to lowercase. Use -fcase-lower to specify this combination.

There are a few nearly useless combinations:

     67: A-1-  B01--  C01--  D--2-
     68: A-1-  B01--  C01--  D---3
     69: A-1-  B01--  C--23  D01--
     70: A-1-  B01--  C--23  D--2-
     71: A-1-  B01--  C--23  D---3
     72: A--2  B01--  C0-2-  D-1--
     73: A--2  B01--  C0-2-  D---3
     74: A--2  B01--  C-1-3  D0-2-
     75: A--2  B01--  C-1-3  D-1--
     76: A--2  B01--  C-1-3  D---3

The above allow some programs to be compiled but with restrictions that make most useful programs impossible: Numbers 67 and 72 warn about any user-defined symbol names (such as SUBROUTINE FOO); Numbers 68 and 73 warn about any user-defined symbol names longer than one character that don't have at least one non-alphabetic character after the first; Numbers 69 and 74 disallow any references to intrinsics; and Numbers 70, 71, 75, and 76 are combinations of the restrictions in 67+69, 68+69, 72+74, and 73+74, respectively.

All redundant combinations are shown in the above tables anyplace where more than one setting is shown for a low-level switch. For example, B0-2- means either setting 0 or 2 is valid for switch B. The “proper” setting in such a case is the one that copies the setting of switch A—any other setting might slightly reduce the speed of the compiler, though possibly to an unmeasurable extent.

All remaining combinations are useless in that they prevent successful compilation of non-null source files (source files with something other than comments).


Next: , Previous: Case Sensitivity, Up: Other Dialects

9.6 VXT Fortran

g77 supports certain constructs that have different meanings in VXT Fortran than they do in the GNU Fortran language.

Generally, this manual uses the invented term VXT Fortran to refer VAX FORTRAN (circa v4). That compiler offered many popular features, though not necessarily those that are specific to the VAX processor architecture, the VMS operating system, or Digital Equipment Corporation's Fortran product line. (VAX and VMS probably are trademarks of Digital Equipment Corporation.)

An extension offered by a Digital Fortran product that also is offered by several other Fortran products for different kinds of systems is probably going to be considered for inclusion in g77 someday, and is considered a VXT Fortran feature.

The -fvxt option generally specifies that, where the meaning of a construct is ambiguous (means one thing in GNU Fortran and another in VXT Fortran), the VXT Fortran meaning is to be assumed.


Next: , Up: VXT Fortran

9.6.1 Meaning of Double Quote

g77 treats double-quote (") as beginning an octal constant of INTEGER(KIND=1) type when the -fvxt option is specified. The form of this octal constant is

     "octal-digits

where octal-digits is a nonempty string of characters in the set 01234567.

For example, the -fvxt option permits this:

     PRINT *, "20
     END

The above program would print the value 16.

See Integer Type, for information on the preferred construct for integer constants specified using GNU Fortran's octal notation.

(In the GNU Fortran language, the double-quote character (") delimits a character constant just as does apostrophe ('). There is no way to allow both constructs in the general case, since statements like PRINT *,"2000 !comment?" would be ambiguous.)


Previous: Double Quote Meaning, Up: VXT Fortran

9.6.2 Meaning of Exclamation Point in Column 6

g77 treats an exclamation point (!) in column 6 of a fixed-form source file as a continuation character rather than as the beginning of a comment (as it does in any other column) when the -fvxt option is specified.

The following program, when run, prints a message indicating whether it is interpreted according to GNU Fortran (and Fortran 90) rules or VXT Fortran rules:

     C234567  (This line begins in column 1.)
           I = 0
          !1
           IF (I.EQ.0) PRINT *, ' I am a VXT Fortran program'
           IF (I.EQ.1) PRINT *, ' I am a Fortran 90 program'
           IF (I.LT.0 .OR. I.GT.1) PRINT *, ' I am a HAL 9000 computer'
           END

(In the GNU Fortran and Fortran 90 languages, exclamation point is a valid character and, unlike space (<SPC>) or zero (0), marks a line as a continuation line when it appears in column 6.)


Next: , Previous: VXT Fortran, Up: Other Dialects

9.7 Fortran 90

The GNU Fortran language includes a number of features that are part of Fortran 90, even when the -ff90 option is not specified. The features enabled by -ff90 are intended to be those that, when -ff90 is not specified, would have another meaning to g77—usually meaning something invalid in the GNU Fortran language.

So, the purpose of -ff90 is not to specify whether g77 is to gratuitously reject Fortran 90 constructs. The -pedantic option specified with -fno-f90 is intended to do that, although its implementation is certainly incomplete at this point.

When -ff90 is specified:


Next: , Previous: Fortran 90, Up: Other Dialects

9.8 Pedantic Compilation

The -fpedantic command-line option specifies that g77 is to warn about code that is not standard-conforming. This is useful for finding some extensions g77 accepts that other compilers might not accept. (Note that the -pedantic and -pedantic-errors options always imply -fpedantic.)

With -fno-f90 in force, ANSI FORTRAN 77 is used as the standard for conforming code. With -ff90 in force, Fortran 90 is used.

The constructs for which g77 issues diagnostics when -fpedantic and -fno-f90 are in force are:

If -fpedantic is specified along with -ff90, the following constructs result in diagnostics:


Previous: Pedantic Compilation, Up: Other Dialects

9.9 Distensions

The -fugly-* command-line options determine whether certain features supported by VAX FORTRAN and other such compilers, but considered too ugly to be in code that can be changed to use safer and/or more portable constructs, are accepted. These are humorously referred to as “distensions”, extensions that just plain look ugly in the harsh light of day.


Next: , Up: Distensions

9.9.1 Implicit Argument Conversion

The -fno-ugly-args option disables passing typeless and Hollerith constants as actual arguments in procedure invocations. For example:

     CALL FOO(4HABCD)
     CALL BAR('123'O)

These constructs can be too easily used to create non-portable code, but are not considered as “ugly” as others. Further, they are widely used in existing Fortran source code in ways that often are quite portable. Therefore, they are enabled by default.


Next: , Previous: Ugly Implicit Argument Conversion, Up: Distensions

9.9.2 Ugly Assumed-Size Arrays

The -fugly-assumed option enables the treatment of any array with a final dimension specified as 1 as an assumed-size array, as if * had been specified instead.

For example, DIMENSION X(1) is treated as if it had read DIMENSION X(*) if X is listed as a dummy argument in a preceding SUBROUTINE, FUNCTION, or ENTRY statement in the same program unit.

Use an explicit lower bound to avoid this interpretation. For example, DIMENSION X(1:1) is never treated as if it had read DIMENSION X(*) or DIMENSION X(1:*). Nor is DIMENSION X(2-1) affected by this option, since that kind of expression is unlikely to have been intended to designate an assumed-size array.

This option is used to prevent warnings being issued about apparent out-of-bounds reference such as X(2) = 99.

It also prevents the array from being used in contexts that disallow assumed-size arrays, such as PRINT *,X. In such cases, a diagnostic is generated and the source file is not compiled.

The construct affected by this option is used only in old code that pre-exists the widespread acceptance of adjustable and assumed-size arrays in the Fortran community.

Note: This option does not affect how DIMENSION X(1) is treated if X is listed as a dummy argument only after the DIMENSION statement (presumably in an ENTRY statement). For example, -fugly-assumed has no effect on the following program unit:

     SUBROUTINE X
     REAL A(1)
     RETURN
     ENTRY Y(A)
     PRINT *, A
     END


Next: , Previous: Ugly Null Arguments, Up: Distensions

9.9.3 Ugly Complex Part Extraction

The -fugly-complex option enables use of the REAL() and AIMAG() intrinsics with arguments that are COMPLEX types other than COMPLEX(KIND=1).

With -ff90 in effect, these intrinsics return the unconverted real and imaginary parts (respectively) of their argument.

With -fno-f90 in effect, these intrinsics convert the real and imaginary parts to REAL(KIND=1), and return the result of that conversion.

Due to this ambiguity, the GNU Fortran language defines these constructs as invalid, except in the specific case where they are entirely and solely passed as an argument to an invocation of the REAL() intrinsic. For example,

     REAL(REAL(Z))

is permitted even when Z is COMPLEX(KIND=2) and -fno-ugly-complex is in effect, because the meaning is clear.

g77 enforces this restriction, unless -fugly-complex is specified, in which case the appropriate interpretation is chosen and no diagnostic is issued.

See CMPAMBIG, for information on how to cope with existing code with unclear expectations of REAL() and AIMAG() with COMPLEX(KIND=2) arguments.

See RealPart Intrinsic, for information on the REALPART() intrinsic, used to extract the real part of a complex expression without conversion. See ImagPart Intrinsic, for information on the IMAGPART() intrinsic, used to extract the imaginary part of a complex expression without conversion.


Next: , Previous: Ugly Assumed-Size Arrays, Up: Distensions

9.9.4 Ugly Null Arguments

The -fugly-comma option enables use of a single trailing comma to mean “pass an extra trailing null argument” in a list of actual arguments to an external procedure, and use of an empty list of arguments to such a procedure to mean “pass a single null argument”.

(Null arguments often are used in some procedure-calling schemes to indicate omitted arguments.)

For example, CALL FOO(,) means “pass two null arguments”, rather than “pass one null argument”. Also, CALL BAR() means “pass one null argument”.

This construct is considered “ugly” because it does not provide an elegant way to pass a single null argument that is syntactically distinct from passing no arguments. That is, this construct changes the meaning of code that makes no use of the construct.

So, with -fugly-comma in force, CALL FOO() and I = JFUNC() pass a single null argument, instead of passing no arguments as required by the Fortran 77 and 90 standards.

Note: Many systems gracefully allow the case where a procedure call passes one extra argument that the called procedure does not expect.

So, in practice, there might be no difference in the behavior of a program that does CALL FOO() or I = JFUNC() and is compiled with -fugly-comma in force as compared to its behavior when compiled with the default, -fno-ugly-comma, in force, assuming FOO and JFUNC do not expect any arguments to be passed.


Next: , Previous: Ugly Complex Part Extraction, Up: Distensions

9.9.5 Ugly Conversion of Initializers

The constructs disabled by -fno-ugly-init are:

The above constructs, when used, can tend to result in non-portable code. But, they are widely used in existing Fortran code in ways that often are quite portable. Therefore, they are enabled by default.


Next: , Previous: Ugly Conversion of Initializers, Up: Distensions

9.9.6 Ugly Integer Conversions

The constructs enabled via -fugly-logint are:

The above constructs are disabled by default because use of them tends to lead to non-portable code. Even existing Fortran code that uses that often turns out to be non-portable, if not outright buggy.

Some of this is due to differences among implementations as far as how .TRUE. and .FALSE. are encoded as INTEGER values—Fortran code that assumes a particular coding is likely to use one of the above constructs, and is also likely to not work correctly on implementations using different encodings.

See Equivalence Versus Equality, for more information.


Previous: Ugly Integer Conversions, Up: Distensions

9.9.7 Ugly Assigned Labels

The -fugly-assign option forces g77 to use the same storage for assigned labels as it would for a normal assignment to the same variable.

For example, consider the following code fragment:

     I = 3
     ASSIGN 10 TO I

Normally, for portability and improved diagnostics, g77 reserves distinct storage for a “sibling” of I, used only for ASSIGN statements to that variable (along with the corresponding assigned-GOTO and assigned-FORMAT-I/O statements that reference the variable).

However, some code (that violates the ANSI FORTRAN 77 standard) attempts to copy assigned labels among variables involved with ASSIGN statements, as in:

     ASSIGN 10 TO I
     ISTATE(5) = I
     ...
     J = ISTATE(ICUR)
     GOTO J

Such code doesn't work under g77 unless -fugly-assign is specified on the command-line, ensuring that the value of I referenced in the second line is whatever value g77 uses to designate statement label 10, so the value may be copied into the ISTATE array, later retrieved into a variable of the appropriate type (J), and used as the target of an assigned-GOTO statement.

Note: To avoid subtle program bugs, when -fugly-assign is specified, g77 requires the type of variables specified in assigned-label contexts must be the same type returned by %LOC(). On many systems, this type is effectively the same as INTEGER(KIND=1), while, on others, it is effectively the same as INTEGER(KIND=2).

Do not depend on g77 actually writing valid pointers to these variables, however. While g77 currently chooses that implementation, it might be changed in the future.

See Assigned Statement Labels (ASSIGN and GOTO), for implementation details on assigned-statement labels.


Next: , Previous: Language, Up: Top

10 The GNU Fortran Compiler

The GNU Fortran compiler, g77, supports programs written in the GNU Fortran language and in some other dialects of Fortran.

Some aspects of how g77 works are universal regardless of dialect, and yet are not properly part of the GNU Fortran language itself. These are described below.

Note: This portion of the documentation definitely needs a lot of work!


Next: , Up: Compiler

10.1 Compiler Limits

g77, as with GNU tools in general, imposes few arbitrary restrictions on lengths of identifiers, number of continuation lines, number of external symbols in a program, and so on.

For example, some other Fortran compiler have an option (such as -Nlx) to increase the limit on the number of continuation lines. Also, some Fortran compilation systems have an option (such as -Nxx) to increase the limit on the number of external symbols.

g77, gcc, and GNU ld (the GNU linker) have no equivalent options, since they do not impose arbitrary limits in these areas.

g77 does currently limit the number of dimensions in an array to the same degree as do the Fortran standards—seven (7). This restriction might be lifted in a future version.


Next: , Previous: Compiler Limits, Up: Compiler

10.2 Run-time Environment Limits

As a portable Fortran implementation, g77 offers its users direct access to, and otherwise depends upon, the underlying facilities of the system used to build g77, the system on which g77 itself is used to compile programs, and the system on which the g77-compiled program is actually run. (For most users, the three systems are of the same type—combination of operating environment and hardware—often the same physical system.)

The run-time environment for a particular system inevitably imposes some limits on a program's use of various system facilities. These limits vary from system to system.

Even when such limits might be well beyond the possibility of being encountered on a particular system, the g77 run-time environment has certain built-in limits, usually, but not always, stemming from intrinsics with inherently limited interfaces.

Currently, the g77 run-time environment does not generally offer a less-limiting environment by augmenting the underlying system's own environment.

Therefore, code written in the GNU Fortran language, while syntactically and semantically portable, might nevertheless make non-portable assumptions about the run-time environment—assumptions that prove to be false for some particular environments.

The GNU Fortran language, the g77 compiler and run-time environment, and the g77 documentation do not yet offer comprehensive portable work-arounds for such limits, though programmers should be able to find their own in specific instances.

Not all of the limitations are described in this document. Some of the known limitations include:


Next: , Up: Run-time Environment Limits

10.2.1 Timer Wraparounds

Intrinsics that return values computed from system timers, whether elapsed (wall-clock) timers, process CPU timers, or other kinds of timers, are prone to experiencing wrap-around errors (or returning wrapped-around values from successive calls) due to insufficient ranges offered by the underlying system's timers.

Some of the symptoms of such behaviors include apparently negative time being computed for a duration, an extremely short amount of time being computed for a long duration, and an extremely long amount of time being computed for a short duration.

See the following for intrinsics known to have potential problems in these areas on at least some systems: CPU_Time Intrinsic, DTime Intrinsic (function), DTime Intrinsic (subroutine), ETime Intrinsic (function), ETime Intrinsic (subroutine), MClock Intrinsic, MClock8 Intrinsic, Secnds Intrinsic, Second Intrinsic (function), Second Intrinsic (subroutine), System_Clock Intrinsic, Time Intrinsic (UNIX), Time Intrinsic (VXT), Time8 Intrinsic.


Next: , Previous: Timer Wraparounds, Up: Run-time Environment Limits

10.2.2 Year 2000 (Y2K) Problems

While the g77 compiler itself is believed to be Year-2000 (Y2K) compliant, some intrinsics are not, and, potentially, some underlying systems are not, perhaps rendering some Y2K-compliant intrinsics non-compliant when used on those particular systems.

Fortran code that uses non-Y2K-compliant intrinsics (listed below) is, itself, almost certainly not compliant, and should be modified to use Y2K-compliant intrinsics instead.

Fortran code that uses no non-Y2K-compliant intrinsics, but which currently is running on a non-Y2K-compliant system, can be made more Y2K compliant by compiling and linking it for use on a new Y2K-compliant system, such as a new version of an old, non-Y2K-compliant, system.

Currently, information on Y2K and related issues is being maintained at http://www.gnu.org/software/year2000-list.html.

See the following for intrinsics known to have potential problems in these areas on at least some systems: Date Intrinsic, IDate Intrinsic (VXT).

The libg2c library shipped with any g77 that warns about invocation of a non-Y2K-compliant intrinsic has renamed the EXTERNAL procedure names of those intrinsics. This is done so that the libg2c implementations of these intrinsics cannot be directly linked to as EXTERNAL names (which normally would avoid the non-Y2K-intrinsic warning).

The renamed forms of the EXTERNAL names of these renamed procedures may be linked to by appending the string _y2kbug to the name of the procedure in the source code. For example:

     CHARACTER*20 STR
     INTEGER YY, MM, DD
     EXTERNAL DATE_Y2KBUG, VXTIDATE_Y2KBUG
     CALL DATE_Y2KBUG (STR)
     CALL VXTIDATE_Y2KBUG (MM, DD, YY)

(Note that the EXTERNAL statement is not actually required, since the modified names are not recognized as intrinsics by the current version of g77. But it is shown in this specific case, for purposes of illustration.)

The renaming of EXTERNAL procedure names of these intrinsics causes unresolved references at link time. For example, EXTERNAL DATE; CALL DATE(STR) is normally compiled by g77 as, in C, date_(&str, 20);. This, in turn, links to the date_ procedure in the libE77 portion of libg2c, which purposely calls a nonexistent procedure named G77_date_y2kbuggy_0. The resulting link-time error is designed, via this name, to encourage the programmer to look up the index entries to this portion of the g77 documentation.

Generally, we recommend that the EXTERNAL method of invoking procedures in libg2c not be used. When used, some of the correctness checking normally performed by g77 is skipped.

In particular, it is probably better to use the INTRINSIC method of invoking non-Y2K-compliant procedures, so anyone compiling the code can quickly notice the potential Y2K problems (via the warnings printing by g77) without having to even look at the code itself.

If there are problems linking libg2c to code compiled by g77 that involve the string y2kbug, and these are not explained above, that probably indicates that a version of libg2c older than g77 is being linked to, or that the new library is being linked to code compiled by an older version of g77.

That's because, as of the version that warns about non-Y2K-compliant intrinsic invocation, g77 references the libg2c implementations of those intrinsics using new names, containing the string y2kbug.

So, linking newly-compiled code (invoking one of the intrinsics in question) to an old library might yield an unresolved reference to G77_date_y2kbug_0. (The old library calls it G77_date_0.)

Similarly, linking previously-compiled code to a new library might yield an unresolved reference to G77_vxtidate_0. (The new library calls it G77_vxtidate_y2kbug_0.)

The proper fix for the above problems is to obtain the latest release of g77 and related products (including libg2c) and install them on all systems, then recompile, relink, and install (as appropriate) all existing Fortran programs.

(Normally, this sort of renaming is steadfastly avoided. In this case, however, it seems more important to highlight potential Y2K problems than to ease the transition of potentially non-Y2K-compliant code to new versions of g77 and libg2c.)


Next: , Previous: Year 2000 (Y2K) Problems, Up: Run-time Environment Limits

10.2.3 Array Size

Currently, g77 uses the default INTEGER type for array indexes, which limits the sizes of single-dimension arrays on systems offering a larger address space than can be addressed by that type. (That g77 puts all arrays in memory could be considered another limitation—it could use large temporary files—but that decision is left to the programmer as an implementation choice by most Fortran implementations.)

It is not yet clear whether this limitation never, sometimes, or always applies to the sizes of multiple-dimension arrays as a whole.

For example, on a system with 64-bit addresses and 32-bit default INTEGER, an array with a size greater than can be addressed by a 32-bit offset can be declared using multiple dimensions. Such an array is therefore larger than a single-dimension array can be, on the same system.

Whether large multiple-dimension arrays are reliably supported depends mostly on the gcc back end (code generator) used by g77, and has not yet been fully investigated.


Next: , Previous: Array Size, Up: Run-time Environment Limits

10.2.4 Character-variable Length

Currently, g77 uses the default INTEGER type for the lengths of CHARACTER variables and array elements.

This means that, for example, a system with a 64-bit address space and a 32-bit default INTEGER type does not, under g77, support a CHARACTER*n declaration where n is greater than 2147483647.


Previous: Character-variable Length, Up: Run-time Environment Limits

10.2.5 Year 10000 (Y10K) Problems

Most intrinsics returning, or computing values based on, date information are prone to Year-10000 (Y10K) problems, due to supporting only 4 digits for the year.

See the following for examples: FDate Intrinsic (function), FDate Intrinsic (subroutine), IDate Intrinsic (UNIX), Time Intrinsic (VXT), Date_and_Time Intrinsic.


Next: , Previous: Run-time Environment Limits, Up: Compiler

10.3 Compiler Types

Fortran implementations have a fair amount of freedom given them by the standard as far as how much storage space is used and how much precision and range is offered by the various types such as LOGICAL(KIND=1), INTEGER(KIND=1), REAL(KIND=1), REAL(KIND=2), COMPLEX(KIND=1), and CHARACTER. Further, many compilers offer so-called *n notation, but the interpretation of n varies across compilers and target architectures.

The standard requires that LOGICAL(KIND=1), INTEGER(KIND=1), and REAL(KIND=1) occupy the same amount of storage space, and that COMPLEX(KIND=1) and REAL(KIND=2) take twice as much storage space as REAL(KIND=1). Further, it requires that COMPLEX(KIND=1) entities be ordered such that when a COMPLEX(KIND=1) variable is storage-associated (such as via EQUIVALENCE) with a two-element REAL(KIND=1) array named R, R(1) corresponds to the real element and R(2) to the imaginary element of the COMPLEX(KIND=1) variable.

(Few requirements as to precision or ranges of any of these are placed on the implementation, nor is the relationship of storage sizes of these types to the CHARACTER type specified, by the standard.)

g77 follows the above requirements, warning when compiling a program requires placement of items in memory that contradict the requirements of the target architecture. (For example, a program can require placement of a REAL(KIND=2) on a boundary that is not an even multiple of its size, but still an even multiple of the size of a REAL(KIND=1) variable. On some target architectures, using the canonical mapping of Fortran types to underlying architectural types, such placement is prohibited by the machine definition or the Application Binary Interface (ABI) in force for the configuration defined for building gcc and g77. g77 warns about such situations when it encounters them.)

g77 follows consistent rules for configuring the mapping between Fortran types, including the *n notation, and the underlying architectural types as accessed by a similarly-configured applicable version of the gcc compiler. These rules offer a widely portable, consistent Fortran/C environment, although they might well conflict with the expectations of users of Fortran compilers designed and written for particular architectures.

These rules are based on the configuration that is in force for the version of gcc built in the same release as g77 (and which was therefore used to build both the g77 compiler components and the libg2c run-time library):

REAL(KIND=1)
Same as float type.


REAL(KIND=2)
Same as whatever floating-point type that is twice the size of a float—usually, this is a double.


INTEGER(KIND=1)
Same as an integral type that is occupies the same amount of memory storage as float—usually, this is either an int or a long int.


LOGICAL(KIND=1)
Same gcc type as INTEGER(KIND=1).


INTEGER(KIND=2)
Twice the size, and usually nearly twice the range, as INTEGER(KIND=1)—usually, this is either a long int or a long long int.


LOGICAL(KIND=2)
Same gcc type as INTEGER(KIND=2).


INTEGER(KIND=3)
Same gcc type as signed char.


LOGICAL(KIND=3)
Same gcc type as INTEGER(KIND=3).


INTEGER(KIND=6)
Twice the size, and usually nearly twice the range, as INTEGER(KIND=3)—usually, this is a short.


LOGICAL(KIND=6)
Same gcc type as INTEGER(KIND=6).


COMPLEX(KIND=1)
Two REAL(KIND=1) scalars (one for the real part followed by one for the imaginary part).


COMPLEX(KIND=2)
Two REAL(KIND=2) scalars.


numeric-type*n
(Where numeric-type is any type other than CHARACTER.) Same as whatever gcc type occupies n times the storage space of a gcc char item.


DOUBLE PRECISION
Same as REAL(KIND=2).


DOUBLE COMPLEX
Same as COMPLEX(KIND=2).

Note that the above are proposed correspondences and might change in future versions of g77—avoid writing code depending on them.

Other types supported by g77 are derived from gcc types such as char, short, int, long int, long long int, long double, and so on. That is, whatever types gcc already supports, g77 supports now or probably will support in a future version. The rules for the numeric-type*n notation apply to these types, and new values for numeric-type(KIND=n) will be assigned in a way that encourages clarity, consistency, and portability.


Next: , Previous: Compiler Types, Up: Compiler

10.4 Compiler Constants

g77 strictly assigns types to all constants not documented as “typeless” (typeless constants including '1'Z, for example). Many other Fortran compilers attempt to assign types to typed constants based on their context. This results in hard-to-find bugs, nonportable code, and is not in the spirit (though it strictly follows the letter) of the 77 and 90 standards.

g77 might offer, in a future release, explicit constructs by which a wider variety of typeless constants may be specified, and/or user-requested warnings indicating places where g77 might differ from how other compilers assign types to constants.

See Context-Sensitive Constants, for more information on this issue.


Previous: Compiler Constants, Up: Compiler

10.5 Compiler Intrinsics

g77 offers an ever-widening set of intrinsics. Currently these all are procedures (functions and subroutines).

Some of these intrinsics are unimplemented, but their names reserved to reduce future problems with existing code as they are implemented. Others are implemented as part of the GNU Fortran language, while yet others are provided for compatibility with other dialects of Fortran but are not part of the GNU Fortran language.

To manage these distinctions, g77 provides intrinsic groups, a facility that is simply an extension of the intrinsic groups provided by the GNU Fortran language.


Next: , Up: Compiler Intrinsics

10.5.1 Intrinsic Groups

A given specific intrinsic belongs in one or more groups. Each group is deleted, disabled, hidden, or enabled by default or a command-line option. The meaning of each term follows.

Deleted
No intrinsics are recognized as belonging to that group.


Disabled
Intrinsics are recognized as belonging to the group, but references to them (other than via the INTRINSIC statement) are disallowed through that group.


Hidden
Intrinsics in that group are recognized and enabled (if implemented) only if the first mention of the actual name of an intrinsic in a program unit is in an INTRINSIC statement.


Enabled
Intrinsics in that group are recognized and enabled (if implemented).

The distinction between deleting and disabling a group is illustrated by the following example. Assume intrinsic FOO belongs only to group FGR. If group FGR is deleted, the following program unit will successfully compile, because FOO() will be seen as a reference to an external function named FOO:

     PRINT *, FOO()
     END

If group FGR is disabled, compiling the above program will produce diagnostics, either because the FOO intrinsic is improperly invoked or, if properly invoked, it is not enabled. To change the above program so it references an external function FOO instead of the disabled FOO intrinsic, add the following line to the top:

     EXTERNAL FOO

So, deleting a group tells g77 to pretend as though the intrinsics in that group do not exist at all, whereas disabling it tells g77 to recognize them as (disabled) intrinsics in intrinsic-like contexts.

Hiding a group is like enabling it, but the intrinsic must be first named in an INTRINSIC statement to be considered a reference to the intrinsic rather than to an external procedure. This might be the “safest” way to treat a new group of intrinsics when compiling old code, because it allows the old code to be generally written as if those new intrinsics never existed, but to be changed to use them by inserting INTRINSIC statements in the appropriate places. However, it should be the goal of development to use EXTERNAL for all names of external procedures that might be intrinsic names.

If an intrinsic is in more than one group, it is enabled if any of its containing groups are enabled; if not so enabled, it is hidden if any of its containing groups are hidden; if not so hidden, it is disabled if any of its containing groups are disabled; if not so disabled, it is deleted. This extra complication is necessary because some intrinsics, such as IBITS, belong to more than one group, and hence should be enabled if any of the groups to which they belong are enabled, and so on.

The groups are:

badu77
UNIX intrinsics having inappropriate forms (usually functions that have intended side effects).


gnu
Intrinsics the GNU Fortran language supports that are extensions to the Fortran standards (77 and 90).


f2c
Intrinsics supported by AT&T's f2c converter and/or libf2c.


f90
Fortran 90 intrinsics.


mil
MIL-STD 1753 intrinsics (MVBITS, IAND, BTEST, and so on).


unix
UNIX intrinsics (IARGC, EXIT, ERF, and so on).


vxt
VAX/VMS FORTRAN (current as of v4) intrinsics.


Previous: Intrinsic Groups, Up: Compiler Intrinsics

10.5.2 Other Intrinsics

g77 supports intrinsics other than those in the GNU Fortran language proper. This set of intrinsics is described below.


Next: , Up: Other Intrinsics
10.5.2.1 ACosD Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL ACosD to use this name for an external procedure.


Next: , Previous: ACosD Intrinsic, Up: Other Intrinsics
10.5.2.2 AIMax0 Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL AIMax0 to use this name for an external procedure.


Next: , Previous: AIMax0 Intrinsic, Up: Other Intrinsics
10.5.2.3 AIMin0 Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL AIMin0 to use this name for an external procedure.


Next: , Previous: AIMin0 Intrinsic, Up: Other Intrinsics
10.5.2.4 AJMax0 Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL AJMax0 to use this name for an external procedure.


Next: , Previous: AJMax0 Intrinsic, Up: Other Intrinsics
10.5.2.5 AJMin0 Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL AJMin0 to use this name for an external procedure.


Next: , Previous: AJMin0 Intrinsic, Up: Other Intrinsics
10.5.2.6 ASinD Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL ASinD to use this name for an external procedure.


Next: , Previous: ASinD Intrinsic, Up: Other Intrinsics
10.5.2.7 ATan2D Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL ATan2D to use this name for an external procedure.


Next: , Previous: ATan2D Intrinsic, Up: Other Intrinsics
10.5.2.8 ATanD Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL ATanD to use this name for an external procedure.


Next: , Previous: ATanD Intrinsic, Up: Other Intrinsics
10.5.2.9 BITest Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL BITest to use this name for an external procedure.


Next: , Previous: BITest Intrinsic, Up: Other Intrinsics
10.5.2.10 BJTest Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL BJTest to use this name for an external procedure.


Next: , Previous: BJTest Intrinsic, Up: Other Intrinsics
10.5.2.11 CDAbs Intrinsic

     CDAbs(A)

CDAbs: REAL(KIND=2) function.

A: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c, vxt.

Description:

Archaic form of ABS() that is specific to one type for A. See Abs Intrinsic.


Next: , Previous: CDAbs Intrinsic, Up: Other Intrinsics
10.5.2.12 CDCos Intrinsic

     CDCos(X)

CDCos: COMPLEX(KIND=2) function.

X: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c, vxt.

Description:

Archaic form of COS() that is specific to one type for X. See Cos Intrinsic.


Next: , Previous: CDCos Intrinsic, Up: Other Intrinsics
10.5.2.13 CDExp Intrinsic

     CDExp(X)

CDExp: COMPLEX(KIND=2) function.

X: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c, vxt.

Description:

Archaic form of EXP() that is specific to one type for X. See Exp Intrinsic.


Next: , Previous: CDExp Intrinsic, Up: Other Intrinsics
10.5.2.14 CDLog Intrinsic

     CDLog(X)

CDLog: COMPLEX(KIND=2) function.

X: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c, vxt.

Description:

Archaic form of LOG() that is specific to one type for X. See Log Intrinsic.


Next: , Previous: CDLog Intrinsic, Up: Other Intrinsics
10.5.2.15 CDSin Intrinsic

     CDSin(X)

CDSin: COMPLEX(KIND=2) function.

X: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c, vxt.

Description:

Archaic form of SIN() that is specific to one type for X. See Sin Intrinsic.


Next: , Previous: CDSin Intrinsic, Up: Other Intrinsics
10.5.2.16 CDSqRt Intrinsic

     CDSqRt(X)

CDSqRt: COMPLEX(KIND=2) function.

X: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c, vxt.

Description:

Archaic form of SQRT() that is specific to one type for X. See SqRt Intrinsic.


Next: , Previous: CDSqRt Intrinsic, Up: Other Intrinsics
10.5.2.17 ChDir Intrinsic (function)

     ChDir(Dir)

ChDir: INTEGER(KIND=1) function.

Dir: CHARACTER; scalar; INTENT(IN).

Intrinsic groups: badu77.

Description:

Sets the current working directory to be Dir. Returns 0 on success or a nonzero error code. See chdir(3).

Caution: Using this routine during I/O to a unit connected with a non-absolute file name can cause subsequent I/O on such a unit to fail because the I/O library might reopen files by name.

Due to the side effects performed by this intrinsic, the function form is not recommended.

For information on other intrinsics with the same name: See ChDir Intrinsic (subroutine).


Next: , Previous: ChDir Intrinsic (function), Up: Other Intrinsics
10.5.2.18 ChMod Intrinsic (function)

     ChMod(Name, Mode)

ChMod: INTEGER(KIND=1) function.

Name: CHARACTER; scalar; INTENT(IN).

Mode: CHARACTER; scalar; INTENT(IN).

Intrinsic groups: badu77.

Description:

Changes the access mode of file Name according to the specification Mode, which is given in the format of chmod(1). A null character (CHAR(0)) marks the end of the name in Name—otherwise, trailing blanks in Name are ignored. Currently, Name must not contain the single quote character.

Returns 0 on success or a nonzero error code otherwise.

Note that this currently works by actually invoking /bin/chmod (or the chmod found when the library was configured) and so might fail in some circumstances and will, anyway, be slow.

Due to the side effects performed by this intrinsic, the function form is not recommended.

For information on other intrinsics with the same name: See ChMod Intrinsic (subroutine).


Next: , Previous: ChMod Intrinsic (function), Up: Other Intrinsics
10.5.2.19 CosD Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL CosD to use this name for an external procedure.


Next: , Previous: CosD Intrinsic, Up: Other Intrinsics
10.5.2.20 DACosD Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL DACosD to use this name for an external procedure.


Next: , Previous: DACosD Intrinsic, Up: Other Intrinsics
10.5.2.21 DASinD Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL DASinD to use this name for an external procedure.


Next: , Previous: DASinD Intrinsic, Up: Other Intrinsics
10.5.2.22 DATan2D Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL DATan2D to use this name for an external procedure.


Next: , Previous: DATan2D Intrinsic, Up: Other Intrinsics
10.5.2.23 DATanD Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL DATanD to use this name for an external procedure.


Next: , Previous: DATanD Intrinsic, Up: Other Intrinsics
10.5.2.24 Date Intrinsic

     CALL Date(Date)

Date: CHARACTER; scalar; INTENT(OUT).

Intrinsic groups: vxt.

Description:

Returns Date in the form dd-mmm-yy, representing the numeric day of the month dd, a three-character abbreviation of the month name mmm and the last two digits of the year yy, e.g. 25-Nov-96.

This intrinsic is not recommended, due to the year 2000 approaching. Therefore, programs making use of this intrinsic might not be Year 2000 (Y2K) compliant. See CTime Intrinsic (subroutine), for information on obtaining more digits for the current (or any) date.


Next: , Previous: Date Intrinsic, Up: Other Intrinsics
10.5.2.25 DbleQ Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL DbleQ to use this name for an external procedure.


Next: , Previous: DbleQ Intrinsic, Up: Other Intrinsics
10.5.2.26 DCmplx Intrinsic

     DCmplx(X, Y)

DCmplx: COMPLEX(KIND=2) function.

X: INTEGER, REAL, or COMPLEX; scalar; INTENT(IN).

Y: INTEGER or REAL; OPTIONAL (must be omitted if X is COMPLEX); scalar; INTENT(IN).

Intrinsic groups: f2c, vxt.

Description:

If X is not type COMPLEX, constructs a value of type COMPLEX(KIND=2) from the real and imaginary values specified by X and Y, respectively. If Y is omitted, 0D0 is assumed.

If X is type COMPLEX, converts it to type COMPLEX(KIND=2).

Although this intrinsic is not standard Fortran, it is a popular extension offered by many compilers that support DOUBLE COMPLEX, since it offers the easiest way to convert to DOUBLE COMPLEX without using Fortran 90 features (such as the KIND= argument to the CMPLX() intrinsic).

(CMPLX(0D0, 0D0) returns a single-precision COMPLEX result, as required by standard FORTRAN 77. That's why so many compilers provide DCMPLX(), since DCMPLX(0D0, 0D0) returns a DOUBLE COMPLEX result. Still, DCMPLX() converts even REAL*16 arguments to their REAL*8 equivalents in most dialects of Fortran, so neither it nor CMPLX() allow easy construction of arbitrary-precision values without potentially forcing a conversion involving extending or reducing precision. GNU Fortran provides such an intrinsic, called COMPLEX().)

See Complex Intrinsic, for information on easily constructing a COMPLEX value of arbitrary precision from REAL arguments.


Next: , Previous: DCmplx Intrinsic, Up: Other Intrinsics
10.5.2.27 DConjg Intrinsic

     DConjg(Z)

DConjg: COMPLEX(KIND=2) function.

Z: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c, vxt.

Description:

Archaic form of CONJG() that is specific to one type for Z. See Conjg Intrinsic.


Next: , Previous: DConjg Intrinsic, Up: Other Intrinsics
10.5.2.28 DCosD Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL DCosD to use this name for an external procedure.


Next: , Previous: DCosD Intrinsic, Up: Other Intrinsics
10.5.2.29 DFloat Intrinsic

     DFloat(A)

DFloat: REAL(KIND=2) function.

A: INTEGER; scalar; INTENT(IN).

Intrinsic groups: f2c, vxt.

Description:

Archaic form of REAL() that is specific to one type for A. See Real Intrinsic.


Next: , Previous: DFloat Intrinsic, Up: Other Intrinsics
10.5.2.30 DFlotI Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL DFlotI to use this name for an external procedure.


Next: , Previous: DFlotI Intrinsic, Up: Other Intrinsics
10.5.2.31 DFlotJ Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL DFlotJ to use this name for an external procedure.


Next: , Previous: DFlotJ Intrinsic, Up: Other Intrinsics
10.5.2.32 DImag Intrinsic

     DImag(Z)

DImag: REAL(KIND=2) function.

Z: COMPLEX(KIND=2); scalar; INTENT(IN).

Intrinsic groups: f2c, vxt.

Description:

Archaic form of AIMAG() that is specific to one type for Z. See AImag Intrinsic.


Next: , Previous: DImag Intrinsic, Up: Other Intrinsics
10.5.2.33 DReal Intrinsic

     DReal(A)

DReal: REAL(KIND=2) function.

A: INTEGER, REAL, or COMPLEX; scalar; INTENT(IN).

Intrinsic groups: vxt.

Description:

Converts A to REAL(KIND=2).

If A is type COMPLEX, its real part is converted (if necessary) to REAL(KIND=2), and its imaginary part is disregarded.

Although this intrinsic is not standard Fortran, it is a popular extension offered by many compilers that support DOUBLE COMPLEX, since it offers the easiest way to extract the real part of a DOUBLE COMPLEX value without using the Fortran 90 REAL() intrinsic in a way that produces a return value inconsistent with the way many FORTRAN 77 compilers handle REAL() of a DOUBLE COMPLEX value.

See RealPart Intrinsic, for information on a GNU Fortran intrinsic that avoids these areas of confusion.

See Dble Intrinsic, for information on the standard FORTRAN 77 replacement for DREAL().

See REAL() and AIMAG() of Complex, for more information on this issue.


Next: , Previous: DReal Intrinsic, Up: Other Intrinsics
10.5.2.34 DSinD Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL DSinD to use this name for an external procedure.


Next: , Previous: DSinD Intrinsic, Up: Other Intrinsics
10.5.2.35 DTanD Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL DTanD to use this name for an external procedure.


Next: , Previous: DTanD Intrinsic, Up: Other Intrinsics
10.5.2.36 DTime Intrinsic (function)

     DTime(TArray)

DTime: REAL(KIND=1) function.

TArray: REAL(KIND=1); DIMENSION(2); INTENT(OUT).

Intrinsic groups: badu77.

Description:

Initially, return the number of seconds of runtime since the start of the process's execution as the function value, and the user and system components of this in TArray(1) and TArray(2) respectively. The functions' value is equal to TArray(1) + TArray(2).

Subsequent invocations of DTIME() return values accumulated since the previous invocation.

On some systems, the underlying timings are represented using types with sufficiently small limits that overflows (wraparounds) are possible, such as 32-bit types. Therefore, the values returned by this intrinsic might be, or become, negative, or numerically less than previous values, during a single run of the compiled program.

Due to the side effects performed by this intrinsic, the function form is not recommended.

For information on other intrinsics with the same name: See DTime Intrinsic (subroutine).


Next: , Previous: DTime Intrinsic (function), Up: Other Intrinsics
10.5.2.37 FGet Intrinsic (function)

     FGet(C)

FGet: INTEGER(KIND=1) function.

C: CHARACTER; scalar; INTENT(OUT).

Intrinsic groups: badu77.

Description:

Reads a single character into C in stream mode from unit 5 (by-passing normal formatted input) using getc(3). Returns 0 on success, −1 on end-of-file, and the error code from ferror(3) otherwise.

Stream I/O should not be mixed with normal record-oriented (formatted or unformatted) I/O on the same unit; the results are unpredictable.

For information on other intrinsics with the same name: See FGet Intrinsic (subroutine).


Next: , Previous: FGet Intrinsic (function), Up: Other Intrinsics
10.5.2.38 FGetC Intrinsic (function)

     FGetC(Unit, C)

FGetC: INTEGER(KIND=1) function.

Unit: INTEGER; scalar; INTENT(IN).

C: CHARACTER; scalar; INTENT(OUT).

Intrinsic groups: badu77.

Description:

Reads a single character into C in stream mode from unit Unit (by-passing normal formatted output) using getc(3). Returns 0 on success, −1 on end-of-file, and the error code from ferror(3) otherwise.

Stream I/O should not be mixed with normal record-oriented (formatted or unformatted) I/O on the same unit; the results are unpredictable.

For information on other intrinsics with the same name: See FGetC Intrinsic (subroutine).


Next: , Previous: FGetC Intrinsic (function), Up: Other Intrinsics
10.5.2.39 FloatI Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL FloatI to use this name for an external procedure.


Next: , Previous: FloatI Intrinsic, Up: Other Intrinsics
10.5.2.40 FloatJ Intrinsic

This intrinsic is not yet implemented. The name is, however, reserved as an intrinsic. Use EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: , Previous: FloatJ Intrinsic, Up: Other Intrinsics
10.5.2.41 FPut Intrinsic (function)EXTERNAL FloatJ to use this name for an external procedure.


Next: