9778
Comment: Reflect new support for IEEE modules

← Revision 116 as of 20150116 13:03:02 ⇥
9775

Deletions are marked like this.  Additions are marked like this. 
Line 42:  Line 42: 
15580: IEEE Arithmetic <bgcolor="#bbddbb">'''Yes''' (since 4.10)   15580: IEEE Arithmetic <bgcolor="#bbddbb">'''Yes''' (since 5.0)  
Line 82:  Line 82: 
Controlling IEEE underflow <bgcolor="#bbddbb">'''Yes''' (since 4.10)  Another IEEE class value <bgcolor="#bbddbb">'''Yes''' (since 4.10)  
Controlling IEEE underflow <bgcolor="#bbddbb">'''Yes''' (since 5.0)  Another IEEE class value <bgcolor="#bbddbb">'''Yes''' (since 5.0)  
Chart of Fortran 2003 Features supported by GNU Fortran
See also Fortran 2008 implementation status
See also TS 29113: Technical Specification on Further Interoperability with C
When the question which Fortran 2003 feature are implemented in which compiler, came up in comp.lang.fortran, the idea was born to create a chart of the features supported by the different compilers; the question was sent to the j3Fortran list and the result was the series of Fortran Forum articles, listed below.
The listed items follow the sections in the following writeup:
John Reid, ''The new features of Fortran 2003'', ACM SIGPLAN Fortran Forum '''96''', 10 (2007), which is also available from the Fortran Standards homepage
The Fortran Forum articles:
Update: ACM SIGPLAN Fortran Forum '''26''', 2 (2007) (part of the Frontmatter; contains the status of more compilers)
April 2009: ACM SIGPLAN Fortran Forum '''28'''(1), 26 (2009)
August 2009: ACM SIGPLAN Fortran Forum '''28'''(2), 15 (2009)
December 2009: ACM SIGPLAN Fortran Forum '''28'''(3), 32 (2009)
April 2010: ACM SIGPLAN Fortran Forum '''29'''(1), 29 (2010)
August 2010: ACM SIGPLAN Fortran Forum '''29'''(2), 28 (2010)
November 2010: ACM SIGPLAN Fortran Forum '''29'''(3), 26 (2010)
April 2011: ACM SIGPLAN Fortran Forum '''30'''(1), 16 (2011)
August 2011: ACM SIGPLAN Fortran Forum '''30'''(2), 18 (2011)
December 2011: ACM SIGPLAN Fortran Forum '''30''' (2), 20 (2011)
April 2012: ACM SIGPLAN Fortran Forum '''31''' (1), 23 (2012)
August 2012: ACM SIGPLAN Fortran Forum '''31''' (2), 28 (2012)
December 2012 ACM SIGPLAN Fortran Forum '''31''' (3), 17 (2012)
A freely available version of the article can be found at:
http://www.fortranplus.co.uk/resources/fortran_2003_2008_compiler_support.pdf (Fortran Forum PDF, always delayed by a few months)
Implemented 2003 feature in GNU Fortran compiler
For other compilers see the Fortran Forum paper cited above. (These are not the only new features of Fortran 2003 though.)
See also: Fortran 2003 Features in the GNU Fortran
ISO TRs 

15580: IEEE Arithmetic 
Yes (since 5.0) 
15581: Allocatable Enhancements 
Yes (since 4.2) 
Data enhancements and object orientation 

Parameterized derived types 

Yes (partial since 4.4, components since 4.5) 

Finalization 
Partial (since 4.9, being developed) 
Procedures bound by name to a type 
Yes (partial since 4.4, 20080831) 
The PASS attribute 
Yes (since 4.5, 20090725) 
Procedures bound to a type as operators 
Yes (since 4.5, 20090827) 
Type extension 
Yes (since 4.4, 20080729) 
Overriding a typebound procedure 
Yes (since 4.4, 20080828) 
Enumerations 
Yes (since 4.1) 
ASSOCIATE construct 
Partial (since 4.6, 20100817, bugs: PR38936, PR49636, PR52832) 
Yes (partial since 4.5, arrays since 4.7, unlimited since 4.8) 

SELECT TYPE construct 
Yes (since 4.5, 20091130) 
Deferred bindings and abstract types 
Yes (since 4.4, 20080902; deferred binding since 20090329) 
Allocatable scalars 
Yes (since 4.5, 20090930) 
Allocatable character length 
Partial (since 4.6, as components since 4.9, bugs: PR45170) 
Miscellaneous enhancements 

Structure constructors 
Yes (since 4.4, 20080516) 
The allocate statement 
Yes (since 4.5, 20090930) 
Assignment to an allocatable array 
Yes (since 4.6, 20110128) 
Transferring an allocation 
Yes (since 4.2) 
More control of access from a module 
Yes 
Renaming operators on the USE statement 
Partial (not: operator(+)=>operator(.user.) etc.; PR31298) 
Pointer assignment 
Yes (since 4.6, 20100819) 
Pointer INTENT 
Yes (since 4.3) 
The VOLATILE attribute 
Yes (since 4.3) 
The IMPORT statement 
Yes (since 4.3) 
Intrinsic modules 
Yes (since 4.3) 
Access to the computing environment 
Yes (since 4.3) 
Support for international character sets 
Yes (since 4.4, 20080430; UTF8 I/O since 20080816) 
Lengths of names and statements 
Yes 
Binary, octal and hex constants 
Yes (since 4.3, 20071208) 
Array constructor syntax 
Yes (since 4.4, 20080516) 
Specification and initialization expressions 
Partial 
Complex constants 
Yes 
Changes to intrinsic functions 

Controlling IEEE underflow 
Yes (since 5.0) 
Another IEEE class value 
Yes (since 5.0) 
Input/output enhancements 

Derived type input/output 
No (PR48298, early draft patch) 
Asynchronous input/output 
Yes (since 4.4, 20080405; implemented as synchronous I/O) 
FLUSH statement 
Yes (since 4.1) 
IOMSG= specifier 
Yes 
Stream access input/output 
Yes (since 4.2, 20060815) 
ROUND= specifier 
Yes (for OUTPUT since 4.5, for INPUT since 4.9) 
DECIMAL= specifier 
Yes (since 4.4, 20080405) 
SIGN= specifier 
Yes (since 4.4, 20080405) 
Kind type parameters of integer specifiers 
Yes (since 4.4) 
Recursive input/output 

Intrinsic function for newline character 
Yes (since 4.2) 
Input and output of IEEE exceptional values 
Yes 
Comma after a P edit descriptor 
Yes 
Interoperability of intrinsic types 
Yes (since 4.3, 20070702) 
Interoperability with C pointers 
Yes (since 4.3, 20070702) 
Interoperability of derived types 
Yes (since 4.3, 20070702) 
Interoperability of variables 
Yes (since 4.3, 20070702) 
Interoperability of procedures 
Yes (since 4.3, 20070702) 
Interoperability of global data 
Yes (since 4.3, 20070702) 