http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39695
--- Comment #2 from Dominique d'Humieres <dominiq at lps dot ens.fr> --- As for 4.8.1 and trunk (r200371), only the second test in comment #0 gives the 'ppr@' name: real g ! "cannot have a type" 1 Error: Symbol 'ppr@' at (1) cannot have a type The first test does not give any error and the third one gives (once) integer function h(x) ! "is missing the pointer attribute" (twice!) 1 Error: Procedure pointer result 'h' at (1) is missing the pointer attribute The error for the test in comment #1 is p => f() ! << Invalid f() returns a LOGICAL(1) function, but p is a REAL one 1 Error: Interface mismatch in procedure pointer assignment at (1): Type/rank mismatch in function result for 4.8.1 and p => f() ! << Invalid f() returns a LOGICAL(1) function, but p is a REAL one 1 Error: Interface mismatch in procedure pointer assignment at (1): Type mismatch in function result (REAL(4)/LOGICAL(1)) for the trunk.