Extensions-implemented-in-GNU-Fortran.html 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <!-- Copyright (C) 1999-2017 Free Software Foundation, Inc.
  4. Permission is granted to copy, distribute and/or modify this document
  5. under the terms of the GNU Free Documentation License, Version 1.3 or
  6. any later version published by the Free Software Foundation; with the
  7. Invariant Sections being "Funding Free Software", the Front-Cover
  8. Texts being (a) (see below), and with the Back-Cover Texts being (b)
  9. (see below). A copy of the license is included in the section entitled
  10. "GNU Free Documentation License".
  11. (a) The FSF's Front-Cover Text is:
  12. A GNU Manual
  13. (b) The FSF's Back-Cover Text is:
  14. You have freedom to copy and modify this GNU Manual, like GNU
  15. software. Copies published by the Free Software Foundation raise
  16. funds for GNU development. -->
  17. <!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
  18. <head>
  19. <title>The GNU Fortran Compiler: Extensions implemented in GNU Fortran</title>
  20. <meta name="description" content="The GNU Fortran Compiler: Extensions implemented in GNU Fortran">
  21. <meta name="keywords" content="The GNU Fortran Compiler: Extensions implemented in GNU Fortran">
  22. <meta name="resource-type" content="document">
  23. <meta name="distribution" content="global">
  24. <meta name="Generator" content="makeinfo">
  25. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  26. <link href="index.html#Top" rel="start" title="Top">
  27. <link href="Option-Index.html#Option-Index" rel="index" title="Option Index">
  28. <link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
  29. <link href="Extensions.html#Extensions" rel="up" title="Extensions">
  30. <link href="Old_002dstyle-kind-specifications.html#Old_002dstyle-kind-specifications" rel="next" title="Old-style kind specifications">
  31. <link href="Extensions.html#Extensions" rel="prev" title="Extensions">
  32. <style type="text/css">
  33. <!--
  34. a.summary-letter {text-decoration: none}
  35. blockquote.smallquotation {font-size: smaller}
  36. div.display {margin-left: 3.2em}
  37. div.example {margin-left: 3.2em}
  38. div.indentedblock {margin-left: 3.2em}
  39. div.lisp {margin-left: 3.2em}
  40. div.smalldisplay {margin-left: 3.2em}
  41. div.smallexample {margin-left: 3.2em}
  42. div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
  43. div.smalllisp {margin-left: 3.2em}
  44. kbd {font-style:oblique}
  45. pre.display {font-family: inherit}
  46. pre.format {font-family: inherit}
  47. pre.menu-comment {font-family: serif}
  48. pre.menu-preformatted {font-family: serif}
  49. pre.smalldisplay {font-family: inherit; font-size: smaller}
  50. pre.smallexample {font-size: smaller}
  51. pre.smallformat {font-family: inherit; font-size: smaller}
  52. pre.smalllisp {font-size: smaller}
  53. span.nocodebreak {white-space:nowrap}
  54. span.nolinebreak {white-space:nowrap}
  55. span.roman {font-family:serif; font-weight:normal}
  56. span.sansserif {font-family:sans-serif; font-weight:normal}
  57. ul.no-bullet {list-style: none}
  58. -->
  59. </style>
  60. </head>
  61. <body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
  62. <a name="Extensions-implemented-in-GNU-Fortran"></a>
  63. <div class="header">
  64. <p>
  65. Next: <a href="Extensions-not-implemented-in-GNU-Fortran.html#Extensions-not-implemented-in-GNU-Fortran" accesskey="n" rel="next">Extensions not implemented in GNU Fortran</a>, Up: <a href="Extensions.html#Extensions" accesskey="u" rel="up">Extensions</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Option-Index.html#Option-Index" title="Index" rel="index">Index</a>]</p>
  66. </div>
  67. <hr>
  68. <a name="Extensions-implemented-in-GNU-Fortran-1"></a>
  69. <h3 class="section">6.1 Extensions implemented in GNU Fortran</h3>
  70. <a name="index-extensions_002c-implemented"></a>
  71. <p>GNU Fortran implements a number of extensions over standard
  72. Fortran. This chapter contains information on their syntax and
  73. meaning. There are currently two categories of GNU Fortran
  74. extensions, those that provide functionality beyond that provided
  75. by any standard, and those that are supported by GNU Fortran
  76. purely for backward compatibility with legacy compilers. By default,
  77. <samp>-std=gnu</samp> allows the compiler to accept both types of
  78. extensions, but to warn about the use of the latter. Specifying
  79. either <samp>-std=f95</samp>, <samp>-std=f2003</samp> or <samp>-std=f2008</samp>
  80. disables both types of extensions, and <samp>-std=legacy</samp> allows both
  81. without warning. The special compile flag <samp>-fdec</samp> enables additional
  82. compatibility extensions along with those enabled by <samp>-std=legacy</samp>.
  83. </p>
  84. <table class="menu" border="0" cellspacing="0">
  85. <tr><td align="left" valign="top">&bull; <a href="Old_002dstyle-kind-specifications.html#Old_002dstyle-kind-specifications" accesskey="1">Old-style kind specifications</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  86. </td></tr>
  87. <tr><td align="left" valign="top">&bull; <a href="Old_002dstyle-variable-initialization.html#Old_002dstyle-variable-initialization" accesskey="2">Old-style variable initialization</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  88. </td></tr>
  89. <tr><td align="left" valign="top">&bull; <a href="Extensions-to-namelist.html#Extensions-to-namelist" accesskey="3">Extensions to namelist</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  90. </td></tr>
  91. <tr><td align="left" valign="top">&bull; <a href="X-format-descriptor-without-count-field.html#X-format-descriptor-without-count-field" accesskey="4">X format descriptor without count field</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  92. </td></tr>
  93. <tr><td align="left" valign="top">&bull; <a href="Commas-in-FORMAT-specifications.html#Commas-in-FORMAT-specifications" accesskey="5">Commas in FORMAT specifications</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  94. </td></tr>
  95. <tr><td align="left" valign="top">&bull; <a href="Missing-period-in-FORMAT-specifications.html#Missing-period-in-FORMAT-specifications" accesskey="6">Missing period in FORMAT specifications</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  96. </td></tr>
  97. <tr><td align="left" valign="top">&bull; <a href="I_002fO-item-lists.html#I_002fO-item-lists" accesskey="7">I/O item lists</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  98. </td></tr>
  99. <tr><td align="left" valign="top">&bull; <a href="Q-exponent_002dletter.html#Q-exponent_002dletter" accesskey="8"><code>Q</code> exponent-letter</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  100. </td></tr>
  101. <tr><td align="left" valign="top">&bull; <a href="BOZ-literal-constants.html#BOZ-literal-constants" accesskey="9">BOZ literal constants</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  102. </td></tr>
  103. <tr><td align="left" valign="top">&bull; <a href="Real-array-indices.html#Real-array-indices">Real array indices</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  104. </td></tr>
  105. <tr><td align="left" valign="top">&bull; <a href="Unary-operators.html#Unary-operators">Unary operators</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  106. </td></tr>
  107. <tr><td align="left" valign="top">&bull; <a href="Implicitly-convert-LOGICAL-and-INTEGER-values.html#Implicitly-convert-LOGICAL-and-INTEGER-values">Implicitly convert LOGICAL and INTEGER values</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  108. </td></tr>
  109. <tr><td align="left" valign="top">&bull; <a href="Hollerith-constants-support.html#Hollerith-constants-support">Hollerith constants support</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  110. </td></tr>
  111. <tr><td align="left" valign="top">&bull; <a href="Cray-pointers.html#Cray-pointers">Cray pointers</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  112. </td></tr>
  113. <tr><td align="left" valign="top">&bull; <a href="CONVERT-specifier.html#CONVERT-specifier">CONVERT specifier</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  114. </td></tr>
  115. <tr><td align="left" valign="top">&bull; <a href="OpenMP.html#OpenMP">OpenMP</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  116. </td></tr>
  117. <tr><td align="left" valign="top">&bull; <a href="OpenACC.html#OpenACC">OpenACC</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  118. </td></tr>
  119. <tr><td align="left" valign="top">&bull; <a href="Argument-list-functions.html#Argument-list-functions">Argument list functions</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  120. </td></tr>
  121. <tr><td align="left" valign="top">&bull; <a href="Read_002fWrite-after-EOF-marker.html#Read_002fWrite-after-EOF-marker">Read/Write after EOF marker</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  122. </td></tr>
  123. <tr><td align="left" valign="top">&bull; <a href="STRUCTURE-and-RECORD.html#STRUCTURE-and-RECORD">STRUCTURE and RECORD</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  124. </td></tr>
  125. <tr><td align="left" valign="top">&bull; <a href="UNION-and-MAP.html#UNION-and-MAP">UNION and MAP</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  126. </td></tr>
  127. <tr><td align="left" valign="top">&bull; <a href="Type-variants-for-integer-intrinsics.html#Type-variants-for-integer-intrinsics">Type variants for integer intrinsics</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  128. </td></tr>
  129. <tr><td align="left" valign="top">&bull; <a href="AUTOMATIC-and-STATIC-attributes.html#AUTOMATIC-and-STATIC-attributes">AUTOMATIC and STATIC attributes</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  130. </td></tr>
  131. <tr><td align="left" valign="top">&bull; <a href="Extended-math-intrinsics.html#Extended-math-intrinsics">Extended math intrinsics</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  132. </td></tr>
  133. <tr><td align="left" valign="top">&bull; <a href="Form-feed-as-whitespace.html#Form-feed-as-whitespace">Form feed as whitespace</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  134. </td></tr>
  135. <tr><td align="left" valign="top">&bull; <a href="TYPE-as-an-alias-for-PRINT.html#TYPE-as-an-alias-for-PRINT">TYPE as an alias for PRINT</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  136. </td></tr>
  137. <tr><td align="left" valign="top">&bull; <a href="_0025LOC-as-an-rvalue.html#g_t_0025LOC-as-an-rvalue">%LOC as an rvalue</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  138. </td></tr>
  139. <tr><td align="left" valign="top">&bull; <a href="_002eXOR_002e-operator.html#g_t_002eXOR_002e-operator">.XOR. operator</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  140. </td></tr>
  141. <tr><td align="left" valign="top">&bull; <a href="Bitwise-logical-operators.html#Bitwise-logical-operators">Bitwise logical operators</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  142. </td></tr>
  143. <tr><td align="left" valign="top">&bull; <a href="Extended-I_002fO-specifiers.html#Extended-I_002fO-specifiers">Extended I/O specifiers</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  144. </td></tr>
  145. <tr><td align="left" valign="top">&bull; <a href="Legacy-PARAMETER-statements.html#Legacy-PARAMETER-statements">Legacy PARAMETER statements</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  146. </td></tr>
  147. <tr><td align="left" valign="top">&bull; <a href="Default-exponents.html#Default-exponents">Default exponents</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  148. </td></tr>
  149. </table>
  150. <hr>
  151. <div class="header">
  152. <p>
  153. Next: <a href="Extensions-not-implemented-in-GNU-Fortran.html#Extensions-not-implemented-in-GNU-Fortran" accesskey="n" rel="next">Extensions not implemented in GNU Fortran</a>, Up: <a href="Extensions.html#Extensions" accesskey="u" rel="up">Extensions</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Option-Index.html#Option-Index" title="Index" rel="index">Index</a>]</p>
  154. </div>
  155. </body>
  156. </html>