LOGICAL FUNCTION IDLIST(IDO) INTEGER PSTMT, STMT LOGICAL ERR, SYSERR, ABORT, IDO COMMON /INPUT/ NSTMT, PSTMT, STMT(1327) COMMON /DETECT/ ERR, SYSERR, ABORT C C RECOGNIZES IDLIST=<ID> Õ, <ID>! ;LAST <ID> CANNOT BE FOLLOWED BY C A '='; IDLIST MUST CONTAIN AT LEAST ONE ID. IDLIST=.FALSE. WILL C BE RETURNED FOR AN IRRECOVERABLE SYNTAX ERROR. C IDO SET TO .TRUE. WHEN <IDLIST> IS FOLLOWED BY <DOSPEC> C IDO = .FALSE. IDLIST = .TRUE. IF (PSTMT.GE.NSTMT) GO TO 60 CALL NEXTOK(PSTMT, K2, K) IF (K.NE.0) GO TO 60 IF (STMT(K2).EQ.63) GO TO 20 CALL ID(K2) IF (ERR .OR. SYSERR) GO TO 20 10 PSTMT = K2 IF (STMT(PSTMT).EQ.68 .AND. STMT(PSTMT+1).EQ.65 .OR. * STMT(PSTMT).EQ.62 .OR. PSTMT.EQ.NSTMT) GO TO 30 IF (STMT(PSTMT).EQ.68) GO TO 50 CALL ERROR1(35H ILLEGAL TOKEN FOLLOWING IDENTIFIER, 35) 20 IDLIST = .FALSE. ERR = .FALSE. 30 RETURN 40 IDO = .TRUE. GO TO 30 C C MAKE SURE <ID> = ISN'T NEXT CONSTRUCT C 50 K2 = K2 + 1 IF (K2.GE.NSTMT) GO TO 60 CALL NEXTOK(K2, K3, K) IF (STMT(K3).EQ.63) GO TO 40 PSTMT = K2 K2 = K3 CALL ID(K2) IF (ERR .OR. SYSERR) GO TO 20 GO TO 10 60 CALL ERROR1(23H ILLEGAL SYNTAX IN LIST, 23) GO TO 20 END