2020-05-12 02:38:53 +08:00
|
|
|
! RUN: %S/test_errors.sh %s %t %f18
|
2020-02-07 04:26:51 +08:00
|
|
|
! C701 The type-param-value for a kind type parameter shall be a constant
|
|
|
|
! expression. This constraint looks like a mistake in the standard.
|
2018-12-06 22:59:37 +08:00
|
|
|
integer, parameter :: k = 8
|
|
|
|
real, parameter :: l = 8.0
|
|
|
|
integer :: n = 2
|
2018-12-29 08:01:46 +08:00
|
|
|
!ERROR: Must be a constant value
|
2018-12-06 22:59:37 +08:00
|
|
|
parameter(m=n)
|
|
|
|
integer(k) :: x
|
2020-02-27 12:19:48 +08:00
|
|
|
! C713 A scalar-int-constant-name shall be a named constant of type integer.
|
2019-04-12 08:22:16 +08:00
|
|
|
!ERROR: Must have INTEGER type, but is REAL(4)
|
2018-12-06 22:59:37 +08:00
|
|
|
integer(l) :: y
|
2018-12-29 08:01:46 +08:00
|
|
|
!ERROR: Must be a constant value
|
2018-12-06 22:59:37 +08:00
|
|
|
integer(n) :: z
|
|
|
|
type t(k)
|
|
|
|
integer, kind :: k
|
|
|
|
end type
|
2018-12-05 02:55:32 +08:00
|
|
|
!ERROR: Type parameter 'k' lacks a value and has no default
|
|
|
|
type(t( &
|
2019-04-12 08:22:16 +08:00
|
|
|
!ERROR: Must have INTEGER type, but is LOGICAL(4)
|
2018-12-05 02:55:32 +08:00
|
|
|
.true.)) :: w
|
2019-04-12 08:22:16 +08:00
|
|
|
!ERROR: Must have INTEGER type, but is REAL(4)
|
2019-01-18 08:14:36 +08:00
|
|
|
real :: u(l*2)
|
2019-04-12 08:22:16 +08:00
|
|
|
!ERROR: Must have INTEGER type, but is REAL(4)
|
2018-12-15 06:04:15 +08:00
|
|
|
character(len=l) :: v
|
2019-05-23 17:11:33 +08:00
|
|
|
!ERROR: Initialization expression for PARAMETER 'o' (o) cannot be computed as a constant value
|
|
|
|
real, parameter :: o = o
|
2019-05-24 23:22:11 +08:00
|
|
|
!ERROR: Must be a constant value
|
|
|
|
integer, parameter :: p = 0/0
|
|
|
|
!ERROR: Must be a constant value
|
|
|
|
integer, parameter :: q = 1+2*(1/0)
|
2020-06-04 15:41:28 +08:00
|
|
|
integer not_constant
|
|
|
|
!ERROR: Must be a constant value
|
|
|
|
integer, parameter :: s1 = not_constant/2
|
|
|
|
!ERROR: Must be a constant value
|
|
|
|
integer, parameter :: s2 = 3/not_constant
|
2019-05-24 23:22:11 +08:00
|
|
|
!ERROR: Must be a constant value
|
|
|
|
integer(kind=2/0) r
|
2019-08-07 05:14:33 +08:00
|
|
|
integer, parameter :: sok(*)=[1,2]/[1,2]
|
2019-05-24 23:22:11 +08:00
|
|
|
!ERROR: Must be a constant value
|
2019-08-07 05:14:33 +08:00
|
|
|
integer, parameter :: snok(*)=[1,2]/[1,0]
|
2018-12-06 22:59:37 +08:00
|
|
|
end
|