------- Comment #3 from dominiq at lps dot ens dot fr 2009-02-28 11:38 ------- > Define an effective-target keyword xxx via check_effective_target_xxx in > gcc/testsuite/lib/target-supports.exp.
The only test I see is check_effective_target_fortran_large_real and it does not distinguishes between real(10) and real(16): # Return 1 if the target supports Fortran real kinds larger than real(8), # 0 otherwise. # # When the target name changes, replace the cached result. proc check_effective_target_fortran_large_real { } { return [check_no_compiler_messages fortran_large_real executable { ! Fortran integer,parameter :: k = selected_real_kind (precision (0.0_8) + 1) real(kind=k) :: x x = cos (x) end }] } Using precision(x) in similar tests could be used for check_effective_target_fortran_real_10 and check_effective_target_fortran_real_16: precision(x)==18 for real(10) and is larger than 30 for real(16) (31 on powerpc-apple-darwin9, 33 with ifort). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37578