PR inline-asm/84742
[official-gcc.git] / gcc / testsuite / gfortran.dg / namelist_94.f90
blobd0344f76d4d454033053304926cf45b09fca5533
1 ! { dg-do compile }
2 ! PR78659 Spurious "requires DTIO" reported against namelist statement
3 MODULE m
4 IMPLICIT NONE
5 TYPE :: t
6 CHARACTER :: c
7 CONTAINS
8 PROCEDURE :: write_formatted
9 GENERIC :: WRITE(FORMATTED) => write_formatted
10 END TYPE
11 CONTAINS
12 SUBROUTINE write_formatted(dtv, unit, iotype, v_list, iostat, iomsg)
13 CLASS(t), INTENT(IN) :: dtv
14 INTEGER, INTENT(IN) :: unit
15 CHARACTER(*), INTENT(IN) :: iotype
16 INTEGER, INTENT(IN) :: v_list(:)
17 INTEGER, INTENT(OUT) :: iostat
18 CHARACTER(*), INTENT(INOUT) :: iomsg
19 WRITE (unit, "(A)", IOSTAT=iostat, IOMSG=iomsg) dtv%c
20 print *, "what"
21 END SUBROUTINE
22 END MODULE
24 PROGRAM p
25 USE m
26 IMPLICIT NONE
27 class(t), allocatable :: x
28 NAMELIST /nml/ x
29 x = t('a')
30 WRITE (*, nml)
31 READ (*, nml) ! { dg-error "is polymorphic and requires a defined input/output procedure" }
32 END