1! { dg-do compile }
2! { dg-compile-aux-modules "whole_file_28.f90" }
3! Test the fix for the problem described in PR45077 comments #4 and #5.
4!
5! Contributed by Tobias Burnus  <burnus@gcc.gnu.org>
6!
7module ifiles
8  use iso_red, string_t => varying_string
9contains
10  function line_get_string_advance (line) result (string)
11    type(string_t) :: string
12    character :: line
13  end function line_get_string_advance
14end module ifiles
15
16module syntax_rules
17  use iso_red, string_t => varying_string
18  use ifiles, only: line_get_string_advance
19contains
20  subroutine syntax_init_from_ifile ()
21    type(string_t) :: string
22       string = line_get_string_advance ("")
23  end subroutine syntax_init_from_ifile
24end module syntax_rules
25end
26! { dg-final { cleanup-modules "iso_red" } }
27