LLscan either macro or function
authorceriel <none@none>
Fri, 24 Jun 1988 14:55:27 +0000 (14:55 +0000)
committerceriel <none@none>
Fri, 24 Jun 1988 14:55:27 +0000 (14:55 +0000)
util/LLgen/lib/incl
util/LLgen/lib/rec

index 99a1913..77dbe75 100644 (file)
@@ -10,7 +10,10 @@ extern int LLsymb;
 #define LL_SAFE(x)     /* Nothing */
 #define LL_SSCANDONE(x)        if (LLsymb != x) LLerror(x); else
 #define LL_SCANDONE(x) if (LLsymb != x) LLerror(x); else
-#define LL_NOSCANDONE(x) if ((LLsymb = LL_LEXI()) != x) LLerror(x); else
+#define LL_NOSCANDONE(x) LLscan(x)
+#ifdef LL_FASTER
+#define LLscan(x)      if ((LLsymb = LL_LEXI()) != x) LLerror(x); else
+#endif
 
 # include "Lpars.h"
 
index 91bdd19..7ad1b1f 100644 (file)
@@ -20,7 +20,9 @@ static int    LLlevel;
 extern         LLread();
 extern int     LLskip();
 extern int     LLnext();
+#ifndef LLscan
 extern         LLscan();
+#endif
 extern         LLerror();
 # ifndef LLNOFIRSTS
 extern int     LLfirst();
@@ -28,6 +30,7 @@ extern int    LLfirst();
 extern         LLnewlevel();
 extern         LLoldlevel();
 
+#ifndef LLscan
 LLscan(t) {
        /*
         * Check if the next symbol is equal to the parameter
@@ -40,6 +43,7 @@ LLscan(t) {
         */
        LLerror(t);
 }
+#endif
 
 LLread() {
        for (;;) {