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