Differences between revisions 11 and 12
Revision 11 as of 2006-12-07 10:36:09
Size: 3420
Editor: TobiasBurnus
Comment: Link to fortran-experiments SVN branch
Revision 12 as of 2006-12-08 20:04:19
Size: 3615
Editor: TobiasBurnus
Comment: Move IMPORT, add some older items of Fortran 2003 support (list is still incomplete)
Deletions are marked like this. Additions are marked like this.
Line 13: Line 13:
 * '''Command-line intrinsics'''
 * '''Streaming IO'''
 * '''ENUMMERATION support'''
 * '''Allocatable components and dummy arguments''' (cf. also TR 15581) and '''move_alloc'''
Line 15: Line 19:
 * '''VALUE attribute''' [http://gcc.gnu.org/29642 PR29642]

== Pending patches ==
* '''IMPORT statement''' [http://gcc.gnu.org/PR27546 PR27546]
 * '''VALUE attribute''' (since 2006-12-03) [http://gcc.gnu.org/29642 PR29642]
 * '''IMPORT statement''' (since 2006-12-08) [http://gcc.gnu.org/PR27546 PR27546]

Fortran 2003 Features

On this page, we list and prioritize Fortran 2003 features not implemented in the GNU Fortran.

Features supported by several other compilers

Implemented

See also [:GFortran#news: GFortran news]; this list is incomplete

Without pending patches

Other features

  • More allowed initialization expressions [http://gcc.gnu.org/PR29962 PR29962]

  • MIN / MAX with character arguments [http://gcc.gnu.org/PR29828 PR29828]

  • Non-initialization expr. as case-selector [http://gcc.gnu.org/PR25104 PR25104]

  • type-spec for array constructor [http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27997 PR27997]

  • Type-bound procedures: PROCEDURE, GENERIC

  • Abstract derived types: ABSTRACT, DEFERRED

  • ALLOCATE specifiers SOURCE= and ERRMSG=

  • SELECTED_CHAR_KIND

  • Pointer Rank Remapping [http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29785 PR29785]

  • ASSOCIATE construction

  • Optional KIND= specifier: ACHAR, COUNT, IACHAR, ICHAR, INDEX, LBOUND, LEN, LEN_TRIM, MAXLOC, MINLOC, SCAN, SHAPE, SIZE, UBOUND, VERIFY (complete?)

  • BOZ with int(), real(), dbl(), cmpl() (incl. kind parameter) [http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29471 PR29471] [http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18026 PR18026]

    • This clashes with the extension to allow integer BOZ everywhere; current gfortran real(z'FFFF') is equivalent to Fortran 2003's real(int(z'FFFF',kind=maxKindNeeded)). Intel's solution is to give a warning (-stand f95) that in Fortran 2003 this would be differently interpreted. [Probably one could also give a warning for -std=f2003]. The next question is how to interprete real(BOZ), probably the same as data /realvariable/ (not supported yet); our result should match the result of other compilers.

Related features

None: Fortran2003 (last edited 2017-12-09 13:11:19 by ThomasKoenig)