http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45521
--- Comment #6 from janus at gcc dot gnu.org 2012-04-19 13:04:18 UTC ---
(In reply to comment #5)
> "Two dummy arguments are distinguishable if
> - one is a procedure and the other is a data object,
Here is a test case for this item:
module m
interface testIF
module procedure :: test1
module procedure :: test2
end interface
contains
real function test1 (obj)
real :: obj
test1 = obj
end function
real function test2 (obj)
procedure(real) :: pr
test2 = pr(0.)
end function
end module
program test
use m
print *,testIF(2.0),testIF(cos)
end program
... which is currently rejected with:
module procedure :: test2
1
Error: Ambiguous interfaces 'test2' and 'test1' in generic interface 'testif'
at (1)