changed "source file %s.c" to "... %s.f"
[unix-history] / usr / src / old / as.vax / asscan.h
index d2eaaf5..d2adb0f 100644 (file)
@@ -1,5 +1,7 @@
-/* Copyright (c) 1980 Regents of the University of California */
-/* "@(#)asscan.h 4.3 %G%" */
+/*
+ *     Copyright (c) 1982 Regents of the University of California
+ *     @(#)asscan.h 4.9 %G%
+ */
 /*
  *     The character scanner is called to fill up one token buffer
  *
 /*
  *     The character scanner is called to fill up one token buffer
  *
@@ -10,7 +12,7 @@
  *     following tokens.
  */
 
  *     following tokens.
  */
 
-#define TOKBUFLG               BUFSIZ
+#define TOKBUFLG               4096
 #define MAXVAX                 32              
 #define SAFETY                 16
 
 #define MAXVAX                 32              
 #define SAFETY                 16
 
@@ -35,10 +37,11 @@ struct tokbufdesc{
  *     to various size things.
  */
 
  *     to various size things.
  */
 
-typedef char toktype;
+typedef int inttoktype;
+typedef char bytetoktype;
 
 typedef char *ptrall;                  /*all uses will be type cast*/
 
 typedef char *ptrall;                  /*all uses will be type cast*/
-typedef short lgtype;                  /*for storing length of strings or skiping*/
+typedef u_short lgtype;                        /*for storing length of strings or skiping*/
 /*
  *     defintions for putting various typed values
  *     into the intermediate buffers
 /*
  *     defintions for putting various typed values
  *     into the intermediate buffers
@@ -49,58 +52,35 @@ typedef short lgtype;                       /*for storing length of strings or skiping*/
 #define        puchar(ptr,val)         *ptr++  = val
 
 #define        pshort(ptr,val)         *(short *)ptr=val,      ptr += sizeof(short)
 #define        puchar(ptr,val)         *ptr++  = val
 
 #define        pshort(ptr,val)         *(short *)ptr=val,      ptr += sizeof(short)
-#define        pushort(ptr,val)        *(unsigned short *)ptr=val,     ptr += sizeof(short)
+#define        plgtype(ptr,val)        *(lgtype *)ptr=val,     ptr += sizeof(lgtype)
+#define        pushort(ptr,val)        *(u_short *)ptr=val,    ptr += sizeof(short)
 #define        pint(ptr,val)           *(int *)ptr  = val,     ptr += sizeof(int)
 #define        pint(ptr,val)           *(int *)ptr  = val,     ptr += sizeof(int)
-#define        puint(ptr,val)          *(unsigned int *)ptr=val,       ptr += sizeof(int)
+#define        puint(ptr,val)          *(u_int int *)ptr=val,  ptr += sizeof(int)
 #define        plong(ptr,val)          *(long *)ptr  = val,    ptr += sizeof(long)
 #define        plong(ptr,val)          *(long *)ptr  = val,    ptr += sizeof(long)
-#define        pulong(ptr,val)         *(unsigned long *)ptr=val,      ptr += sizeof(long)
-#define        pfloat(ptr,val)         *(float *)ptr  = val,   ptr += sizeof (float)
-#define        pdouble(ptr,val)        *(double *)ptr  = val,  ptr += sizeof (double)
+#define        pulong(ptr,val)         *(u_int long *)ptr=val, ptr += sizeof(long)
+#define        pnumber(ptr,val)        *(Bignum*)ptr=val,      ptr += sizeof(Bignum)
+#define        popcode(ptr,val)        *(struct Opcode*)ptr=val,       ptr += sizeof(struct Opcode)
+
 #define        pptr(ptr,val)           *(int *)ptr  = (val),   ptr += sizeof(ptrall)
 #define        ptoken(ptr,val)         *ptr++  = val
 #define        pptr(ptr,val)           *(int *)ptr  = (val),   ptr += sizeof(ptrall)
 #define        ptoken(ptr,val)         *ptr++  = val
-#define        pstrlg(ptr,val)         *(lgtype *)ptr  = val,  ptr += sizeof(short)
 #define        pskiplg(ptr,val)        *(lgtype *)ptr  = val,  ptr += sizeof(short)
 
 #define        gchar(val, ptr)         val = *ptr++
 #define        guchar(val, ptr)        val = *ptr++
 
 #define        gshort(val, ptr)        val = *(short *)ptr , ptr += sizeof (short)
 #define        pskiplg(ptr,val)        *(lgtype *)ptr  = val,  ptr += sizeof(short)
 
 #define        gchar(val, ptr)         val = *ptr++
 #define        guchar(val, ptr)        val = *ptr++
 
 #define        gshort(val, ptr)        val = *(short *)ptr , ptr += sizeof (short)
-#define        gushort(val, ptr)       val = *(unsigned short *)ptr , ptr += sizeof (short)
+#define        glgtype(val, ptr)       val = *(lgtype *)ptr , ptr += sizeof (lgtype)
+#define        gushort(val, ptr)       val = *(u_short *)ptr , ptr += sizeof (short)
 #define        gint(val, ptr)          val = *(int *)ptr, ptr += sizeof (int)
 #define        gint(val, ptr)          val = *(int *)ptr, ptr += sizeof (int)
-#define        guint(val, ptr)         val = *(unsigend int *)ptr, ptr += sizeof (int)
+#define        guint(val, ptr)         val = *(u_int *)ptr, ptr += sizeof (int)
 #define        glong(val, ptr)         val = *(long *)ptr, ptr += sizeof (long)
 #define        glong(val, ptr)         val = *(long *)ptr, ptr += sizeof (long)
-#define        gulong(val, ptr)        val = *(unsigned long *)ptr, ptr += sizeof (long)
-#define        gfloat(val, ptr)        val = *(float *)ptr, ptr += sizeof (float)
-#define        gdouble(val, ptr)       val = *(double *)ptr, ptr += sizeof (double)
+#define        gulong(val, ptr)        val = *(u_int *)ptr, ptr += sizeof (long)
+#define        gnumber(val, ptr)       val = *(Bignum *)ptr, ptr += sizeof(Bignum)
+#define        gopcode(val, ptr)       val = *(struct Opcode *)ptr, ptr += sizeof(struct Opcode)
+
 #define        gptr(val, ptr)          val = *(int *)ptr, ptr += sizeof (ptrall)
 #define        gtoken(val, ptr)        val = *ptr++
 #define        gptr(val, ptr)          val = *(int *)ptr, ptr += sizeof (ptrall)
 #define        gtoken(val, ptr)        val = *ptr++
-#define        gstrlg(val, ptr)        val = *(lgtype *)ptr, ptr += sizeof (short)
 #define        gskiplg(val, ptr)       val = *(lgtype *)ptr, ptr += sizeof (short)
 
 #define        gskiplg(val, ptr)       val = *(lgtype *)ptr, ptr += sizeof (short)
 
-
 extern ptrall tokptr;  /*the next token to consume, call by copy*/
 extern ptrall tokub;   /*current upper bound in the current buffer*/
 extern ptrall tokptr;  /*the next token to consume, call by copy*/
 extern ptrall tokub;   /*current upper bound in the current buffer*/
-
-/*
- *     Strings are known for their characters and for their length.
- *     We cannot use a normal zero termination byte, because strings
- *     can contain anything.
- *
- *     We have two "strings", so that an input string that is too long can be
- *     split across two string buffers, and not confuse the yacc grammar.
- *     (This is probably superflous)
- *
- *     We have a third string of nulls so that the .skip can be 
- *     handled in the same way as strings.
- */
-#define MAXSTRLG       127
-
-struct strdesc{
-       char            str_lg;
-       char            str[MAXSTRLG];
-};
-
-extern struct  strdesc         strbuf[3];
-extern struct  strdesc         *strptr;        /*points to the current string*/
-extern int                     strno;          /*the current string being filled*/
-char   *savestr();