1c     SEGVs in loop.c with -O2.
2
3      character*80 function nxtlin(lun,ierr,itok)
4      character onechr*1,twochr*2,thrchr*3
5      itok=0
6      do while (.true.)
7         read (lun,'(a)',iostat=ierr) nxtlin
8         if (nxtlin(1:1).ne.'#') then
9            ito=0
10            do 10 it=1,79
11               if (nxtlin(it:it).ne.' ' .and. nxtlin(it+1:it+1).eq.' ')
12     $              then
13                  itast=0
14                  itstrt=0
15                  do itt=ito+1,it
16                     if (nxtlin(itt:itt).eq.'*') itast=itt
17                  enddo
18                  itstrt=ito+1
19                  do while (nxtlin(itstrt:itstrt).eq.' ')
20                     itstrt=itstrt+1
21                  enddo
22                  if (itast.gt.0) then
23                     nchrs=itast-itstrt
24                     if (nchrs.eq.1) then
25                        onechr=nxtlin(itstrt:itstrt)
26                        read (onechr,*) itokn
27                     elseif (nchrs.eq.2) then
28                        twochr=nxtlin(itstrt:itstrt+1)
29                        read (twochr,*) itokn
30                     elseif (nchrs.eq.3) then
31                        thrchr=nxtlin(itstrt:itstrt+2)
32                        read (thrchr,*) itokn
33                     elseif (nchrs.eq.4) then
34                        thrchr=nxtlin(itstrt:itstrt+3)
35                        read (thrchr,*) itokn
36                     endif
37                     itok=itok+itokn
38                  else
39                     itok=itok+1
40                  endif
41                  ito=it+1
42               endif
43 10         continue
44            return
45         endif
46      enddo
47      return
48      end
49