1! RUN: %python %S/test_modfile.py %s %flang_fc1 -triple x86_64-unknown-linux-gnu 2! Intrinsics SELECTED_INT_KIND, SELECTED_REAL_KIND, PRECISION, RANGE, 3! RADIX, DIGITS 4! REQUIRES: x86-registered-target 5 6module m1 7 ! REAL(KIND=10) handles 16 <= P < 19 (if available; ifort is KIND=16) 8 integer, parameter :: realprec = precision(0._10) 9 logical, parameter :: rpreccheck = 18 == realprec 10 integer, parameter :: realpvals(*) = [16, 18] 11 integer, parameter :: realpkinds(*) = & 12 [(selected_real_kind(realpvals(j),0),j=1,size(realpvals))] 13 logical, parameter :: realpcheck = all([10, 10] == realpkinds) 14 ! REAL(KIND=10) handles 308 <= R < 4932 (if available; ifort is KIND=16) 15 integer, parameter :: realrange = range(0._10) 16 logical, parameter :: rrangecheck = 4931 == realrange 17 integer, parameter :: realrvals(*) = [308, 4931] 18 integer, parameter :: realrkinds(*) = & 19 [(selected_real_kind(0,realrvals(j)),j=1,size(realrvals))] 20 logical, parameter :: realrcheck = all([10, 10] == realrkinds) 21 logical, parameter :: radixcheck = radix(0._10) == 2 22 23 integer, parameter :: realdigits = digits(0._10) 24 logical, parameter :: realdigitscheck = 64 == realdigits 25end module m1 26!Expect: m1.mod 27!module m1 28!integer(4),parameter::realprec=18_4 29!intrinsic::precision 30!logical(4),parameter::rpreccheck=.true._4 31!integer(4),parameter::realpvals(1_8:*)=[INTEGER(4)::16_4,18_4] 32!integer(4),parameter::realpkinds(1_8:*)=[INTEGER(4)::10_4,10_4] 33!intrinsic::selected_real_kind 34!intrinsic::size 35!logical(4),parameter::realpcheck=.true._4 36!intrinsic::all 37!integer(4),parameter::realrange=4931_4 38!intrinsic::range 39!logical(4),parameter::rrangecheck=.true._4 40!integer(4),parameter::realrvals(1_8:*)=[INTEGER(4)::308_4,4931_4] 41!integer(4),parameter::realrkinds(1_8:*)=[INTEGER(4)::10_4,10_4] 42!logical(4),parameter::realrcheck=.true._4 43!logical(4),parameter::radixcheck=.true._4 44!intrinsic::radix 45!integer(4),parameter::realdigits=64_4 46!intrinsic::digits 47!logical(4),parameter::realdigitscheck=.true._4 48!end 49