1! { dg-do compile } 2! PR fortran/36117 3! 4! This program will fail for MPFR < 2.3.0 5! 6! Based on a test by James Van Buskirk. 7! 8program bug3 9 implicit none 10 real, parameter :: Qarg1 = 1.7 11 integer, parameter :: k2 = kind(BESJ0(Qarg1)) 12 integer, parameter :: is_int = 1-1/(2+0*BESJ0(Qarg1))*2 13 integer, parameter :: kind_if_real = & 14 (1-is_int)*k2+is_int*kind(1.0) 15 complex :: z = cmplx(0,1,kind_if_real) ! FAILS 16 if (kind_if_real /= kind(Qarg1)) STOP 1 17end program bug3 18