Chart of Fortran 2008 Features supported by GNU Fortran
See also Fortran 2018 implementation status
See also Fortran 2003 implementation status
See also TS 29113: Technical Specification on Further Interoperability with C
When the question which Fortran 2003 features 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 result was a list in Fortran Forum (see Fortran2003Status). With Fortran 2008 on the horizon, the list is being updated for Fortran 2008.
The listed items follow the sections in the following writeup:
The new features of Fortran 2008 by John Reid (2014 version)
cf. also Coarrays in the next Fortran Standard by John Reid
The Fortran Forum articles:
Update: ACM SIGPLAN Fortran Forum '''26''', 2 (2007) (part of the Frontmatter; contains the status of more compilers)
 Updates appearing in all issues of ACM SIGPLAN Fortran Forum since then
Latest issue: December, 2018 ACM SIGPLAN Fortran Forum '''37''' (3), 8 (2018), 25th revision
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 2008 features in the GNU Fortran compiler
Submodules 
Yes (since 6.0, 20150805) 
Coarrays 
Yes 
allocatable or pointer components 
Yes (since 7.3) PR78983 
Performance enhancements 

do concurrent 
Partial (since 4.7, 20110908) (typespec support (and concurrency) missing; PR78219) 
Contiguous attribute 
Yes (since 4.6, 20100621), the is_contiguous intrinsic has been implemented on 20190107 
Simply contiguous arrays 
Yes (rather a new concept/definition than a new feature thus 'yes'). 
Data declaration 

Maximum rank + corank <= 15 
Yes (since 8.0, 20180125) 
Long integers (18 digits or 64 bits) 
Yes 
Allocatable components of recursive type 
Yes (since 7.0, 20161025) 
Impliedshape array 
Yes (since 4.6, 20100813) 
Pointer initialization 
Yes (since 4.6, 20110208) 
Data statement restrictions lifted 
Yes 
Kind of a forall index 
No, PR78219 
Type statement for intrinsic types TYPE 
Yes 
Declaring typebound procedures 
Yes 
Value attribute is permitted for any nonallocatable 
Partial – arrays not supported PR102369 
In pure procedure intent of an argument with 
Yes 
Allocating a polymorphic variable 
Yes (partial since 4.6, full since 7.0) 
Data usage 

Omitting an allocatable component in a structure constructor 
??? 
Multiple allocations with source 
??? 
Copying the properties of an object in an allocate statement 
??? 
Polymorphic assignment 
??? 
Accessing real and imaginary parts 
Yes (since 9.0, 20181101) 
Pointer function reference is a variable 
Yes (partial since 4.6, full since 6.0) 
Elemental dummy arguments restrictions lifted 
Yes PR49802 
Input/Output 

Finding a unit when opening a file 
Yes (since 4.5, 20090608) 
g0 edit descriptor 
Yes (since 4.4) 
Unlimited format item 
Yes (since 4.5, 20090817) 
Recursive input/output 
Yes 
Execution control 

The block construct 
Yes (since 4.5, 20090929), but as experimental with some details missing 
Exit statement 
Yes (since 4.6, 20100903) 
Stop code 
Yes (since 4.6, 201006) 
ERROR STOP 
Yes 
Intrinsic procedures for bit processsing 

Bit sequence comparison 
Yes (since 4.6, 20100908) 
Combined shifting 
Yes (since 4.6, 20100908) 
Counting bits 
Yes (since 4.6, 20100831; leadz/tailz since GCC 4.4) 
Masking bits 
Yes (since 4.6, 20100908) 
Shifting bits 
Yes (since 4.6, 20100908) 
Merging bits 
Yes (since 4.6, 20100908) 
Bit transformational functions 
Yes (since 4.6, 20100906) 
Intrinsic procedures and modules 

Storage size 
Yes (since 4.6, 20100708) 
Optional argument radix added to selected real kind 
Yes 
Extensions to trigonometric and hyperbolic intrinsic functions 
Yes 
Selecting a real kind 
Yes (since 4.6, 20100625) 
Hyperbolic intrinsic functions 
Yes (since 4.5) 
Bessel functions 
Yes (since 4.6, 20100821, the elemental functions since GCC 4.4) 
Error and gamma functions 
Yes (since 4.5, 20090516 including ERFC_SCALED in initialization expressions) 
Euclidean vector norm 
Yes (since 4.6, 20100827) 
Parity 
Yes (since 4.6, 20100827) 
Execute command line 
Yes (since 4.6, 20100901) 
BACK argument to MINLOC and MAXLOC 
Yes (since 9.0, 20180508) 
Find location in an array 
Yes (since 9.0, 20181028) 
String comparison 
Yes 
Constants 
Yes (since 4.7, 20110616) 
COMPILER_VERSION 
Yes 
COMPILER_OPTIONS 
Yes 
Function for C sizeof 
Yes 
Added optional argument for ieee_selected_real_kind 
Yes 
Programs and procedures 

Save attribute for module and submodule data 
Yes 
Empty contains section 
Yes 
Form of the end statement for an internal or 
Yes 
Internal procedure as an actual argument 
Yes (since 4.6, 20100903) 
Generic resolution by pointer or allocatable attribute 
Yes (partial since 4.8, full since 9.0) 
Null pointer or unallocated allocatable as 
Yes (since 4.6, 20100815) 
Elemental procedures that are not pure 
Yes (since 4.6, 20100815) 
Entry statement becomes obsolescent 
Yes (since 4.6, 20100625) 
Source form 

Semicolon at line start 
Yes 
Unimplemented features  based on the list in the "Introduction" of the F2008 standard
There is a large overlap with the No items in the table above.
 The DO CONCURRENT construct provides a means for the program to specify that individual loop iterations have no interdependencies.
 Subscripts and nested implieddo limits inside a dataimplieddo can be any constant expression instead of being limited to combinations of constants, implieddo variables, and intrinsic operations.
 A FORALL index variable can have its type and kind explicitly declared within the construct.
 A structure constructor can omit the value for an allocatable component.
 A pointer function reference can denote a variable in any variable definition context.
 Some restrictions on the use of dummy arguments in elemental subprograms have been removed.
 ALLOCATABLE and POINTER attributes are used in generic resolution.
 Procedureness of a dummy argument is used in generic resolution.