1! { dg-do compile }
2! Checks the fix for PR33542 does not throw an error if there is no
3! ambiguity in the specific interfaces of foo.
4!
5! Contributed by Tobias Burnus <burnus@gcc.gnu.org>
6!
7MODULE M1
8   INTERFACE FOO
9     MODULE PROCEDURE FOO
10   END INTERFACE
11CONTAINS
12   SUBROUTINE FOO(I)
13     INTEGER, INTENT(IN) :: I
14     WRITE(*,*) 'INTEGER'
15   END SUBROUTINE FOO
16END MODULE M1
17
18MODULE M2
19   INTERFACE FOO
20     MODULE PROCEDURE FOOFOO
21   END INTERFACE
22CONTAINS
23   SUBROUTINE FOOFOO(R)
24     REAL, INTENT(IN) :: R
25     WRITE(*,*) 'REAL'
26   END SUBROUTINE FOOFOO
27END MODULE M2
28
29PROGRAM P
30   USE M1
31   USE M2
32   implicit none
33   external bar
34   CALL FOO(10)
35   CALL FOO(10.)
36   call bar (foo)
37END PROGRAM P
38
39SUBROUTINE bar (arg)
40  EXTERNAL arg
41END SUBROUTINE bar
42