1! { dg-do compile } 2! { dg-options "-fdump-tree-original" } 3! 4! PR fortran/44702 5! 6! Based on a test case by Joe Krahn. 7! 8! Multiple import of the same symbol was failing for 9! intrinsic modules. 10! 11subroutine one() 12 use iso_c_binding, only: a => c_ptr, b => c_ptr, c_ptr 13 implicit none 14 type(a) :: x 15 type(b) :: y 16 type(c_ptr) :: z 17end subroutine one 18 19subroutine two() 20 use iso_c_binding, a => c_ptr, b => c_ptr 21 implicit none 22 type(a) :: x 23 type(b) :: y 24end subroutine two 25 26subroutine three() 27 use iso_fortran_env, only: a => error_unit, b => error_unit, error_unit 28 implicit none 29 if(a /= b) call shall_not_be_there() 30 if(a /= error_unit) call shall_not_be_there() 31end subroutine three 32 33subroutine four() 34 use iso_fortran_env, a => error_unit, b => error_unit 35 implicit none 36 if(a /= b) call shall_not_be_there() 37end subroutine four 38 39! { dg-final { scan-tree-dump-times "shall_not_be_there" 0 "original" } } 40