1! { dg-do run { xfail powerpc*-apple-darwin* powerpc*-*-linux* } } 2! Test XFAILed on these platforms because the system's printf() lacks 3! proper support for denormalized long doubles. See PR24685 4! { dg-require-effective-target fortran_large_real } 5! PR libfortran/24685 6program large_real_kind_form_io_2 7 ! This should be 10 or 16 on systems that support kind=10 or kind=16 8 integer, parameter :: k = selected_real_kind (precision (0.0_8) + 1) 9 real(kind=k) :: a,b(2), c 10 character(len=180) :: tmp 11 12 b(:) = huge(0.0_k) 13 write (tmp, *) b 14 read (tmp, *) a, c 15 if (a /= b(1)) STOP 1 16 if (c /= b(2)) STOP 2 17 18 b(:) = -huge(0.0_k) 19 write (tmp, *) b 20 read (tmp, *) a, c 21 if (a /= b(1)) STOP 3 22 if (c /= b(2)) STOP 4 23 24 b(:) = nearest(tiny(0.0_k),1.0_k) 25 write (tmp, *) b 26 read (tmp, *) a, c 27 if (a /= b(1)) STOP 5 28 if (c /= b(2)) STOP 6 29 30 b(:) = nearest(-tiny(0.0_k),-1.0_k) 31 write (tmp, *) b 32 read (tmp, *) a, c 33 if (a /= b(1)) STOP 7 34 if (c /= b(2)) STOP 8 35end program large_real_kind_form_io_2 36