home *** CD-ROM | disk | FTP | other *** search
-
- {
- pasconst.i (of PCQ Pascal)
- Copyright (c) 1989 Patrick Quaid.
-
- These are the constants required for the compiler. Some of
- these lists should become enumerated types, but I didn't want to
- foul up the rampant overloading.
- }
-
-
- symtablesize = 2000; { number of id's in table }
- spellsize = 10000; { room for id names }
- literalsize = 5000; { room for character literals }
-
- linesize = 128; { vestigal, I think }
- eqsize = 127; { size of the error buffer }
-
- {
- These are for the object field of idrecords. Note that it
- turns out enum is not used. Enumerations are just constants now.
- }
-
- global = 1;
- local = 2;
- refarg = 3;
- valarg = 4;
- proc = 5;
- func = 6;
- obtype = 7;
- field = 8;
- enum = 9;
- stanproc = 10;
- stanfunc = 11;
- constant = 12;
-
-
- {
- These are for the offset fields of types, and tell what
- type of type it is. The odd naming convention is left over from
- Small-C.
- }
-
- varray = 1;
- vset = 2;
- vrecord = 3;
- vordinal = 4;
- vpointer = 5;
- venumer = 6;
- vsubrange = 7;
- vsynonym = 8;
- vfile = 9;
- vreal = 10;
-
- {
- These are the symbol numbers. Note that the first 40 or so
- correspond to the appropriate entries in the reserved array.
- }
-
- unknown1 = 0;
- and1 = 1;
- array1 = 2;
- begin1 = 3;
- by1 = 4;
- case1 = 5;
- const1 = 6;
- div1 = 7;
- do1 = 8;
- downto1 = 9;
- else1 = 10;
- end1 = 11;
- extern1 = 12;
- file1 = 13;
- for1 = 14;
- forward1 = 15;
- func1 = 16;
- goto1 = 17;
- if1 = 18;
- in1 = 19;
- label1 = 20;
- mod1 = 21;
- not1 = 22;
- of1 = 23;
- or1 = 24;
- packed1 = 25;
- private1 = 26;
- proc1 = 27;
- program1 = 28;
- record1 = 29;
- repeat1 = 30;
- return1 = 31;
- set1 = 32;
- then1 = 33;
- to1 = 34;
- type1 = 35;
- until1 = 36;
- var1 = 37;
- while1 = 38;
- with1 = 39;
-
- lastreserved = 39;
-
- {
- The following symbols represent everything but the reserved
- words. Some of these are left over from when I needed C stuff, and
- I left them in for when I re-implement it....
- }
-
- ident1 = 45;
- numeral1 = 46;
- asterisk1 = 47;
- becomes1 = 48;
- colon1 = 49;
- comma1 = 50;
- dotdot1 = 51;
- endtext1 = 52;
- equal1 = 53;
- greater1 = 54;
- leftbrack1 = 55;
- leftparent1 = 56;
- less1 = 57;
- minus1 = 58;
- newline1 = 59;
- notequal1 = 60;
- notgreater1 = 61;
- notless1 = 62;
- period1 = 63;
- plus1 = 64;
- rightbrack1 = 65;
- rightparent1 = 66;
- semicolon1 = 67;
- leftcurl1 = 68;
- rightcurl1 = 69;
- quote1 = 70;
- apostrophe1 = 71;
- carat1 = 72;
- pound1 = 73;
- incr1 = 74;
- decr1 = 75;
- shiftleft1 = 76;
- shiftright1 = 77;
- ampersand1 = 78;
- realdiv1 = 79;
- realnumeral1 = 80;
-
-