! { dg-do compile } ! PR fortran/30799 ! Inconsistent handling of bad (invalid) LOGICAL kinds ! Reporter: Harald Anlauf ! Testcase altered by Steven G. Kargl program gfcbug57 implicit none ! ! These are logical kinds known by gfortran and many other compilers: ! print *, kind (.true._1) ! This prints "1" print *, kind (.true._2) ! This prints "2" print *, kind (.true._4) ! This prints "4" print *, kind (.true._8) ! This prints "8" ! ! These are very strange (read: bad (invalid?)) logical kinds, ! handled inconsistently by gfortran (there's no logical(kind=0) etc.) ! print *, kind (.true._0) ! { dg-error "kind for logical constant" } print *, kind (.true._3) ! { dg-error "kind for logical constant" } print *, kind (.true._123) ! { dg-error "kind for logical constant" } ! ! Here gfortran bails out with a runtime error: ! print *, .true._3 ! { dg-error "kind for logical constant" } end program gfcbug57