repo.or.cz
/
official-gcc.git
/
blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
log
|
graphiclog1
|
graphiclog2
|
commit
|
commitdiff
|
tree
|
refs
|
edit
|
fork
blame
|
history
|
raw
|
HEAD
2017-12-08 Richard Biener <rguenther@suse.de>
[official-gcc.git]
/
gcc
/
testsuite
/
gfortran.dg
/
der_io_2.f90
blob
e102a97a5755e23989a9052a4cee44866f6a4425
1
! { dg-do compile }
2
! PR 23843
3
! IO of derived types with private components is allowed in the module itself,
4
! but not elsewhere
5
module
gfortran2
6
type
::
tp1
7
private
8
integer
::
i
9
end type
tp1
10
11
type
::
tp1b
12
integer
::
i
13
end type
tp1b
14
15
type
::
tp2
16
real
::
a
17
type
(
tp1
) ::
t
18
end type
tp2
19
20
contains
21
22
subroutine
test
()
23
type
(
tp1
) ::
x
24
type
(
tp2
) ::
y
25
26
write
(*, *)
x
27
write
(*, *)
y
28
end subroutine
test
29
30
end module
gfortran2
31
32
program
prog
33
34
use
gfortran2
35
36
implicit none
37
type
::
tp3
38
type
(
tp2
) ::
t
39
end type
tp3
40
type
::
tp3b
41
type
(
tp1b
) ::
t
42
end type
tp3b
43
44
type
(
tp1
) ::
x
45
type
(
tp2
) ::
y
46
type
(
tp3
) ::
z
47
type
(
tp3b
) ::
zb
48
49
write
(*, *)
x
! { dg-error "PRIVATE components" }
50
write
(*, *)
y
! { dg-error "PRIVATE components" }
51
write
(*, *)
z
! { dg-error "PRIVATE components" }
52
write
(*, *)
zb
53
end program
prog