1 /* @(#)rgram.h 1.3 96/09/10 */ 2 /* 3 * ==================================================== 4 * Copyright (C) 1995 by Sun Microsystems, Inc. All rights reserved. 5 * 6 * Developed at SunSoft, a Sun Microsystems, Inc. business. 7 * Permission to use, copy, modify, and distribute this 8 * software is freely granted, provided that this notice 9 * is preserved. 10 * ==================================================== 11 */ 12 13 #define TK_SKIP -1 14 #define TK_DUMMY 0 15 #define TK_NL 1 16 #define TK_SPACE 2 17 #define TK_FPP 3 18 #define TK_NUM 4 19 #define TK_BOS 5 20 #define TK_KEY 6 21 #define TK_FORMAT 7 /* Fortran FORMAT */ 22 #define TK_IMPLICIT 8 /* Fortran IMPLICIT */ 23 #define TK_LPAR 9 /* ( */ 24 #define TK_RPAR 10 /* ) */ 25 #define TK_NAME 11 26 #define TK_COMMA 12 /* , */ 27 #define TK_STAR 13 /* * */ 28 #define TK_RDWR 14 /* Fortran READ or WRITE */ 29 #define TK_ASGN 15 /* Fortran ASSIGN */ 30 #define TK_DO 16 /* Fortran DO */ 31 #define TK_TYPE0 17 /* Fortran90 TYPE */ 32 #define TK_TYPE 18 /* Fortran types */ 33 #define TK_SCLN 19 /* ; */ 34 #define TK_BOZ 20 /* BOZ constant */ 35 #define TK_IMPLICIT1 21 /* fake token for IMPLICIT */ 36 #define TK_NAME0 22 /* fake token for IMPLICIT */ 37 #define TK_RECUR 23 /* Fortran 90 RECURSIVE */ 38 #define TK_MINUS 24 /* - */ 39 #define TK_EOC 25 /* End of a comment */ 40 41 #define ST_NULL 0 42 #define ST_FPP 1 43 #define ST_NL 2 44 #define ST_BOS 3 45 #define ST_SPLIT 4 46 #define ST_SPLIT1 5 47 #define ST_EXCEPT 6 48 #define ST_TYPE 7 49 #define ST_TYPE1 8 50 #define ST_RDWR 9 51 #define ST_DO 10 52 #define ST_ASSIGN 11 53 #define ST_ASSIGNUM 12 54 #define ST_IMPL 13 55 #define ST_IMPL0 14 56 #define ST_NOIMPL 15 57 58 59 void st_init(int); 60 void st_move(int); 61 int st_is(int); 62