annotate gcc/testsuite/gfortran.dg/dec_union_4.f90 @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 84e7813d76e9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 ! { dg-do run }
kono
parents:
diff changeset
2 ! { dg-options "-fdec-structure" }
kono
parents:
diff changeset
3 !
kono
parents:
diff changeset
4 ! Test nested UNIONs.
kono
parents:
diff changeset
5 !
kono
parents:
diff changeset
6
kono
parents:
diff changeset
7 subroutine aborts (s)
kono
parents:
diff changeset
8 character(*), intent(in) :: s
kono
parents:
diff changeset
9 print *, s
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
10 STOP 1
111
kono
parents:
diff changeset
11 end subroutine
kono
parents:
diff changeset
12
kono
parents:
diff changeset
13 ! Nested unions
kono
parents:
diff changeset
14 structure /s4/
kono
parents:
diff changeset
15 union ! U0 ! rax
kono
parents:
diff changeset
16 map
kono
parents:
diff changeset
17 character(16) rx
kono
parents:
diff changeset
18 end map
kono
parents:
diff changeset
19 map
kono
parents:
diff changeset
20 character(8) rh ! rah
kono
parents:
diff changeset
21 union ! U1
kono
parents:
diff changeset
22 map
kono
parents:
diff changeset
23 character(8) rl ! ral
kono
parents:
diff changeset
24 end map
kono
parents:
diff changeset
25 map
kono
parents:
diff changeset
26 character(8) ex ! eax
kono
parents:
diff changeset
27 end map
kono
parents:
diff changeset
28 map
kono
parents:
diff changeset
29 character(4) eh ! eah
kono
parents:
diff changeset
30 union ! U2
kono
parents:
diff changeset
31 map
kono
parents:
diff changeset
32 character(4) el ! eal
kono
parents:
diff changeset
33 end map
kono
parents:
diff changeset
34 map
kono
parents:
diff changeset
35 character(4) x ! ax
kono
parents:
diff changeset
36 end map
kono
parents:
diff changeset
37 map
kono
parents:
diff changeset
38 character(2) h ! ah
kono
parents:
diff changeset
39 character(2) l ! al
kono
parents:
diff changeset
40 end map
kono
parents:
diff changeset
41 end union
kono
parents:
diff changeset
42 end map
kono
parents:
diff changeset
43 end union
kono
parents:
diff changeset
44 end map
kono
parents:
diff changeset
45 end union
kono
parents:
diff changeset
46 end structure
kono
parents:
diff changeset
47 record /s4/ r4
kono
parents:
diff changeset
48
kono
parents:
diff changeset
49
kono
parents:
diff changeset
50 ! Nested unions
kono
parents:
diff changeset
51 r4.rx = 'AAAAAAAA.BBB.C.D'
kono
parents:
diff changeset
52
kono
parents:
diff changeset
53 if ( r4.rx .ne. 'AAAAAAAA.BBB.C.D' ) call aborts ("rax")
kono
parents:
diff changeset
54 if ( r4.rh .ne. 'AAAAAAAA' ) call aborts ("rah")
kono
parents:
diff changeset
55 if ( r4.rl .ne. '.BBB.C.D' ) call aborts ("ral")
kono
parents:
diff changeset
56 if ( r4.ex .ne. '.BBB.C.D' ) call aborts ("eax")
kono
parents:
diff changeset
57 if ( r4.eh .ne. '.BBB' ) call aborts ("eah")
kono
parents:
diff changeset
58 if ( r4.el .ne. '.C.D' ) call aborts ("eal")
kono
parents:
diff changeset
59 if ( r4.x .ne. '.C.D' ) call aborts ("ax")
kono
parents:
diff changeset
60 if ( r4.h .ne. '.C' ) call aborts ("ah")
kono
parents:
diff changeset
61 if ( r4.l .ne. '.D' ) call aborts ("al")
kono
parents:
diff changeset
62
kono
parents:
diff changeset
63 end