1! { dg-do run { target i?86-*-* x86_64-*-* } }
2! { dg-additional-options "-w -freal-4-real-10 -freal-8-real-16" }
3! { dg-require-effective-target fortran_real_16 }
4!
5! PR fortran/99355
6! PR fortran/99355 comment 10 to 13 + PR fortran/57871
7!
8
9program test
10  real :: r1
11  real*4:: r2
12  real(4) :: r3
13  real(selected_real_kind(p=6)) :: r4
14  integer, parameter :: k4 = 4, k8 = 8
15
16  double precision :: d1
17  real*8 :: d2
18  real(8) :: d3
19  real(kind(1.d0)) :: d4
20  real(selected_real_kind(p=15)) :: d5
21
22  !print '(tr3,a10,10(tr1,i2))', 'single', kind(r1), kind(r2), kind(r3), kind(r4)
23  !print '(tr3,a10,10(tr1,i2))', 'double', kind(d1), kind(d2), kind(d3), kind(d4), kind(d5)
24  if (any ([kind(1.0), kind(1.0_4), kind(1.0_k4), kind(r1), kind(r2), kind(r3), kind(r4)] /= 10)) stop 1
25  if (any ([kind(1.d0), kind(1.0_8), kind(1.0_k8), kind(d1), kind(d2), kind(d3), kind(d4), kind(d5)] /= 16)) stop 2
26end program test
27