New Language Features...1739 Chapter 42: Conformance, Compatibility, and Fortran
2003 Features
Language Standards Conformance...1741 Language Compatibility...1741 Fortran 2003 Features...1741 Chapter 43: Program Structure, Characters, and Source
Forms
Program Structure...1745 Statements...1746
Names...1748 Keywords...1750 Character Sets...1750 Source Forms...1752 Free Source Form...1754 Fixed and Tab Source Forms...1757 Source Code Useable for All Source Forms...1761 Chapter 44: Data Types, Constants, and Variables
Intrinsic Data Types...1763 Integer Data Types...1765 Real Data Types...1769 Complex Data Types...1774 General Rules for Complex Constants...1775 COMPLEX(4) Constants...1775 COMPLEX(8) or DOUBLE COMPLEX Constants...1776 COMPLEX(16) Constants...1777 Logical Data Types...1778 Logical Constants...1779 Character Data Type...1779 Character Constants...1780 C Strings in Character Constants...1781 Character Substrings...1783 Derived Data Types...1784 Derived-Type Definition...1785 Default Initialization...1785 Structure Components...1786 Structure Constructors...1790 Binary, Octal, Hexadecimal, and Hollerith Constants...1792 Binary Constants...1792 Octal Constants...1793 Hexadecimal Constants...1793
Hollerith Constants...1794 Determining the Data Type of Nondecimal Constants...1795 Variables...1798 Data Types of Scalar Variables...1799 Arrays...1800 Chapter 45: Expressions and Assignment Statements
Expressions...1817 Numeric Expressions...1818 Character Expressions...1823 Relational Expressions...1823 Logical Expressions...1825 Defined Operations...1827 Summary of Operator Precedence...1827 Initialization and Specification Expressions...1828 Assignment Statements...1833 Intrinsic Assignments...1833 Defined Assignments...1839 Pointer Assignments...1840 WHERE Statement and Construct Overview...1843 FORALL Statement and Construct Overview...1843 Chapter 46: Specification Statements
Type Declaration Statements...1846 Declaration Statements for Noncharacter Types...1847 Declaration Statements for Character Types...1849 Declaration Statements for Derived Types...1852 Declaration Statements for Arrays...1853 ALLOCATABLE Attribute and Statement Overview...1862 ASYNCHRONOUS Attribute and Statement Overview...1862 AUTOMATIC and STATIC Attributes and Statements
Overview...1862 BIND Attribute and Statement Overview...1862
COMMON Statement Overview...1862 DATA Statement Overview...1863 DIMENSION Attribute and Statement Overview...1863 EQUIVALENCE Statement Overview...1863 Making Arrays Equivalent...1863 Making Substrings Equivalent...1865 EQUIVALENCE and COMMON Interaction...1870 EXTERNAL Attribute and Statement Overview...1872 IMPLICIT Statement Overview...1872 INTENT Attribute and Statement Overview...1872 INTRINSIC Attribute and Statement Overview...1872 NAMELIST Statement Overview...1873 OPTIONAL Attribute and Statement Overview...1873 PARAMETER Attribute and Statement Overview...1873 POINTER Attribute and Statement Overview...1873 PROTECTED Attribute and Statement Overview...1873 PUBLIC and PRIVATE Attributes and Statements Overview....1873 SAVE Attribute and Statement Overview...1873 TARGET Attribute and Statement Overview...1874 VALUE Attribute and Statement Overview...1874 VOLATILE Attribute and Statement Overview...1874 Chapter 47: Dynamic Allocation
ALLOCATE Statement Overview...1875 Allocation of Allocatable Arrays...1876 Allocation of Pointer Targets...1877 DEALLOCATE Statement Overview...1878 Deallocation of Allocatable Arrays...1878 Deallocation of Pointer Targets...1880 NULLIFY Statement Overview...1881 Chapter 48: Execution Control
Unconditional GO TO Statement Overview...1884 Computed GO TO Statement Overview...1884 The ASSIGN and Assigned GO TO Statements
Overview...1884 Arithmetic IF Statement Overview...1885 CALL Statement Overview...1885 CASE Constructs Overview...1885 CONTINUE Statement Overview...1885 DO Constructs Overview...1885 Forms for DO Constructs...1886 Execution of DO Constructs...1886 DO WHILE Statement Overview...1894 CYCLE Statement Overview...1894 EXIT Statement Overview...1894 END Statement Overview...1894 IF Construct and Statement Overview...1894 IF Construct Overview...1894 IF Statement Overview...1894 PAUSE Statement Overview...1894 RETURN Statement Overview...1895 STOP Statement Overview...1895 Chapter 49: Program Units and Procedures
Main Program...1898 Modules and Module Procedures...1898 Module References...1899 USE Statement...1899 Intrinsic Modules...1900 ISO_C_BINDING...1901 ISO_FORTRAN_ENV...1904 IEEE Intrinsic Modules and Procedures...1906 Block Data Program Units...1914
Functions, Subroutines, and Statement Functions...1914 General Rules for Function and Subroutine
Subprograms...1915 Functions...1916 Subroutines...1918 Statement Functions...1918 External Procedures...1918 Internal Procedures...1918 Argument Association...1920 Optional Arguments...1923 Array Arguments...1924 Pointer Arguments...1925 Assumed-Length Character Arguments...1926 Character Constant and Hollerith Arguments...1927 Alternate Return Arguments...1928 Dummy Procedure Arguments...1929 References to Generic Procedures...1930 References to Non-Fortran Procedures...1935 Procedure Interfaces...1935
Determining When Procedures Require Explicit
Interfaces...1937 Defining Explicit Interfaces...1938 Defining Generic Names for Procedures...1938 Defining Generic Operators...1940 Defining Generic Assignment...1942 CONTAINS Statement Overview...1944 ENTRY Statement Overview...1944 ENTRY Statements in Function Subprograms...1944 ENTRY Statements in Subroutine Subprograms...1945 IMPORT Statement Overview...1946 Chapter 50: Intrinsic Procedures
Argument Keywords in Intrinsic Procedures...1949 Overview of Bit Functions...1951 Categories and Lists of Intrinsic Procedures...1953 Categories of Intrinsic Functions...1953 Intrinsic Subroutines...1975 Chapter 51: Data Transfer I/O Statements
Records and Files...1979 Components of Data Transfer Statements...1980 I/O Control List...1981 I/O Lists...1990 READ Statements...1997 Forms for Sequential READ Statements...1998 Forms for Direct-Access READ Statements...2012 Forms for Stream READ Statements...2014 Forms and Rules for Internal READ Statements...2014 ACCEPT Statement Overview...2017 WRITE Statements...2017 Forms for Sequential WRITE Statements...2017 Forms for Direct-Access WRITE Statements...2026 Forms for Stream WRITE Statements...2027 Forms and Rules for Internal WRITE Statements...2027 PRINT and TYPE Statements Overview...2028 REWRITE Statement Overview...2029 Chapter 52: I/O Formatting
Format Specifications...2031 Data Edit Descriptors...2039 Forms for Data Edit Descriptors...2040 General Rules for Numeric Editing...2042 Integer Editing...2044 Real and Complex Editing...2049 Logical Editing (L)...2061
Character Editing (A)...2062 Default Widths for Data Edit Descriptors...2065 Terminating Short Fields of Input Data...2066 Control Edit Descriptors...2068 Forms for Control Edit Descriptors...2068 Positional Editing...2070 Sign Editing...2071 Blank Editing...2073 Scale-Factor Editing (P)...2074 Slash Editing ( / )...2077 Colon Editing (:)...2079 Dollar-Sign ($) and Backslash ( \ ) Editing...2079 Character Count Editing (Q)...2080 Character String Edit Descriptors...2083 Character Constant Editing...2083 H Editing...2084 Nested and Group Repeat Specifications...2086 Variable Format Expressions...2086 Printing of Formatted Records...2089 Interaction Between Format Specifications and I/O Lists...2090 Chapter 53: File Operation I/O Statements
BACKSPACE Statement Overview...2103 CLOSE Statement Overview...2103 DELETE Statement Overview...2103 ENDFILE Statement Overview...2103 FLUSH Statement Overview...2103 INQUIRE Statement Overview...2103 ACCESS Specifier...2104 ACTION Specifier...2104 ASYNCHRONOUS Specifier...2105 BINARY Specifier (W*32, W*64)...2105
BLANK Specifier...2106 BLOCKSIZE Specifier...2106 BUFFERED Specifier...2106 CARRIAGECONTROL Specifier...2107 CONVERT Specifier...2107 DELIM Specifier...2108 DIRECT Specifier...2109 EXIST Specifier...2109 FORM Specifier...2110 FORMATTED Specifier...2110 ID Specifier...2111 IOFOCUS Specifier (W*32, W*64)...2111 MODE Specifier...2112 NAME Specifier...2112 NAMED Specifier...2112 NEXTREC Specifier...2113 NUMBER Specifier...2113 OPENED Specifier...2113 ORGANIZATION Specifier...2114 PAD Specifier...2114 PENDING Specifier...2114 POS Specifier...2115 POSITION Specifier...2116 READ Specifier...2116 READWRITE Specifier...2117 RECL Specifier...2117 RECORDTYPE Specifier...2117 SEQUENTIAL Specifier...2118 SHARE Specifier...2119 UNFORMATTED Specifier...2120 WRITE Specifier...2120 OPEN Statement Overview...2120
ACCESS Specifier...2125 ACTION Specifier...2125 ASSOCIATEVARIABLE Specifier...2126 ASYNCHRONOUS Specifier...2126 BLANK Specifier...2127 BLOCKSIZE Specifier...2127 BUFFERCOUNT Specifier...2128 BUFFERED Specifier...2128 CARRIAGECONTROL Specifier...2129 CONVERT Specifier...2130 DEFAULTFILE Specifier...2133 DELIM Specifier...2133 DISPOSE Specifier...2134 FILE Specifier...2134 FORM Specifier...2136 IOFOCUS Specifier (W*32, W*64)...2137 MAXREC Specifier...2138 MODE Specifier...2138 NAME Specifier...2138 NOSHARED Specifier...2138 ORGANIZATION Specifier...2138 PAD Specifier...2139 POSITION Specifier...2139 READONLY Specifier...2140 RECL Specifier...2141 RECORDSIZE Specifier...2143 RECORDTYPE Specifier...2143 SHARE Specifier...2144 SHARED Specifier...2146 STATUS Specifier...2146 TITLE Specifier (W*32, W*64)...2147 TYPE Specifier...2148
USEROPEN Specifier...2148 REWIND Statement Overview...2155 WAIT Statement Overview...2155 Chapter 54: Compilation Control Lines and Statements Chapter 55: Directive Enhanced Compilation
Syntax Rules for Compiler Directives...2159 General Compiler Directives...2160 Rules for General Directives that Affect DO Loops...2162 Rules for Loop Directives that Affect Array Assignment
Statements...2163 OpenMP* Fortran Compiler Directives...2164 Data Scope Attribute Clauses...2166 Conditional Compilation Rules...2167 Nesting and Binding Rules...2168 Chapter 56: Scope and Association
Scope...2171 Unambiguous Generic Procedure References...2175 Resolving Procedure References...2175 References to Generic Names...2176 References to Specific Names...2179 References to Nonestablished Names...2180 Association...2181 Name Association...2183 Pointer Association...2185 Storage Association...2186 Chapter 57: Deleted and Obsolescent Language Features
Deleted Language Features in Fortran 95...2191 Obsolescent Language Features in Fortran 95...2191 Obsolescent Language Features in Fortran 90...2193