[flang] Accept polymorphic component element in storage_size
[llvm-project.git] / flang / test / Semantics / kinds04_q16.f90
blob527cbe9aff122163ccdd6b940d445b9b4460b6f0
1 ! RUN: %python %S/test_errors.py %s %flang_fc1
2 ! C716 If both kind-param and exponent-letter appear, exponent-letter
3 ! shall be E. (As an extension we also allow an exponent-letter which matches
4 ! the kind-param)
5 ! C717 The value of kind-param shall specify an approximation method that
6 ! exists on the processor.
8 ! This test is for non-x86_64, where exponent-letter 'q' is for
9 ! 16-byte quadruple precision
10 ! UNSUPPORTED: x86-registered-target
11 subroutine s(var)
12 real :: realvar1 = 4.0E6_4
13 real :: realvar2 = 4.0D6
14 real :: realvar3 = 4.0Q6
15 real :: realvar4 = 4.0D6_8
16 !WARNING: Explicit kind parameter on real constant disagrees with exponent letter 'q'
17 real :: realvar5 = 4.0Q6_10
18 real :: realvar6 = 4.0Q6_16
19 real :: realvar7 = 4.0E6_8
20 real :: realvar8 = 4.0E6_10
21 real :: realvar9 = 4.0E6_16
22 !ERROR: Unsupported REAL(KIND=32)
23 real :: realvar10 = 4.0E6_32
25 double precision :: doublevar1 = 4.0E6_4
26 double precision :: doublevar2 = 4.0D6
27 double precision :: doublevar3 = 4.0Q6
28 double precision :: doublevar4 = 4.0D6_8
29 double precision :: doublevar5 = 4.0Q6_16
30 double precision :: doublevar6 = 4.0E6_8
31 double precision :: doublevar7 = 4.0E6_10
32 double precision :: doublevar8 = 4.0E6_16
33 !ERROR: Unsupported REAL(KIND=32)
34 double precision :: doublevar9 = 4.0E6_32
35 end subroutine s