@@ -57,7 +57,7 @@ module m3
57
57
private
58
58
contains
59
59
! Error bad # of args
60
- subroutine unformattedReadProc (dtv , unit , iostat , iomsg , iotype )
60
+ subroutine unformattedReadProc (dtv , unit , iostat , iomsg , iotype )
61
61
class(t), intent (inout ) :: dtv
62
62
integer , intent (in ) :: unit
63
63
integer , intent (out ) :: iostat
@@ -119,7 +119,7 @@ subroutine formattedReadProc(dtv, unit, iotype, vlist, iostat, iomsg)
119
119
end module m5
120
120
121
121
module m6
122
- interface read (formatted)
122
+ interface read (formatted)
123
123
procedure :: formattedReadProc
124
124
end interface
125
125
@@ -169,7 +169,7 @@ module m8
169
169
contains
170
170
subroutine formattedWriteProc (dtv , unit , iotype , vlist , iostat , iomsg )
171
171
! ERROR: Dummy argument 'dtv' of a defined input/output procedure must have intent 'INTENT(IN)'
172
- class(t), intent (inout ) :: dtv ! Error, must be intent(inout )
172
+ class(t), intent (inout ) :: dtv ! Error, must be intent(in )
173
173
integer , intent (in ) :: unit
174
174
character (len=* ), intent (in ) :: iotype
175
175
integer , intent (in ) :: vlist(:)
@@ -195,7 +195,7 @@ subroutine formattedReadProc(dtv, unit, iotype, vlist, iostat, iomsg)
195
195
! ERROR: Dummy argument 'unit' of a defined input/output procedure may not have any attributes
196
196
integer , pointer , intent (in ) :: unit
197
197
character (len=* ), intent (in ) :: iotype
198
- integer , intent (in ) :: vlist(:)
198
+ integer , intent (in ) :: vlist(:)
199
199
integer , intent (out ) :: iostat
200
200
character (len=* ), intent (inout ) :: iomsg
201
201
@@ -416,7 +416,7 @@ subroutine formattedReadProc(dtv,unit,iotype,v_list,iostat,iomsg)
416
416
end module
417
417
418
418
module m19
419
- ! Test two different defined input/output procedures specified as a
419
+ ! Test two different defined input/output procedures specified as a
420
420
! type-bound procedure and as a generic for the same derived type
421
421
type t
422
422
integer c
@@ -446,7 +446,7 @@ subroutine unformattedReadProc(dtv,unit,iostat,iomsg)
446
446
end module
447
447
448
448
module m20
449
- ! Test read and write defined input/output procedures specified as a
449
+ ! Test read and write defined input/output procedures specified as a
450
450
! type-bound procedure and as a generic for the same derived type
451
451
type t
452
452
integer c
@@ -744,3 +744,25 @@ subroutine absWrite(dtv, unit, iotype, v_list, iostat, iomsg)
744
744
procedure write2
745
745
end interface
746
746
end
747
+
748
+ module m29
749
+ type t
750
+ end type
751
+ interface write (formatted)
752
+ subroutine wf (dtv , unit , iotype , v_list , iostat , iomsg )
753
+ import t
754
+ ! ERROR: Dummy argument 'dtv' of defined input/output procedure 'wf' may not be a coarray
755
+ class(t), intent (in ) :: dtv[* ]
756
+ ! ERROR: Dummy argument 'unit' of defined input/output procedure 'wf' may not be a coarray
757
+ integer , intent (in ) :: unit[* ]
758
+ ! ERROR: Dummy argument 'iotype' of defined input/output procedure 'wf' may not be a coarray
759
+ character (len=* ), intent (in ) :: iotype[* ]
760
+ ! ERROR: Dummy argument 'v_list' of defined input/output procedure 'wf' may not be a coarray
761
+ integer , intent (in ) :: v_list(:)[* ]
762
+ ! ERROR: Dummy argument 'iostat' of defined input/output procedure 'wf' may not be a coarray
763
+ integer , intent (out ) :: iostat[* ]
764
+ ! ERROR: Dummy argument 'iomsg' of defined input/output procedure 'wf' may not be a coarray
765
+ character (len=* ), intent (inout ) :: iomsg[* ]
766
+ end
767
+ end interface
768
+ end
0 commit comments