summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/pr17286.f90
blob: 5b9469444687bbd8e5b7404e6d285a3ede61d6d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
! { dg-do run { target fd_truncate } }
! PR17286
! Namelist read failed when spaces exist between the '=' and the numbers
! This is a libgfortran bug
! Derived from testcase provided by Paul Thomas <paulthomas2@wanadoo.fr>
       program bug3
       integer num1 , num2 , num3 , num4 
       data num3  / 42 /
       data num4  / 56 /
       namelist /mynml1/ num1,num2
       namelist /mynml2/ num3,num4
       logical dbg
       data dbg / .FALSE. /
       open(unit=10,status='SCRATCH')
       write(10,'(A)') "&mynml1,num1= 16,num2=32,&end"
!
! write mynml2
!
       write(10,mynml2)
       rewind(10)
!
! now read back
!
       num1 = -1
       num2 = -1
       read(10,mynml1)
       if (num1.eq.16.and.num2.eq.32) then
          if (dbg) write(*,mynml1)
       else
          if (dbg) print *, 'expected 16 32 got ',num1,num2
          call abort
       endif
       num3 = -1
       num4 = -1
       read(10,mynml2)
       if (num3.eq.42.and.num4.eq.56) then
          if (dbg) write(*,mynml2)
       else
          if (dbg) print *, 'expected 42 56 got ',num3,num4
          call abort
       endif

       close(10)
       end