1! RUN: %python %S/test_modfile.py %s %flang_fc1 2! Test derived type renaming in initializers necessary to avoid 3! clashing with local names 4module m 5 use, intrinsic :: iso_c_binding, only: & 6 c_ptr, c_funptr, c_null_ptr, c_null_funptr 7 real, private :: __builtin_c_ptr, __builtin_c_funptr 8 type mydt 9 type(c_funptr) :: component = c_null_funptr 10 end type 11 type(c_ptr), parameter :: namedConst = c_null_ptr 12end 13 14!Expect: m.mod 15!module m 16!use,intrinsic::__fortran_builtins,only:__fortran_builtins$__builtin_c_ptr=>__builtin_c_ptr 17!use,intrinsic::__fortran_builtins,only:__fortran_builtins$__builtin_c_funptr=>__builtin_c_funptr 18!use,intrinsic::iso_c_binding,only:c_ptr 19!use,intrinsic::iso_c_binding,only:c_funptr 20!use,intrinsic::iso_c_binding,only:c_null_ptr 21!use,intrinsic::iso_c_binding,only:c_null_funptr 22!private::__fortran_builtins$__builtin_c_ptr 23!private::__fortran_builtins$__builtin_c_funptr 24!real(4),private::__builtin_c_ptr 25!real(4),private::__builtin_c_funptr 26!type::mydt 27!type(c_funptr)::component=__fortran_builtins$__builtin_c_funptr(__address=0_8) 28!end type 29!type(c_ptr),parameter::namedconst=__fortran_builtins$__builtin_c_ptr(__address=0_8) 30!end 31