home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / VSCPPv7.zip / VACPP / IBMCPP / macros / EVFPPRS.DAT < prev    next >
Text File  |  1995-05-11  |  54KB  |  871 lines

  1. *******************************************************************************
  2. *  Config file for PL/I files
  3. *******************************************************************************
  4. *
  5. *
  6. *
  7. *   The basic format is:
  8. *   A line starting with '*' is a comment
  9. *   Other lines have the layout
  10. *       - optional leading blanks
  11. *       - comma separated list of keyword names (spaces are allowed
  12. *         round the commas ie keyword1  ,  keyword2 is ok.)
  13. *         Case is irrelevant.
  14. *       - at least one space
  15. *       - IFP resource id. Must be numeric, or an '*' which tells the parser
  16. *         there is no help id for it to use.
  17. *       - One of a list of tokens which tell the parser what kind of
  18. *         token this is. These ARE case sensitive.
  19. *          . ATU - Attribute unqualified, Ie you CANNOT put anything
  20. *                  in parentheses after it. Eg ALIGNED
  21. *          . ATQ - Attribute qualified, Ie you CAN put somthing
  22. *                  in parentheses after it. Eg FIXED(3) or INIT(...)
  23. *          . FLO - A statement keyword which can influence flow of control.
  24. *                  Eg PROC, CALL, IF
  25. *          . BIF - A builtin function name
  26. *          . TYF - A type function name (has args enclosed in (: and :) )
  27. *          . CON - A condition name
  28. *          . SOP - A statement option keyword
  29. *                  Eg INTO, SET
  30. *          . OPT - A word which may appear in a compiler option.
  31. *                  Eg OPTIMIZE, MAX
  32. *          . OPS - A word which may appear in an OPTIONS option.
  33. *                  Eg ASSEMBLER
  34. *          . ENV - A word which may appear in an ENVIRONMENT attribute
  35. *                  Eg TOTAL
  36. *          . T1  - A 'type 1' statement keyword. The type of statement
  37. *                  which takes only options and parentheses
  38. *                  Eg READ FILE(..) INTO(..) ;
  39. *          . T2  - A 'type 2' statement keyword. The type of statement
  40. *                  which takes an identifier or an expression as its first
  41. *                  item. Eg ALLOCATE x SET(..) ;
  42. *                  also used to encompass 'anything not a type 1'
  43. *          . PPS - It's to do with preprocessing EXCLUSIVLY. However a lot of the preprocessor words
  44. *                  appear in here as if they were ordinary statements. This is becuase they can be
  45. *                  used as if they were ordinary statements in the construction of a preprocessor
  46. *                  procedure.
  47. *          . *   - Which tells the parser that this line is just a placeholder
  48. *                  to allow specification of a resource id.
  49. *
  50. *         despite this apparent sophistication there are lots of things which
  51. *         are recognised by the code of the program. They are in the file for
  52. *         completeness.
  53. *
  54. *
  55. *       - An auto indentation value. The value is either a signed number
  56. *         or an '*'. '*' says that this token does not participate in auto indentation.
  57. *
  58. *       - A list of, comma separated LANGUAGE Level tokens for which this token is valid,
  59. *         or an '*'. '*' says that this this line is just a placeholder
  60. *         to allow specification of a resource id.
  61. *         Valid values are:
  62. *
  63. *            . SAA
  64. *            . SAA2
  65. *            . OS
  66. *
  67. *       - An optional comment which MUST be introduced by the ';' character.
  68. *
  69. *---------------------------List follows----------------
  70. *
  71. *
  72. *Notes:
  73. *
  74. *- This list was updated 3Aug93 (RH)
  75. *- This list was updated 19Aug93 (TA)
  76. *- This list was updated 24Aug93 (RH)
  77. *- This list was updated 24Aug93 (TA)
  78. *- This list was updated 25Aug93 (TA)
  79. *- The file layout was modified to allow for Auto Indentation 22Sep93 (RH)
  80. *- This list was updated 05Oct93 (RH)
  81. *- This list was updated 07Oct93 (TA)
  82. *- This list was updated 11Oct93 (RH)
  83. *- The file layout was modified to allow for Language level support 04Apr94 (RH)
  84. *- This list was updated 15Aug94 (RH) include OS/2 compiler options
  85. *
  86. *
  87. *- This list of "tokens" was originally compiled by Peter Elderon
  88. *
  89. *- OS/2-only (SAA2) and MVS-only tokens are excluded from
  90. *  the SAA1 library EXCEPT the 2 non-SAA compiler control commands,
  91. *  PLI and PLIOPT
  92. *
  93. *---------------------
  94. *SAA1 COMPILER OPTIONS
  95. *---------------------
  96. *
  97. *As published in:
  98. *      "IBM SAA AD/Cycle PL/I MVS & VM Programming Guide", R1
  99. *
  100. *
  101. *OPTION                   IPF RES #
  102. *
  103. aggregate,ag             48705 OPT      * SAA,SAA2,OS
  104. attributes,a,full,short  48701 OPT      * SAA,SAA2,OS
  105. cmpat,v1,v2              48702 OPT      *          OS   
  106. compile,c,w,e,s          48703 OPT      * SAA,SAA2,OS
  107. control                  48704 OPT      *          OS 
  108. *count                    *     OPT      * SAA,SAA2,OS
  109. deck,d,nodeck,nd         48706 OPT      *          OS
  110. default,dft,ibm,ans,ascii,ebcdic,assignable,asgn,nonassignable,nonasgn  *     OPT      * SAA,SAA2
  111. byaddr,byvalue,nonconnected,nonconn,connected,conn,native,nonnative      *     OPT      * SAA,SAA2
  112. descriptor,nodescriptor                                                 *     OPT      * SAA,SAA2
  113. nodirected,directed,asm,cobol,plitdli,noinline,inline,order,reorder     *     OPT      * SAA,SAA2
  114. linkage,optlink,system,ieee,hexadec                                     *     OPT      * SAA,SAA2
  115. esd                      48707 OPT      *          OS
  116. exit,noexit              *     OPT      * SAA,SAA2
  117. flag,f,i                 48708 OPT      * SAA,SAA2,OS
  118. gonumber,gn              48710 OPT      * SAA,SAA2,OS
  119. gostmt,gs                48711 OPT      *          OS
  120. graphic,gr               49712 OPT      *          OS
  121. imprecise,imp            48713 OPT      * SAA,SAA2,OS
  122. include,inc              48714 OPT      * SAA,SAA2,OS
  123. ext                      *     OPT      * SAA,SAA2   
  124. insource,is              48715 OPT      * SAA,SAA2,OS
  125. interrupt,int            48716 OPT      * SAA,SAA2,OS
  126. langlvl,os               48717 OPT      * SAA,SAA2,OS
  127. sprog,nosprog            48717 OPT      * SAA,SAA2,OS    ; they need to be allowed at all language levels
  128. saa,saa2,os2,noext       48717 OPT      * SAA,SAA2,OS    ; as they change to another language level
  129. libs,nolibs              *     OPT      * SAA,SAA2   
  130. limits,extname,fixeddec  *     OPT      * SAA,SAA2   
  131. linecount,lc             48718 OPT      * SAA,SAA2,OS
  132. list,nolist              48719 OPT      * SAA,SAA2,OS
  133. lmessage,lmsg            48720 OPT      *          OS
  134. smessage,smsg            48735 OPT      *          OS
  135. macro,m,nomacro,nm       48721 OPT      * SAA,SAA2,OS
  136. map,nomap                48722 OPT      *          OS
  137. margini,mi               48723 OPT      * SAA,SAA2,OS
  138. nomargini,nmi            48723 OPT      *          OS
  139. margins,mar              48724 OPT      * SAA,SAA2,OS
  140. mdeck,md,nomdeck,nmd     48725 OPT      * SAA,SAA2,OS
  141. name,n                   48726 OPT      *          OS
  142. names                    *     OPT      * SAA,SAA2
  143. natlang,enu,jpn          *     OPT      * SAA,SAA2
  144. nest,nonest              48727 OPT      * SAA,SAA2,OS
  145. noaggregate,nag          48705 OPT      * SAA,SAA2,OS
  146. noattributes,na          48701 OPT      * SAA,SAA2,OS
  147. nocompile,nc             48703 OPT      * SAA,SAA2,OS
  148. noesd                    48707 OPT      * SAA,SAA2,OS
  149. nogonumber,ngn           48710 OPT      * SAA,SAA2,OS
  150. nogostmt,ngs             48711 OPT      *          OS
  151. nographic,ngr            48712 OPT      *          OS
  152. noimprecise,nimp         48713 OPT      * SAA,SAA2,OS
  153. noinclude,ninc           48714 OPT      * SAA,SAA2,OS
  154. noinsource,nis           48715 OPT      * SAA,SAA2,OS
  155. nointerrupt,nint         48716 OPT      * SAA,SAA2,OS
  156. nonumber,nonum           48728 OPT      * SAA,SAA2,OS
  157. nooffset,nof             48730 OPT      * SAA,SAA2,OS
  158. nosequence,nseq          48733 OPT      *          OS
  159. not                      48791 OPT      * SAA,SAA2,OS
  160. number,num               48728 OPT      * SAA,SAA2,OS
  161. object,obj,noobject,nobj 48729 OPT      * SAA,SAA2,OS
  162. offset,of                48730 OPT      *          OS
  163. optimize,opt,time,0,2    48731 OPT      * SAA,SAA2,OS
  164. nooptimize,nopt          48731 OPT      * SAA,SAA2,OS
  165. options,op,nooptions,nop 48732 OPT      * SAA,SAA2,OS
  166. or                       48790 OPT      * SAA,SAA2,OS
  167. pp,nopp                  *     OPT      * SAA,SAA2
  168. prefix                   *     OPT      * SAA,SAA2
  169. probe,noprobe            *     OPT      * SAA,SAA2
  170. proceed,pro,noproceed,nopro  *     OPT      * SAA,SAA2
  171. rules,nolaxdcl,laxdcl    *     OPT      * SAA,SAA2
  172. nolaxif,laxif            *     OPT      * SAA,SAA2
  173. runops,norunops          *     OPT      * SAA,SAA2
  174. semantic,sem,nosemantic,nosem  *     OPT      * SAA,SAA2
  175. sequence,seq             48733 OPT      *          OS
  176. size,sz,max              48734 OPT      *          OS
  177. snap,nosnap              *     OPT      * SAA,SAA2
  178. source,s,nosource,ns     48736 OPT      * SAA,SAA2,OS
  179. stmt,nostmt              48737 OPT      *          OS
  180. storage,stg,nostorage,nstg    48738 OPT      *          OS
  181. syntax,syn,nosyntax,nsyn 48739 OPT      * SAA,SAA2,OS
  182. sysparm                  *     OPT      * SAA,SAA2
  183. system,cms,cmstpl,mvs,tso,cics,ims 48740 OPT   *          OS
  184. system,os2,ims,cms,mvs,tso,s386,s486,pentium 48740 OPT   * SAA,SAA2
  185. terminal,term,noterminal,nterm  48741 OPT      * SAA,SAA2,OS
  186. test,notest,all,block,none,path,stmt,sym,nosym 48742 OPT   * SAA,SAA2,OS
  187. xinfo,def,nodef          *     OPT      * SAA,SAA2
  188. xref,x,noxref,nx         48743 OPT      * SAA,SAA2,OS
  189. *
  190. *o NOTE: The following compiler options have not been
  191. *        documented in the SAA1 LSH library...
  192. *
  193. *SAA2 options: default, exit, natlang, noexit,
  194. *              norunops, nosemantic, prefix,
  195. *              rules, runops, semantic, sysparm
  196. *
  197. *Previously-documented options that were undocumented in the last PG:
  198. *              count, flow, nocount, noflow, noignore,
  199. *
  200. *-----------------------------------------------
  201. *NON-SAA COD-SUPPORTED COMPILER CONTROL COMMANDS
  202. *-----------------------------------------------
  203. *
  204. *Command          IPF RES #
  205. *
  206. *PLI              48744
  207. *PLIOPT           48747
  208. *
  209. *-----------------------------
  210. *SAA1 SOURCE LANGUAGE KEYWORDS
  211. *-----------------------------
  212. *
  213. *As published in:
  214. *      "IBM SAA AD/Cycle PL/I MVS & VM Language Reference", R1
  215. *
  216. *
  217. *KEYWORD         IPFRES# TYPE AI
  218. *
  219. abnormal         *     ATU        *      SAA2    ; non-data attribute   -                      
  220. addbuff          *     ENV        *           OS ; environment option          
  221. alias            *     ATU        *      SAA2    ; non-data attribute                           
  222. aligned          47479 ATU        *  SAA,SAA2,OS ; descriptive attribute
  223. all              *     SOP        *           OS ; stream i/o option
  224. allocate,alloc   47926 T2         *  SAA,SAA2,OS ; statement keyword
  225. anycondition,anycond * CON        *      SAA2    ; condition                                    
  226. area             47590 ATQ        *  SAA,SAA2,OS ; data attribute
  227. area             48571 CON        *  SAA,SAA2,OS ; condition                                    
  228. ascii            *     ENV        *           OS ; environment option          
  229. assembler,asm    47101 OPS        *      SAA2,OS ; options option        ----                    
  230. assignable,asgn  *     ATU        *      SAA2    ; non-data attribute                           
  231. nonassignable,nonasgn  *  ATU     *      SAA2    ; non-data attribute                           
  232. attach           *     FLO        *      SAA2    ; statement keyword                            
  233. attention,attn   48572 CON        *  SAA,SAA2,OS ; condition name
  234. automatic,auto   47903 ATU        *  SAA,SAA2,OS ; non-data attribute
  235. backward         *     ATU        *           OS ; non-data attribute
  236. based            47910 ATQ        *  SAA,SAA2,OS ; non-data attribute
  237. begin            47069 FLO        3  SAA,SAA2,OS ; statement keyword
  238. binary,bin       47515 ATQ        *  SAA,SAA2,OS ; data attribute
  239. bit              47565 ATQ        *  SAA,SAA2,OS ; data attribute
  240. bkwd             *     ENV        *  SAA,SAA2,OS ; environment option          
  241. blksize          *     ENV        *           OS ; environment option          
  242. buffered,buf     48325 ATU        *  SAA,SAA2,OS ; non-data attribute
  243. buffers          *     ENV        *           OS ; environment option          
  244. buffoff          *     ENV        *           OS ; environment option          
  245. bufnd            *     ENV        *           OS ; environment option          
  246. bufni            *     ENV        *           OS ; environment option          
  247. bufsp            *     ENV        *           OS ; environment option          
  248. builtin          47085 ATU        *  SAA,SAA2,OS ; non-data attribute
  249. by               48061 SOP        *  SAA,SAA2,OS ; do statement keyword
  250. byaddr           *     ATU        *  SAA,SAA2    ; non-data attribute                           
  251. byaddr           *     OPS        *  SAA,SAA2    ; options option                              
  252. byvalue          *     ATU        *  SAA,SAA2    ; non-data attribute                           
  253. byvalue          *     OPS        *  SAA,SAA2    ; options option                              
  254. call             48054 FLO        *  SAA,SAA2,OS ; statement keyword
  255. cdecl16          *     OPS        *      SAA2    ; attribute keyword           
  256. character,char   47575 ATQ        *  SAA,SAA2,OS ; data attribute
  257. chargraphic,charg 48053 ATU       *  SAA,SAA2,OS ; non data attribute    ----                    
  258. chargraphic,charg 48053 OPS       *  SAA,SAA2,OS ; options option        ----                    
  259. cics             *     SOP        *  SAA,SAA2,OS ; statement option
  260. close            48352 T1         *  SAA,SAA2,OS ; statement keyword
  261. cobol            *     OPS        *      SAA2,OS ; options option        ----                    
  262. cobol            *     ENV        *           OS ; environment option          
  263. consecutive      *     ENV        *  SAA,SAA2,OS ; environment option          
  264. column,col       *     SOP        *      SAA2    ; preprocessor statement option
  265. complex,cplx     47515 ATQ        *  SAA,SAA2,OS ; data attribute
  266. condition,cond   48552 ATU        *  SAA,SAA2,OS ; non-data attribute
  267. condition,cond   *     CON        *  SAA,SAA2,OS ; non-data attribute   --                      
  268. connected,conn   47942 ATU        *  SAA,SAA2,OS ; descriptive attribute
  269. constant         47500 *          *  SAA,SAA2,OS ; non-data attribute   ---- not allowed in source code - used as a tag RH
  270. controlled,ctl   47904 ATU        *  SAA,SAA2,OS ; non-data attribute
  271. conversion,conv  48574 CON        *  SAA,SAA2,OS ; condition name/prefix
  272. copy             48381 SOP        *  SAA,SAA2,OS ; stream i/o option
  273. ctlasa           *     ENV        *  SAA,SAA2,OS ; environment option          
  274. ctl360           *     ENV        *           OS ; environment option          
  275. d,db             *     ENV        *           OS ; environment option          
  276. data             48382 SOP        *  SAA,SAA2,OS ; stream i/o option
  277. decimal,dec      47517 ATQ        *  SAA,SAA2,OS ; data attribute
  278. declare,dcl      47437 T0         *  SAA,SAA2,OS ; statement keyword
  279. default,dft      48057 T0         *  SAA,SAA2,OS ; statement keyword
  280. define           *     T0         *      SAA2    ; statement keyword -                      
  281. defined,def      47943 ATQ        *  SAA,SAA2,OS ; non-data attribute
  282. delay            48058 T2         *  SAA,SAA2,OS ; statement keyword
  283. delete           48365 T1         *  SAA,SAA2,OS ; statement keyword
  284. descriptor       *     OPS        *      SAA2    ; attribute keyword           
  285. detach           *     T1         *      SAA2    ; statement keyword                           
  286. descriptors      *     SOP        *           OS ; default statement keyword
  287. dimension,dim    47452 ATQ        *      SAA2,OS ; data attribute      ---- not allowed in source
  288. direct           48324 ATU        *  SAA,SAA2,OS ; non-data attribute
  289. display          48060 T2         *  SAA,SAA2,OS ; statement keyword
  290. do               48061 T0        10  SAA,SAA2,OS ; statement keyword
  291. downthru         48061 SOP        *      SAA2    ; do statement keyword
  292. edit             48382 SOP        *  SAA,SAA2,OS ; stream i/o option
  293. else             48073 T0         3  SAA,SAA2,OS ; statement keyword
  294. end              48066 FLO      -10  SAA,SAA2,OS ; statement keyword
  295. endfile,endf     48575 CON        *  SAA,SAA2,OS ; condition name
  296. endpage,endp     48576 CON        *  SAA,SAA2,OS ; condition name
  297. entry            47092 ATQ        *  SAA,SAA2,OS ; data attribute
  298. entry            *     T0         *  SAA,SAA2,OS ; data attribute
  299. environment,env  48326 ATQ        *  SAA,SAA2,OS ; non-data attribute
  300. environment,env  48326 SOP        *  SAA,SAA2,OS ; statement option  
  301. error            48577 CON        *  SAA,SAA2,OS ; condition name
  302. event            *     SOP        *           OS ; non-data attribute
  303. exclusive        *     ATU        *           OS ; non-data attribute          
  304. exec             *     T0         *  SAA,SAA2,OS ; statement keyword
  305. exit             48067 FLO        *           OS ; statement keyword
  306. exports          *     ATQ        *      SAA2    ; package statement option
  307. external,ext     47486 ATQ        *  SAA,SAA2,OS ; non-data attribute
  308. f,fb,fs,fbs      *     ENV        *           OS ; environment option          
  309. fastcall16       *     OPS        *      SAA2    ; attribute keyword           
  310. fetch            47063 FLO        *  SAA,SAA2,OS ; statement keyword
  311. fetchable        47101 OPS        *  SAA,SAA2    ; options option
  312. file             48314 ATU        *  SAA,SAA2,OS ; data attribute
  313. file             *     SOP        *  SAA,SAA2,OS ; i/o option
  314. finish           48578 CON        *  SAA,SAA2,OS ; condition name
  315. fixed            47515 ATQ        *  SAA,SAA2,OS ; data attribute
  316. fixedoverflow,fofl 48575 CON      *  SAA,SAA2,OS ; condition name/prefix
  317. float            47515 ATQ        *  SAA,SAA2,OS ; data attribute
  318. flow             *     SOP        *           OS ; stream i/o option
  319. forever          48061 SOP        *  SAA,SAA2,OS ; do statement keyword
  320. format           47610 T0         *  SAA,SAA2,OS ; statement keyword
  321. fortran          *     OPS        *      SAA2,OS ; options option        ----                    
  322. free             48070 T2         *  SAA,SAA2,OS ; statement keyword
  323. from             48368 SOP        *  SAA,SAA2,OS ; record i/o option
  324. fromalien        *     OPS        *      SAA2    ; attribute keyword           
  325. generic          47097 ATQ        *  SAA,SAA2,OS ; non-data attribute
  326. genkey           48332 ENV        *  SAA,SAA2,OS ; environment option
  327. get              48379 T0         *  SAA,SAA2,OS ; statement keyword
  328. go               48072 T2         *  SAA,SAA2,OS ; statement keyword, the TO is handled by special case code
  329. goto             48072 T2         *  SAA,SAA2,OS ; statement keyword
  330. graphic,g        47585 ATQ        *  SAA,SAA2,OS ; data attribute
  331. graphic          *     ENV        *  SAA,SAA2,OS ; environment option          
  332. handle           *     ATQ        *      SAA2    ; non-data attribute                           
  333. hexadec          *     ATU        *      SAA2    ; data attribute                               
  334. ieee             *     ATU        *      SAA2    ; data attribute                               
  335. if               48073 T0         3  SAA,SAA2,OS ; statement keyword
  336. ignore           48370 SOP        *  SAA,SAA2,OS ; statement keyword
  337. in               47912 SOP        *  SAA,SAA2,OS ; allocate/free option
  338. indexed          *     ENV        *  SAA,SAA2,OS ; environment option          
  339. indexarea        *     ENV        *           OS ; environment option          
  340. initial,init     47948 ATQ        *  SAA,SAA2,OS ; non-data attribute
  341. input            48323 ATU        *  SAA,SAA2,OS ; non-data attribute
  342. inline           *     OPS        *      SAA2    ; options option        ----                    
  343. inter            47101 OPS        *      SAA2,OS ; options option        ----                    
  344. internal,int     47486 ATU        *  SAA,SAA2,OS ; non-data attribute
  345. into             48371 SOP        *  SAA,SAA2,OS ; record i/o option
  346. invalidop        *     CON        *      SAA2    ; condition prefix
  347. irreducible,irred 48074 ATU       *  SAA,     OS ; non-data attribute
  348. irreducible,irred 48074 OPS       *      SAA2    ; options keyword           
  349. iterate          *     FLO        *      SAA2    ; statement keyword                            
  350. key              *     CON        *  SAA,SAA2,OS ; condition
  351. key              48372 SOP        *  SAA,SAA2,OS ; record i/o option
  352. keyed            48327 ATU        *  SAA,SAA2,OS ; non-data attribute
  353. keyfrom          48373 SOP        *  SAA,SAA2,OS ; record i/o option
  354. keylength        *     ENV        *  SAA,SAA2,OS ; environment option          
  355. keyloc           *     ENV        *  SAA,SAA2,OS ; environment option          
  356. keyto            48379 SOP        *  SAA,SAA2,OS ; record i/o option
  357. label            47620 ATQ        *  SAA,SAA2,OS ; data attribute
  358. leave            48080 T2         *  SAA,SAA2,OS ; statement keyword
  359. leave            *     ENV        *           OS ; environment option          
  360. like             47465 ATQ        *  SAA,SAA2,OS ; non-data attribute
  361. limited          *     ATU        *      SAA2    ; non-data attribute   -                      
  362. line             48416 SOP        *  SAA,SAA2,OS ; stream i/o option
  363. linkage          *     OPS        *      SAA2    ; attribute keyword           
  364. linesize         48341 SOP        *  SAA,SAA2,OS ; open option
  365. list             48382 SOP        *  SAA,SAA2,OS ; stream i/o option
  366. locate           48364 T2         *  SAA,SAA2,OS ; statement keyword
  367. loop             48061 SOP        *  SAA,SAA2,OS ; do statement keyword
  368. m                *     ENV        *           OS ; environment option          
  369. main             47101 OPS        *  SAA,SAA2,OS ; options option                               
  370. name             *     SOP        *  SAA,SAA2,OS ; the 'name' part of BY NAME
  371. margins,mar      *     SOP        *      SAA2    ; preprocessor statement option
  372. name             *     SOP        *  SAA,SAA2,OS ; the 'name' part of BY NAME
  373. native           *     ATU        *      SAA2    ; non-data attribute   -                      
  374. ncp              *     ENV        *           OS ; environment option          
  375. nochargraphic,nocharg  48053 ATU  *  SAA,SAA2,OS ; non data attribute - used to allow appearance on PROC stmt
  376. nochargraphic,nocharg  48053 OPS  *  SAA,SAA2,OS ; options option        ----                    
  377. noconversion,noconv    48574 CON  *  SAA,SAA2,OS ; condition prefix
  378. nodescriptor     *     OPS        *      SAA2    ; attribute keyword           
  379. noexecops        47101 OPS        *  SAA,SAA2,OS ; options option                               
  380. nofixedoverflow,nofofl 48579 CON  *  SAA,SAA2,OS ; condition prefix
  381. noinline         *     OPS        *      SAA2    ; options option        ----                    
  382. nolock           *     SOP        *  SAA,SAA2,OS ; i/o statement option
  383. nonconnected,nonconn * ATU        *      SAA2    ; data attribute                               
  384. nonnative        *     ATU        *      SAA2    ; non-data attribute   -                      
  385. nonvarying,nonvar *    ATU        *      SAA2    ; data attribute                               
  386. nooverflow,noofl       48583 CON  *  SAA,SAA2,OS ; condition prefix
  387.   norescan         *     ATU        *  SAA,SAA2,OS ; preprocessor attribute
  388.   norescan         *     SOP        *  SAA,SAA2,OS ; preprocessor statement option
  389. normal           *     ATU        *      SAA2    ; non-data attribute   -                      
  390. normal           *     ATU        *      SAA2    ; non-data attribute   -                      
  391. nosize                 48585 CON  *  SAA,SAA2,OS ; condition prefix
  392. nostringrange,nostrg   48587 CON  *  SAA,SAA2,OS ; condition prefix
  393. nostringsize,nostrz    48588 CON  *  SAA,SAA2,OS ; condition prefix
  394. nosubscriptrange,nosubrg 48589 CON  *  SAA,SAA2,OS ; condition prefix
  395.    note             *     *          *  SAA,SAA2,OS ; preprocessor statement keyword
  396. nounderflow,noufl      48592 CON  *  SAA,SAA2,OS ; condition prefix
  397. nowrite          *     ENV        *           OS ; environment option          
  398. nozerodivide,nozdiv    48593 CON  *  SAA,SAA2,OS ; condition prefix
  399.   noscan         *     ATU        *  SAA,SAA2,OS ; preprocessor attribute
  400.   noscan         *     SOP        *  SAA,SAA2,OS ; preprocessor statement option
  401. offset           47923 ATQ        *  SAA,SAA2,OS ; data attribute
  402. on               48558 T0         *  SAA,SAA2,OS ; statement keyword
  403. open             48341 T0         *  SAA,SAA2,OS ; statement keyword
  404. optional         *     ATU        *      SAA2    ; non-data attribute   -                      
  405. options          47101 ATQ        *  SAA,SAA2,OS ; non-data attribute
  406. optlink          *     OPS        *      SAA2    ; options option        ----                    
  407. order            47056 ATU        *  SAA,SAA2,OS ; non-data attribute                           
  408. order            *     OPS        *      SAA2    ; options option        ----                    
  409. ordinal          *     ATQ        *      SAA2    ; non-data attribute                           
  410. organization     *     ENV        *      SAA2    ; environment option                           
  411. other,otherwise  48120 T0         3  SAA,SAA2,OS ; statement keyword
  412. other,otherwise  *     ATQ        *  SAA,SAA2,OS ; option of generic 
  413. output           48323 ATU        *  SAA,SAA2,OS ; non-data attribute
  414. overflow,ofl     48583 CON        *  SAA,SAA2,OS ; condition name/prefix
  415. package          *     T0         3      SAA2    ; statement keyword                            
  416. page             48417 SOP        *  SAA,SAA2,OS ; stream i/o option
  417. pagesize         48435 SOP        *  SAA,SAA2,OS ; open option
  418. pascal16         *     OPS        *      SAA2    ; attribute keyword           
  419. password         *     ENV        *           OS ; environment option          
  420. pending          *     CON        *           OS ; 
  421. picture,pic      47545 ATU        *  SAA,SAA2,OS ; data attribute
  422. pointer,ptr      47921 ATU        *  SAA,SAA2,OS ; data attribute
  423. position,pos     47943 ATQ        *  SAA,SAA2,OS ; non-data attribute
  424. precision,prec   *     ATQ        *      SAA2    ; non-data attribute   -                      
  425. print            48328 ATU        *  SAA,SAA2,OS ; non-data attribute
  426. priority         *     SOP        *           OS ;
  427. procedure,proc   47056 T0         3  SAA,SAA2,OS ; statement keyword
  428. put              48380 T0         *  SAA,SAA2,OS ; statement keyword
  429. r                *     ENV        *           OS ; environment option          
  430. range            47490 SOP        *  SAA,SAA2,OS ; default statement keyword
  431. read             48361 T1         *  SAA,SAA2,OS ; statement keyword
  432. real             47515 ATQ        *  SAA,SAA2,OS ; data attribute
  433. record           48322 ATU        *  SAA,SAA2,OS ; non-data attribute
  434. record           *     CON        *  SAA,SAA2,OS ; condition
  435. recsize          *     ENV        *  SAA,SAA2,OS ; environment option          
  436. recursive        47060 ATU        *  SAA,SAA2,OS ; non-data attribute - to allow it to appear on PROC stmt
  437. reducible,red    48074 ATU        *  SAA,     OS ; non-data attribute
  438. reducible,red    48074 OPS        *      SAA2    ; options keyword           
  439. reentrant        47101 OPS        *  SAA,SAA2,OS ; options option                               
  440. refer            47570 ATQ        *  SAA,SAA2,OS ; data attribute option
  441. regional         *     ENV        *  SAA,SAA2,OS ; environment option          
  442. relative         *     ENV        *  SAA,SAA2    ; environment option                          
  443. release          47064 T2         *  SAA,SAA2,OS ; statement keyword
  444. reorder          47056 ATU        *  SAA,SAA2,OS ; non-data attribute - to allow it to appear on PROC stmt
  445. reorder          *     OPS        *      SAA2    ; options option        ----                    
  446. repeat           48061 SOP        *  SAA,SAA2,OS ; do statement keyword
  447. reply            48060 SOP        *  SAA,SAA2,OS ; display option
  448. reread           *     ENV        *           OS ; environment option          
  449.   rescan         *     ATU        *  SAA,SAA2,OS ; preprocessor attribute
  450.   rescan         *     SOP        *  SAA,SAA2,OS ; preprocessor statement option
  451. reserved         *     ATU        *      SAA2    ; non-data attribute                           
  452. reserves         *     ATQ        *      SAA2    ; package statement attribute             
  453. resignal         *     FLO        *      SAA2    ; statement keyword                            
  454. retcode          47101 OPS        *      SAA2,OS ; options option        ----                    
  455. return           47100 FLO        *  SAA,SAA2,OS ; statement keyword
  456. returns          47080 ATQ        *  SAA,SAA2,OS ; data attribute
  457. reuse            *     ENV        *           OS ; environment option          
  458. revert           48561 T2         *  SAA,SAA2,OS ; statement keyword
  459. rewrite          48363 T1         *  SAA,SAA2,OS ; statement keyword
  460. scalarvarying    *     ENV        *  SAA,SAA2,OS ; environment option          
  461.   scan           *     ATU        *  SAA,SAA2,OS ; preprocessor attribute
  462.   scan           *     SOP        *  SAA,SAA2,OS ; preprocessor statement option
  463. segmented        *     ATU        *      SAA2    ; non - data attribute                       
  464. select           48120 FLO        3  SAA,SAA2,OS ; statement keyword
  465. sequential       48324 ATU        *  SAA,SAA2,OS ; non-data attribute
  466. set              48375 SOP        *  SAA,SAA2,OS ; allocate/locate option
  467. signal           48562 FLO        *  SAA,SAA2,OS ; statement keyword
  468. signed,unsigned  *     ATU        *      SAA2    ; non-data attribute                        
  469. sis              *     ENV        *           OS ; environment option          
  470. size             48585 CON        *  SAA,SAA2,OS ; condition name/prefix
  471. skip             48390 SOP        *  SAA,SAA2,OS ; stream i/o option
  472. skip             *     ENV        *           OS ; environment option          
  473. snap             48558 SOP        *  SAA,SAA2,OS ; on statement keyword
  474. sql              *     SOP        *  SAA,SAA2,OS ; statement option
  475. static           47902 ATU        *  SAA,SAA2,OS ; non-data attribute
  476. stop             48124 T1         *  SAA,SAA2,OS ; statement keyword
  477. storage          *     CON        *      SAA2    ; condition prefix
  478. stream           48322 ATU        *  SAA,SAA2,OS ; non-data attribute
  479. string           48391 SOP        *  SAA,SAA2,OS ; stream i/o option
  480. stringrange,strg 48587 CON        *  SAA,SAA2,OS ; condition name/prefix
  481. stringsize,strz  48588 CON        *  SAA,SAA2,OS ; condition name/prefix
  482. structure        *     ATU        *      SAA2    ; non-data attribute                        
  483. subscriptrange,subrg 48589 CON    *  SAA,SAA2,OS ; condition name/prefix
  484. system           48558 SOP        *  SAA,SAA2,OS ; on statement keyword
  485. system           *     OPS        *      SAA2    ; options option        ----                    
  486. task             *     ATU        *      SAA2,OS ; 
  487. task             *     SOP        *      SAA2,OS ; 
  488. then             48073 SOP        *  SAA,SAA2,OS ; if statement keyword
  489. thread           *     SOP        *      SAA2    ; attach statement option                       
  490. title            48343 SOP        *  SAA,SAA2,OS ; open/fetch option
  491. to               48061 SOP        *  SAA,SAA2,OS ; do statement keyword
  492. total       *          ENV        *  OS          ; I/O env option                   ----- special for testing
  493. tp               *     ENV        *           OS ; environment option          
  494. transmit         48590 CON        *  SAA,SAA2,OS ; condition name
  495. trkofl           *     ENV        *           OS ; environment option          
  496. tstack           *     ENV        *      SAA2    ; attach statement env option                       
  497. type             *     ATQ        *      SAA2    ; non-data attribute                           
  498. u                *     ENV        *           OS ; environment option          
  499. unaligned,unal   47479 ATU        *  SAA,SAA2,OS ; descriptive attribute
  500. unbuffered,unbuf 48325 ATU        *  SAA,SAA2,OS ; non-data attribute
  501. undefinedfile,undf 48591 CON      *  SAA,SAA2,OS ; condition name
  502. underflow,ufl    48592 CON        *  SAA,SAA2,OS ; condition name/prefix
  503. union            *     ATU        *      SAA2    ; non-data attribute                          
  504. unlock           *     T1         *           OS ; i/o statemnent
  505. until            48061 SOP        *  SAA,SAA2,OS ; do statement keyword
  506. update           48323 ATU        *  SAA,SAA2,OS ; non-data attribute
  507. upthru           48061 SOP        *      SAA2    ; do statement keyword
  508. v,vb,vs,vbs      *     ENV        *           OS ; environment option          
  509. value            *     ATQ        *      SAA2    ; non-data attribute    ----                      
  510. variable         47951 ATU        *  SAA,SAA2,OS ; non-data attribute
  511. varying,var      47572 ATU        *  SAA,SAA2,OS ; data attribute
  512. varyingz,varz *        ATU        *      SAA2    ; data attribute                               
  513. vsam             *     ENV        *  SAA,SAA2,OS ; environment option          
  514. wait             *     T1         *      SAA2    ; statement keyword                           
  515. wait             *     T2         *           OS ; statement keyword                           
  516. when             48120 T0         3  SAA,SAA2,OS ; statement keyword
  517. when             *     ATQ        *  SAA,SAA2,OS ; option of GENERIC
  518. while            48061 SOP        *  SAA,SAA2,OS ; do statement keyword
  519. write            48362 T1         *  SAA,SAA2,OS ; statement keyword
  520. zerodivide,zdiv  48593 CON        *  SAA,SAA2,OS ; condition name/prefix
  521. *
  522. *
  523. *----------------
  524. *SAA1 %STATEMENTS
  525. *----------------
  526. *
  527. *As published in:
  528. *      "IBM SAA AD/Cycle PL/I MVS & VM Language Reference", R1
  529. *
  530. *   % statements appear in hear just like any others and will be accepted 
  531. *   as if they were nornal statemetns. The tokeniser recognises a leading % as 'special' 
  532. *   and uses the preprocessor font for the keywords. Beyond that % statements get no 
  533. *   special treatment.
  534. *
  535. *   A number of the keywords are commented because they reflect underlying statements already
  536. *   supported in the list above.
  537. *
  538. *STATEMENT       IPF RES #
  539. *
  540. ACTIVATE,act      48052 T2          * SAA,SAA2,OS  ;
  541. answer,ans        *     T2          *     SAA2     ;
  542. DEACTIVATE,deact  48057 T2          * SAA,SAA2,OS  ;
  543. *DO             48068 *          *  SAA,SAA2,OS ;
  544. *END            48069 *          *  SAA,SAA2,OS ;
  545. *GO TO          48075            *  SAA,SAA2,OS ;
  546. *IF             48077            *  SAA,SAA2,OS ;
  547. *INCLUDE        48076 *            *  SAA,SAA2,OS ;
  548. NOPRINT        48085 PPS           *  SAA,SAA2,OS ;
  549. NOTE           48078 *            *  SAA,SAA2,OS ;
  550. *%null           48082            *  SAA,SAA2,OS ;
  551. PAGE           48105 PPS           *  SAA,SAA2,OS ;
  552. PRINT          48107 PPS           *  SAA,SAA2,OS ;
  553. *PROCEDURE      48083            *  SAA,SAA2,OS ;
  554. PROCESS        48109            *  SAA,SAA2,OS ;
  555. SKIP           48123 PPS           *  SAA,SAA2,OS ;
  556. *
  557. *---------------------------
  558. * BIF names 
  559. *---------------------------
  560. *
  561. abs              47251 BIF        *  SAA,SAA2,OS ;
  562. acos             47252 BIF        *  SAA,SAA2,OS ;
  563. acosf            *     BIF        *      SAA2    ;
  564. add              47253 BIF        *  SAA,SAA2,OS ;
  565. addr             47254 BIF        *  SAA,SAA2,OS ;
  566. all              47255 BIF        *  SAA,SAA2,OS ;
  567. allocate,alloc   *     BIF        *      SAA2    ;
  568. allocation,allocn 47256 BIF       *  SAA,SAA2,OS ;
  569. any              47257 BIF        *  SAA,SAA2,OS ;
  570. asin             47258 BIF        *  SAA,SAA2,OS ;
  571. asinf            *     BIF        *      SAA2    ;
  572. atan             47259 BIF        *  SAA,SAA2,OS ;
  573. atanf            *     BIF        *      SAA2    ;
  574. atand            47260 BIF        *  SAA,SAA2,OS ;
  575. atanh            47261 BIF        *  SAA,SAA2,OS ;
  576. automatic,auto   *     BIF        *      SAA2    ;
  577. availablearea    *     BIF        *      SAA2    ;
  578. binary,bin       47262 BIF        *  SAA,SAA2,OS ;
  579. binaryvalue,binvalue  47417 BIF   *  SAA,SAA2,OS ;
  580. bit              47263 BIF        *  SAA,SAA2,OS ;
  581. bitlocation,bitloc *   BIF        *      SAA2    ;
  582. bool             47265 BIF        *  SAA,SAA2,OS ;
  583. ceil             47266 BIF        *  SAA,SAA2,OS ;
  584. centerleft,center  *   BIF        *      SAA2    ;
  585. centreleft,centre  *   BIF        *      SAA2    ;
  586. centerright      *     BIF        *      SAA2    ;
  587. centreright      *     BIF        *      SAA2    ;
  588. character        *     BIF        *      SAA2    ;
  589. char             47269 BIF        *  SAA,SAA2,OS ;
  590. chargraphic,charg *    BIF        *      SAA2    ;
  591. collate          *     BIF        *      SAA2    ;
  592. comment          *     BIF        *      SAA2    ;                         
  593. compare          *     BIF        *      SAA2    ;
  594. compiletime      47251 BIF        *  SAA,SAA2,OS ;
  595. completion       *     BIF        *           OS ; 
  596. complex,cplx     47273 BIF        *  SAA,SAA2,OS ;
  597. conjg            47274 BIF        *  SAA,SAA2,OS ;
  598. copy             *     BIF        *      SAA2    ;
  599. cos              47276 BIF        *  SAA,SAA2,OS ;
  600. cosf             *     BIF        *      SAA2    ;
  601. cosd             47277 BIF        *  SAA,SAA2,OS ;
  602. cosh             47278 BIF        *  SAA,SAA2,OS ;
  603. cotan            *     BIF        *      SAA2    ;
  604. cotand           *     BIF        *      SAA2    ;
  605. count            47281 BIF        *  SAA,SAA2,OS ;
  606. counter          47253 BIF        *  SAA,SAA2,OS ;
  607. currentsize      *     BIF        *      SAA2    ;
  608. currentstorage,cstg   47230 BIF   *  SAA,SAA2,OS ;
  609. datafield        47283 BIF        *  SAA,SAA2,OS ;
  610. date             47284 BIF        *  SAA,SAA2,OS ;
  611. datetime         47285 BIF        *  SAA,SAA2,OS ;
  612. days             *     BIF        *      SAA2    ;
  613. daystodate       *     BIF        *      SAA2    ;
  614. daystosecs       *     BIF        *      SAA2    ;
  615. decimal,dec      47289 BIF        *  SAA,SAA2,OS ;
  616. dimension,dim    47290 BIF        *  SAA,SAA2,OS ;
  617. divide           47291 BIF        *  SAA,SAA2,OS ;
  618. edit             *     BIF        *      SAA2    ;
  619. endfile          *     BIF        *      SAA2    ;
  620. empty            47293 BIF        *  SAA,SAA2,OS ;
  621. entryaddr        47418 BIF        *  SAA,SAA2,OS ;
  622. epsilon          *     BIF        *      SAA2    ;
  623. erf              47295 BIF        *  SAA,SAA2,OS ;
  624. erfc             47296 BIF        *  SAA,SAA2,OS ;
  625. exp              47297 BIF        *  SAA,SAA2,OS ;
  626. exponent         *     BIF        *      SAA2    ;
  627. fileopen         *     BIF        *      SAA2    ;
  628. fixed            47300 BIF        *  SAA,SAA2,OS ;
  629. float            47301 BIF        *  SAA,SAA2,OS ;
  630. floor            47302 BIF        *  SAA,SAA2,OS ;
  631. gamma            *     BIF        *      SAA2    ;
  632. graphic          47304 BIF        *  SAA,SAA2,OS ;
  633. handle           *     BIF        *      SAA2    ;                         
  634. hbound           47306 BIF        *  SAA,SAA2,OS ;
  635. hex              *     BIF        *      SAA2    ;
  636. heximage         *     BIF        *      SAA2    ;
  637. high             47309 BIF        *  SAA,SAA2,OS ;
  638. huge             *     BIF        *      SAA2    ;
  639. iand             *     BIF        *      SAA2    ;
  640. ieor             *     BIF        *      SAA2    ;
  641. imag             47313 BIF        *  SAA,SAA2,OS ;
  642. inot             *     BIF        *      SAA2    ;                         
  643. index            47315 BIF        *  SAA,SAA2,OS ;
  644. ior              *     BIF        *      SAA2    ;
  645. isll             *     BIF        *      SAA2    ;                         
  646. isrl             *     BIF        *      SAA2    ;                         
  647. item             *     BIF        *      SAA2    ;                         
  648. itemcount        *     BIF        *      SAA2    ;                         
  649. lbound           47317 BIF        *  SAA,SAA2,OS ;
  650. left             *     BIF        *      SAA2    ;
  651. length           47319 BIF        *  SAA,SAA2,OS ;
  652. lineno           47320 BIF        *  SAA,SAA2,OS ;
  653. location         *     BIF        *      SAA2    ;
  654. log              47414 BIF        *  SAA,SAA2,OS ;
  655. loggamma         *     BIF        *      SAA2    ;
  656. log2             47321 BIF        *  SAA,SAA2,OS ;
  657. log10            47322 BIF        *  SAA,SAA2,OS ;
  658. low              47324 BIF        *  SAA,SAA2,OS ;
  659. lower2           *     BIF        *      SAA2    ;
  660. macargs          *     BIF        *      SAA2    ;                         
  661. maccol           *     BIF        *      SAA2    ;                         
  662. macecho          *     BIF        *      SAA2    ;                         
  663. macindex         *     BIF        *      SAA2    ;                         
  664. maclmar          *     BIF        *      SAA2    ;                         
  665. macparmset       *     BIF        *      SAA2    ;                         
  666. macrmar          *     BIF        *      SAA2    ;                         
  667. max              47326 BIF        *  SAA,SAA2,OS ;
  668. maxexp           *     BIF        *      SAA2    ;
  669. maxlength        *     BIF        *      SAA2    ;
  670. min              47329 BIF        *  SAA,SAA2,OS ;
  671. minexp           *     BIF        *      SAA2    ;
  672. mod              47331 BIF        *  SAA,SAA2,OS ;
  673. mpstr            47332 BIF        *  SAA,SAA2,OS ;
  674. multiply         47333 BIF        *  SAA,SAA2,OS ;
  675. null             47334 BIF        *  SAA,SAA2,OS ;
  676. offset           47335 BIF        *  SAA,SAA2,OS ;
  677. offsetadd        *     BIF        *      SAA2    ;
  678. offsetdiff       *     BIF        *      SAA2    ;
  679. offsetsubtract   *     BIF        *      SAA2    ;
  680. offsetvalue      *     BIF        *      SAA2    ;
  681. omitted          *     BIF        *      SAA2    ;
  682. onchar           47341 BIF        *  SAA,SAA2,OS ;
  683. oncode           47342 BIF        *  SAA,SAA2,OS ;
  684. oncondcond       *     BIF        *      SAA2    ;
  685. oncondid         *     BIF        *      SAA2    ;
  686. oncount          47343 BIF        *  SAA,SAA2,OS ;
  687. onfile           47345 BIF        *  SAA,SAA2,OS ;
  688. ongsource        *     BIF        *      SAA2    ;
  689. onkey            47346 BIF        *  SAA,SAA2,OS ;
  690. onloc            47347 BIF        *  SAA,SAA2,OS ;
  691. onsource         47348 BIF        *  SAA,SAA2,OS ;
  692. ordinalhigh      *     BIF        *      SAA2    ;
  693. ordinallow       *     BIF        *      SAA2    ;
  694. ordinalname      *     BIF        *      SAA2    ;
  695. ordinalpred      *     BIF        *      SAA2    ;
  696. ordinalsucc      *     BIF        *      SAA2    ;
  697. packagename      *     BIF        *      SAA2    ;
  698. pageno           *     BIF        *      SAA2    ;
  699. parmset          47254 BIF        *  SAA,SAA2,OS ;
  700. places           *     BIF        *      SAA2    ;
  701. plidelete        *     BIF        *      SAA2    ;  -                      
  702. plidump          47352 BIF        *  SAA,SAA2,OS ;
  703. plifill          *     BIF        *      SAA2    ;
  704. plifree          *     BIF        *      SAA2    ;
  705. plimove          *     BIF        *      SAA2    ;
  706. pliover          *     BIF        *      SAA2    ;
  707. pliretc          47355 BIF        *  SAA,SAA2,OS ;
  708. pliretv          47356 BIF        *  SAA,SAA2,OS ;
  709. plisrta          47221 BIF        *  SAA,SAA2,OS ;
  710. plisrtb          47222 BIF        *  SAA,SAA2,OS ;
  711. plisrtc          47223 BIF        *  SAA,SAA2,OS ;
  712. plisrtd          47224 BIF        *  SAA,SAA2,OS ;
  713. plistsize        *     BIF        *      SAA2    ;
  714. plitest          47357 BIF        *  SAA,SAA2,OS ;
  715. pointer,ptr      47358 BIF        *  SAA,SAA2,OS ;
  716. pointeradd,ptradd 47359 BIF       *  SAA,SAA2,OS ;
  717. pointerdiff,ptrdiff *     BIF        *      SAA2    ;
  718. pointersubtract,ptrsubtract *     BIF        *      SAA2    ;
  719. pointervalue,ptrvalue  47362 BIF  *  SAA,SAA2,OS ;
  720. precision,prec   47364 BIF        *  SAA,SAA2,OS ;
  721. pred             *     BIF        *      SAA2    ;
  722. priority         *     BIF        *           OS ;
  723. procedurename,procname  *     BIF        *      SAA2    ;
  724. prod             47466 BIF        *  SAA,SAA2,OS ;
  725. quote            *     BIF        *      SAA2    ;                         
  726. radix            *     BIF        *      SAA2    ;
  727. raise2           *     BIF        *      SAA2    ;
  728. random           *     BIF        *      SAA2    ;
  729. real             47370 BIF        *  SAA,SAA2,OS ;
  730. rem              *     BIF        *      SAA2    ;
  731. repeat           47373 BIF        *  SAA,SAA2,OS ;
  732. reverse          *     BIF        *      SAA2    ;
  733. right            *     BIF        *      SAA2    ;
  734. round            47376 BIF        *  SAA,SAA2,OS ;
  735. samekey          47377 BIF        *  SAA,SAA2,OS ;
  736. scale            *     BIF        *      SAA2    ;
  737. search           *     BIF        *      SAA2    ;
  738. searchr          *     BIF        *      SAA2    ;
  739. secs             *     BIF        *      SAA2    ;
  740. secstodate       *     BIF        *      SAA2    ;
  741. secstodays       *     BIF        *      SAA2    ;
  742. sign             47384 BIF        *  SAA,SAA2,OS ;
  743. signed           *     BIF        *      SAA2    ;
  744. sin              47386 BIF        *  SAA,SAA2,OS ;
  745. sind             47387 BIF        *  SAA,SAA2,OS ;
  746. sinf             *     BIF        *      SAA2    ;
  747. sinh             47388 BIF        *  SAA,SAA2,OS ;
  748. size             *     BIF        *      SAA2    ;
  749. sourcefile       *     BIF        *      SAA2    ;
  750. sourceline       *     BIF        *      SAA2    ;
  751. sqrt             47390 BIF        *  SAA,SAA2,OS ;
  752. sqrtf            *     BIF        *      SAA2    ;
  753. status           *     BIF        *           OS ;
  754. storage,stg      47231 BIF        *  SAA,SAA2,OS ;
  755. string           47393 BIF        *  SAA,SAA2,OS ;
  756. substr           47394 BIF        *  SAA,SAA2,OS ;
  757. subtract         *     BIF        *      SAA2    ;
  758. succ             *     BIF        *      SAA2    ;
  759. sum              47397 BIF        *  SAA,SAA2,OS ;
  760. sysnull          47419 BIF        *  SAA,SAA2,OS ;
  761. sysparm          *     BIF        *      SAA2    ;                         
  762. system           *     BIF        *      SAA2    ;                         
  763. sysversion       *     BIF        *      SAA2    ;                         
  764. tally            *     BIF        *      SAA2    ;
  765. tan              47398 BIF        *  SAA,SAA2,OS ;
  766. tand             47416 BIF        *  SAA,SAA2,OS ;
  767. tanf             *     BIF        *      SAA2    ;
  768. tanh             47399 BIF        *  SAA,SAA2,OS ;
  769. threadid         *     BIF        *      SAA2    ;  -                      
  770. time             47400 BIF        *  SAA,SAA2,OS ;
  771. tiny             *     BIF        *      SAA2    ;
  772. translate        47403 BIF        *  SAA,SAA2,OS ;
  773. trim             *     BIF        *      SAA2    ;
  774. trunc            47405 BIF        *  SAA,SAA2,OS ;
  775. type             *     BIF        *      SAA2    ;
  776. unsigned         *     BIF        *      SAA2    ;
  777. unspec           47409 BIF        *  SAA,SAA2,OS ;
  778. valid            *     BIF        *      SAA2    ;
  779. verify           47411 BIF        *  SAA,SAA2,OS ;
  780. verifyr          *     BIF        *      SAA2    ;
  781. weekday          *     BIF        *      SAA2    ;
  782. *
  783. *---------------------------
  784. * TYPE function names 
  785. *---------------------------
  786. *
  787. bind             *     TYF        *      SAA2    ;                       
  788. first            *     TYF        *      SAA2    ;                       
  789. last             *     TYF        *      SAA2    ;                       
  790. new              *     TYF        *      SAA2    ;                       
  791. size             *     TYF        *      SAA2    ;                       
  792. *
  793. *
  794. *------------------------------
  795. *   SQL related words. 
  796. *------------------------------
  797. *
  798. *
  799. ALL              *     EXEC       *  SAA,SAA2,OS ;                            
  800. AND              *     EXEC       *  SAA,SAA2,OS ;                          
  801. ANY              *     EXEC       *  SAA,SAA2,OS ;                          
  802. ASC              *     EXEC       *  SAA,SAA2,OS ;                          
  803. BETWEEN          *     EXEC       *  SAA,SAA2,OS ;                          
  804. BY               *     EXEC       *  SAA,SAA2,OS ;                          
  805. CLOSE            *     EXEC       *  SAA,SAA2,OS ;                          
  806. COMMIT           *     EXEC       *  SAA,SAA2,OS ;                          
  807. CONTINUE         *     EXEC       *  SAA,SAA2,OS ;                          
  808. CURRENT          *     EXEC       *  SAA,SAA2,OS ;                          
  809. CURSOR           *     EXEC       *  SAA,SAA2,OS ;                          
  810. DATE             *     EXEC       *  SAA,SAA2,OS ;                          
  811. DAY              *     EXEC       *  SAA,SAA2,OS ;                          
  812. DAYS             *     EXEC       *  SAA,SAA2,OS ;                          
  813. DECLARE          *     EXEC       *  SAA,SAA2,OS ;                          
  814. DELETE           *     EXEC       *  SAA,SAA2,OS ;                          
  815. DESC             *     EXEC       *  SAA,SAA2,OS ;                          
  816. DISTINCT         *     EXEC       *  SAA,SAA2,OS ;                          
  817. EXISTS           *     EXEC       *  SAA,SAA2,OS ;                          
  818. FETCH            *     EXEC       *  SAA,SAA2,OS ;                          
  819. FOR              *     EXEC       *  SAA,SAA2,OS ;                          
  820. FOUND            *     EXEC       *  SAA,SAA2,OS ;                          
  821. FROM             *     EXEC       *  SAA,SAA2,OS ;                          
  822. GO               *     EXEC       *  SAA,SAA2,OS ;                          
  823. GOTO             *     EXEC       *  SAA,SAA2,OS ;                          
  824. GROUP            *     EXEC       *  SAA,SAA2,OS ;                          
  825. HAVING           *     EXEC       *  SAA,SAA2,OS ;                          
  826. HOUR             *     EXEC       *  SAA,SAA2,OS ;                          
  827. HOURS            *     EXEC       *  SAA,SAA2,OS ;                          
  828. IN               *     EXEC       *  SAA,SAA2,OS ;                          
  829. INCLUDE          *     EXEC       *  SAA,SAA2,OS ;                          
  830. INDICATOR        *     EXEC       *  SAA,SAA2,OS ;                          
  831. INSERT           *     EXEC       *  SAA,SAA2,OS ;                          
  832. INTO             *     EXEC       *  SAA,SAA2,OS ;                          
  833. IS               *     EXEC       *  SAA,SAA2,OS ;                          
  834. ITEM             *     EXEC       *  SAA,SAA2,OS ;                          
  835. LIKE             *     EXEC       *  SAA,SAA2,OS ;                          
  836. MICROSECOND      *     EXEC       *  SAA,SAA2,OS ;                          
  837. MICROSECONDS     *     EXEC       *  SAA,SAA2,OS ;                          
  838. MINUTE           *     EXEC       *  SAA,SAA2,OS ;                          
  839. MINUTES          *     EXEC       *  SAA,SAA2,OS ;                          
  840. MONTH            *     EXEC       *  SAA,SAA2,OS ;                          
  841. MONTHS           *     EXEC       *  SAA,SAA2,OS ;                          
  842. NOT              *     EXEC       *  SAA,SAA2,OS ;                          
  843. NULL             *     EXEC       *  SAA,SAA2,OS ;                          
  844. OF               *     EXEC       *  SAA,SAA2,OS ;                          
  845. OPEN             *     EXEC       *  SAA,SAA2,OS ;                          
  846. OR               *     EXEC       *  SAA,SAA2,OS ;                          
  847. ORDER            *     EXEC       *  SAA,SAA2,OS ;                          
  848. ROLLBACK         *     EXEC       *  SAA,SAA2,OS ;                          
  849. SECOND           *     EXEC       *  SAA,SAA2,OS ;                          
  850. SECONDS          *     EXEC       *  SAA,SAA2,OS ;                          
  851. SELECT           *     EXEC       *  SAA,SAA2,OS ;                          
  852. SET              *     EXEC       *  SAA,SAA2,OS ;                          
  853. SOME             *     EXEC       *  SAA,SAA2,OS ;                          
  854. SQLCA            *     EXEC       *  SAA,SAA2,OS ;                          
  855. SQLDA            *     EXEC       *  SAA,SAA2,OS ;                          
  856. SQLERROR         *     EXEC       *  SAA,SAA2,OS ;                          
  857. SQLID            *     EXEC       *  SAA,SAA2,OS ;                          
  858. SQLWARNING       *     EXEC       *  SAA,SAA2,OS ;                          
  859. TIME             *     EXEC       *  SAA,SAA2,OS ;                          
  860. TIMESTAMP        *     EXEC       *  SAA,SAA2,OS ;                          
  861. TIMEZONE         *     EXEC       *  SAA,SAA2,OS ;                          
  862. TO               *     EXEC       *  SAA,SAA2,OS ;                          
  863. UNION            *     EXEC       *  SAA,SAA2,OS ;                          
  864. UPDATE           *     EXEC       *  SAA,SAA2,OS ;                          
  865. USER             *     EXEC       *  SAA,SAA2,OS ;                          
  866. VALUES           *     EXEC       *  SAA,SAA2,OS ;                          
  867. WHENEVER         *     EXEC       *  SAA,SAA2,OS ;                          
  868. WHERE            *     EXEC       *  SAA,SAA2,OS ;                          
  869. YEAR             *     EXEC       *  SAA,SAA2,OS ;                          
  870. YEARS            *     EXEC       *  SAA,SAA2,OS ;                          
  871.