C* SUBROUTINE CALL STATEMENT - UNDCC C SUBROUTINE CC(IEND) BYTE STRING,ISTR,VAR COMMON STRING(660),ISTR(660),VAR(6) COMMON/ISUBC/ISUBC COMMON/FUNCT/ NFUNC,NFUNCT,BSUBNM(6),BFUNCT(6,50) BYTE BFUNCT, BSUBNM C C WRITE(6,6010) IEND D6010 FORMAT('0', 'SUB CC: IEND =', I4) C WRITE(6,6020) (ISTR(II), II = 1,IEND) C6020 FORMAT('0','SUB CC: ISTR =', 50I1) C WRITE(6,6030) (STRING(II), II = 1,IEND) C6030 FORMAT('0','SUB CC: STRING =', 50A1) C J=0 I=0 IFL = 0 C C CHECK FOR SUBROUTINE NAME, STORE IN BSUBNM 10 I=I+1 IF (I.GT.IEND) RETURN IF (I .NE. IEND) GOTO 12 CALL SUBELM(IFL) D WRITE(6,6610) (BSUBNM(IIFL), IIFL = 1,IFL) RETURN 12 IF (ISTR(I) .NE. 0) GOTO 15 IFL = IFL + 1 BSUBNM(IFL) = STRING(I) ! SET SUBNAM TO NAME OF SUBROUTINE GOTO 10 C C CHECK FOR LEFT PARENTHESES, I.E., START OF PARAMETER LIST 15 IF (ISTR(I).NE.3) GO TO 10 ! 3 = LEFT PARENS D WRITE(6,6610) (BSUBNM(IIFL), IIFL = 1,IFL) D6610 FORMAT('0', 'SUB CC: SUBNAM = ', 6A1) IF (IFL .NE. 0) CALL SUBELM(IFL) C 20 I=I+1 IF (I.GT.IEND) RETURN IF (ISTR(I).NE.0) GO TO 30 J=J+1 VAR(J)=STRING(I) GO TO 20 30 IF (J .LE. 0) GOTO 35 ISUBC = 1 CALL CHECK(J) 35 IF (J.LT.0) RETURN IF (ISTR(I) .NE. 3) GO TO 20 ! CHANGED JUNE 17, 1979 C ! WAS (ISTR(I) .EQ. 2) C C LEFT PARENS FOUND, SKIP ALL CHARACTERS UNTIL RIGHT PARENS C IS FOUND (ISTR(I) = 4) 40 I=I+1 IF (I.GT.IEND) RETURN IF (ISTR(I).NE.4) GO TO 40 GO TO 20 END