summaryrefslogtreecommitdiff
path: root/Build
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-12-04 19:14:36 +0000
committerKarl Berry <karl@freefriends.org>2020-12-04 19:14:36 +0000
commitd1cdc6d8b4b030b069aab8c3f79739338b46f88f (patch)
tree70606f4d80ffa4bc0f98470c2498a86b7bacab83 /Build
parent76666be3e94f5e20982c517b83b098906f4a9774 (diff)
increase YY_BUF_SIZE to 110000 to avoid yannis.test (xyarabic.opl) buffer overflow
git-svn-id: svn://tug.org/texlive/trunk@57064 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build')
-rw-r--r--Build/source/texk/web2c/omegafonts/ChangeLog6
-rw-r--r--Build/source/texk/web2c/omegafonts/pl-lexer.c778
-rw-r--r--Build/source/texk/web2c/omegafonts/pl-lexer.l15
3 files changed, 426 insertions, 373 deletions
diff --git a/Build/source/texk/web2c/omegafonts/ChangeLog b/Build/source/texk/web2c/omegafonts/ChangeLog
index 15079c0fc34..c0c111637fb 100644
--- a/Build/source/texk/web2c/omegafonts/ChangeLog
+++ b/Build/source/texk/web2c/omegafonts/ChangeLog
@@ -1,3 +1,9 @@
+2020-12-04 Karl Berry <karl@freefriends.org>
+
+ * pl-lexer.l (YY_BUF_SIZE): #define 110000, for the same
+ reason as the previous change. Two separate buffer overflows,
+ it seems.
+
2020-11-21 Karl Berry <karl@tug.org>
* pl-lexer.l (MAX_PTR): increase to 100000; the tests/xyarabic.opl
diff --git a/Build/source/texk/web2c/omegafonts/pl-lexer.c b/Build/source/texk/web2c/omegafonts/pl-lexer.c
index 3799538ec4c..f22924dbbf3 100644
--- a/Build/source/texk/web2c/omegafonts/pl-lexer.c
+++ b/Build/source/texk/web2c/omegafonts/pl-lexer.c
@@ -1,5 +1,5 @@
-#line 3 "../../../../texk/web2c/omegafonts/pl-lexer.c"
+#line 3 "pl-lexer.c"
#define YY_INT_ALIGNED short int
@@ -403,95 +403,128 @@ struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
-static yyconst flex_int16_t yy_accept[800] =
+static yyconst flex_int16_t yy_acclist[265] =
{ 0,
- 0, 0, 206, 204, 1, 2, 3, 4, 204, 204,
- 204, 204, 204, 204, 204, 204, 204, 204, 204, 204,
- 204, 204, 204, 204, 204, 204, 204, 204, 204, 204,
- 204, 1, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 9, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 42, 0, 8, 8,
-
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 179, 0, 0, 0, 7, 0, 0, 31, 0, 44,
- 102, 41, 0, 0, 0, 0, 0, 0, 0, 5,
- 0, 0, 0, 107, 0, 0, 0, 9, 9, 43,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 40, 0, 0, 0, 0, 0,
- 46, 0, 0, 0, 0, 0, 0, 0, 0, 171,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 23, 0, 178, 0,
-
- 0, 151, 0, 0, 0, 45, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 77, 78, 79, 0, 0,
- 0, 0, 106, 75, 9, 150, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 33, 0,
- 0, 0, 32, 0, 85, 86, 0, 82, 83, 84,
- 0, 0, 181, 0, 0, 0, 0, 47, 49, 0,
- 0, 0, 0, 0, 172, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 61, 67, 55,
- 60, 66, 54, 63, 69, 57, 62, 68, 56, 59,
-
- 65, 53, 58, 64, 52, 0, 177, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 30, 48, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 188, 187, 189, 0, 0, 186, 0, 0, 0, 0,
- 0, 70, 71, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 50, 0, 0, 0, 0, 0, 0, 38,
- 0, 0, 37, 39, 0, 0, 0, 0, 0, 36,
- 0, 175, 0, 0, 0, 0, 0, 0, 89, 90,
-
- 80, 81, 0, 0, 11, 0, 100, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 147, 0, 0,
- 0, 0, 0, 159, 24, 146, 0, 0, 0, 0,
- 0, 0, 110, 148, 0, 0, 0, 182, 0, 0,
- 0, 0, 0, 0, 0, 158, 157, 156, 0, 0,
- 0, 0, 0, 0, 0, 0, 73, 0, 0, 0,
- 0, 0, 0, 12, 0, 0, 51, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 16, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 98, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 149, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 104, 105, 0, 15, 72, 88, 87, 0,
- 35, 74, 0, 183, 0, 0, 0, 0, 0, 0,
- 170, 0, 0, 0, 0, 169, 20, 184, 0, 173,
- 174, 0, 0, 0, 0, 14, 0, 0, 0, 0,
- 0, 145, 0, 0, 13, 0, 144, 0, 164, 163,
- 0, 0, 162, 0, 27, 0, 111, 109, 0, 0,
- 0, 0, 0, 112, 0, 0, 0, 0, 0, 0,
-
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 185, 0, 0, 115, 0, 28, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 26, 0, 0,
- 0, 0, 101, 0, 0, 0, 0, 153, 0, 0,
- 152, 114, 108, 154, 0, 0, 0, 29, 0, 0,
- 0, 0, 0, 0, 0, 0, 201, 0, 0, 0,
- 0, 0, 113, 91, 0, 0, 166, 165, 167, 0,
- 176, 0, 0, 21, 0, 76, 0, 120, 122, 119,
- 117, 123, 121, 116, 118, 141, 140, 142, 0, 161,
- 0, 0, 34, 0, 0, 0, 0, 155, 0, 0,
-
- 194, 0, 0, 0, 199, 202, 197, 103, 0, 17,
- 0, 0, 168, 0, 0, 22, 0, 143, 160, 0,
- 136, 138, 135, 133, 139, 137, 132, 134, 0, 192,
- 195, 190, 0, 0, 0, 0, 0, 25, 10, 0,
- 99, 0, 0, 0, 0, 203, 0, 0, 0, 93,
- 94, 95, 96, 97, 0, 0, 196, 0, 0, 200,
- 198, 0, 0, 0, 193, 191, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 128, 130, 127,
- 125, 131, 129, 124, 126, 0, 0, 0, 0, 0,
- 0, 0, 92, 0, 0, 0, 18, 19, 0
+ 206, 204, 205, 1, 204, 205, 2, 205, 3, 204,
+ 205, 4, 204, 205, 204, 205, 204, 205, 204, 205,
+ 204, 205, 204, 205, 204, 205, 204, 205, 204, 205,
+ 204, 205, 204, 205, 204, 205, 204, 205, 204, 205,
+ 204, 205, 204, 205, 204, 205, 204, 205, 204, 205,
+ 204, 205, 204, 205, 204, 205, 204, 205, 204, 205,
+ 1, 180, 9, 42, 8, 8, 6, 179, 7, 31,
+ 44, 102, 41, 5, 107, 9, 9, 43, 40, 46,
+ 171, 23, 178, 151, 45, 77, 78, 79, 106, 75,
+ 9, 150, 33, 32, 85, 86, 82, 83, 84, 181,
+
+ 47, 49, 172, 61, 67, 55, 60, 66, 54, 63,
+ 69, 57, 62, 68, 56, 59, 65, 53, 58, 64,
+ 52, 177, 30, 48, 188, 187, 189, 186, 70, 71,
+ 50, 38, 37, 39, 36, 175, 89, 90, 80, 81,
+ 11, 100, 147, 159, 24, 146, 110, 148, 182, 158,
+ 157, 156, 73, 12, 51, 16, 98, 149, 104, 105,
+ 15, 72, 88, 87, 35, 74, 183, 170, 169, 20,
+ 184, 173, 174, 14, 145, 13, 144, 164, 163, 162,
+ 27, 111, 109, 112, 185, 115, 28, 26, 101, 153,
+ 152, 114, 108, 154, 29, 201, 113, 91, 166, 165,
+
+ 167, 176, 21, 76, 120, 122, 119, 117, 123, 121,
+ 116, 118, 141, 140, 142, 161, 34, 155, 194, 199,
+ 202, 197, 103, 17, 168, 22, 143, 160, 136, 138,
+ 135, 133, 139, 137, 132, 134, 192, 195, 190, 25,
+ 10, 99, 203, 93, 94, 95, 96, 97, 196, 200,
+ 198, 193, 191, 128, 130, 127, 125, 131, 129, 124,
+ 126, 92, 18, 19
+ } ;
+
+static yyconst flex_int16_t yy_accept[801] =
+ { 0,
+ 1, 1, 1, 2, 4, 7, 9, 12, 15, 17,
+ 19, 21, 23, 25, 27, 29, 31, 33, 35, 37,
+ 39, 41, 43, 45, 47, 49, 51, 53, 55, 57,
+ 59, 61, 62, 62, 62, 62, 62, 62, 62, 62,
+ 62, 62, 62, 62, 62, 62, 62, 62, 62, 62,
+ 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
+ 63, 63, 63, 63, 63, 63, 63, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 65, 65, 66,
+
+ 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+ 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
+ 68, 69, 69, 69, 69, 70, 70, 70, 71, 71,
+ 72, 73, 74, 74, 74, 74, 74, 74, 74, 74,
+ 75, 75, 75, 75, 76, 76, 76, 76, 77, 78,
+ 79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
+ 79, 79, 79, 79, 79, 80, 80, 80, 80, 80,
+ 80, 81, 81, 81, 81, 81, 81, 81, 81, 81,
+ 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+ 82, 82, 82, 82, 82, 82, 82, 83, 83, 84,
+
+ 84, 84, 85, 85, 85, 85, 86, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 87, 88, 89, 89,
+ 89, 89, 89, 90, 91, 92, 93, 93, 93, 93,
+ 93, 93, 93, 93, 93, 93, 93, 93, 93, 94,
+ 94, 94, 94, 95, 95, 96, 97, 97, 98, 99,
+ 100, 100, 100, 101, 101, 101, 101, 101, 102, 103,
+ 103, 103, 103, 103, 103, 104, 104, 104, 104, 104,
+ 104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
+ 104, 104, 104, 104, 104, 104, 104, 104, 105, 106,
+ 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
+
+ 117, 118, 119, 120, 121, 122, 122, 123, 123, 123,
+ 123, 123, 123, 123, 123, 123, 123, 123, 123, 123,
+ 123, 123, 123, 123, 123, 123, 124, 125, 125, 125,
+ 125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
+ 125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
+ 125, 126, 127, 128, 128, 128, 129, 129, 129, 129,
+ 129, 129, 130, 131, 131, 131, 131, 131, 131, 131,
+ 131, 131, 131, 132, 132, 132, 132, 132, 132, 132,
+ 133, 133, 133, 134, 135, 135, 135, 135, 135, 135,
+ 136, 136, 137, 137, 137, 137, 137, 137, 137, 138,
+
+ 139, 140, 141, 141, 141, 142, 142, 143, 143, 143,
+ 143, 143, 143, 143, 143, 143, 143, 143, 144, 144,
+ 144, 144, 144, 144, 145, 146, 147, 147, 147, 147,
+ 147, 147, 147, 148, 149, 149, 149, 149, 150, 150,
+ 150, 150, 150, 150, 150, 150, 151, 152, 153, 153,
+ 153, 153, 153, 153, 153, 153, 153, 154, 154, 154,
+ 154, 154, 154, 154, 155, 155, 155, 156, 156, 156,
+ 156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
+ 156, 156, 156, 156, 157, 157, 157, 157, 157, 157,
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
+
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
+ 157, 158, 158, 158, 158, 158, 158, 158, 158, 158,
+ 158, 158, 159, 159, 159, 159, 159, 159, 159, 159,
+ 159, 159, 159, 160, 161, 161, 162, 163, 164, 165,
+ 165, 166, 167, 167, 168, 168, 168, 168, 168, 168,
+ 168, 169, 169, 169, 169, 169, 170, 171, 172, 172,
+ 173, 174, 174, 174, 174, 174, 175, 175, 175, 175,
+ 175, 175, 176, 176, 176, 177, 177, 178, 178, 179,
+ 180, 180, 180, 181, 181, 182, 182, 183, 184, 184,
+ 184, 184, 184, 184, 185, 185, 185, 185, 185, 185,
+
+ 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
+ 185, 186, 186, 186, 187, 187, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 189, 189,
+ 189, 189, 189, 190, 190, 190, 190, 190, 191, 191,
+ 191, 192, 193, 194, 195, 195, 195, 195, 196, 196,
+ 196, 196, 196, 196, 196, 196, 196, 197, 197, 197,
+ 197, 197, 197, 198, 199, 199, 199, 200, 201, 202,
+ 202, 203, 203, 203, 204, 204, 205, 205, 206, 207,
+ 208, 209, 210, 211, 212, 213, 214, 215, 216, 216,
+ 217, 217, 217, 218, 218, 218, 218, 218, 219, 219,
+
+ 219, 220, 220, 220, 220, 221, 222, 223, 224, 224,
+ 225, 225, 225, 226, 226, 226, 227, 227, 228, 229,
+ 229, 230, 231, 232, 233, 234, 235, 236, 237, 237,
+ 238, 239, 240, 240, 240, 240, 240, 240, 241, 242,
+ 242, 243, 243, 243, 243, 243, 244, 244, 244, 244,
+ 245, 246, 247, 248, 249, 249, 249, 250, 250, 250,
+ 251, 252, 252, 252, 252, 253, 254, 254, 254, 254,
+ 254, 254, 254, 254, 254, 254, 254, 254, 255, 256,
+ 257, 258, 259, 260, 261, 262, 262, 262, 262, 262,
+ 262, 262, 262, 263, 263, 263, 263, 264, 265, 265
} ;
@@ -939,16 +972,20 @@ static yyconst flex_int32_t yy_rule_can_match_eol[206] =
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, };
-static yy_state_type yy_last_accepting_state;
-static char *yy_last_accepting_cpos;
-
extern int yy_flex_debug;
int yy_flex_debug = 0;
-/* The intent behind this definition is that it'll catch
- * any uses of REJECT which flex missed.
- */
-#define REJECT reject_used_but_not_detected
+static yy_state_type *yy_state_buf=0, *yy_state_ptr=0;
+static char *yy_full_match;
+static int yy_lp;
+#define REJECT \
+{ \
+*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ \
+yy_cp = (yy_full_match); /* restore poss. backed-over text */ \
+++(yy_lp); \
+goto find_rule; \
+}
+
#define yymore() yymore_used_but_not_detected
#define YY_MORE_ADJ 0
#define YY_RESTORE_YY_MORE_OFFSET
@@ -959,7 +996,7 @@ int yy_flex_debug = 0;
char yytext[YYLMAX];
char *yytext_ptr;
#line 1 "../../../../texk/web2c/omegafonts/pl-lexer.l"
-#line 4 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 2 "../../../../texk/web2c/omegafonts/pl-lexer.l"
/* pl-lexer.l: Lexical analysis of property list files.
This file is part of Omega,
@@ -984,6 +1021,19 @@ along with Omega; if not, write to the Free Software Foundation, Inc.,
59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*/
+/* The xyarabic.opl test has an opl comment larger than 16k, which is
+ the default buffer size for flex defined in its preamble. This
+ results in an error like:
+input buffer overflow, can't enlarge buffer because scanner uses REJECT
+ So we need to redefine YY_BUF_SIZE, which we do here. Unfortunately
+ it is not perfect, since the flex preamble code uses its own
+ YY_BUF_SIZE to #define YY_STATE_BUF_SIZE before our override takes
+ effect. Fortunately this is not causing an error. Apparently the
+ only way to truly override it would be on the command line, and that
+ seems like too much trouble when this works in practice. */
+#undef YY_BUF_SIZE
+#define YY_BUF_SIZE 110000
+
#include <kpathsea/lib.h>
#include <kpathsea/c-memstr.h>
#include "parser.h"
@@ -1018,7 +1068,7 @@ static void scan_hex_string(void);
/* For Solaris's lex, to increase tables sizes --RP */
/* Space before number keeps ancient flex happy. */
-#line 1022 "../../../../texk/web2c/omegafonts/pl-lexer.c"
+#line 1072 "pl-lexer.c"
#define INITIAL 0
@@ -1217,6 +1267,12 @@ YY_DECL
YY_USER_INIT;
#endif
+ /* Create the reject buffer large enough to save one state per allowed character. */
+ if ( ! (yy_state_buf) )
+ (yy_state_buf) = (yy_state_type *)yyalloc(YY_STATE_BUF_SIZE );
+ if ( ! (yy_state_buf) )
+ YY_FATAL_ERROR( "out of dynamic memory in yylex()" );
+
if ( ! (yy_start) )
(yy_start) = 1; /* first start state */
@@ -1236,10 +1292,10 @@ YY_DECL
}
{
-#line 75 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 86 "../../../../texk/web2c/omegafonts/pl-lexer.l"
-#line 1243 "../../../../texk/web2c/omegafonts/pl-lexer.c"
+#line 1299 "pl-lexer.c"
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
{
@@ -1254,15 +1310,14 @@ YY_DECL
yy_bp = yy_cp;
yy_current_state = (yy_start);
+
+ (yy_state_ptr) = (yy_state_buf);
+ *(yy_state_ptr)++ = yy_current_state;
+
yy_match:
do
{
YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
- if ( yy_accept[yy_current_state] )
- {
- (yy_last_accepting_state) = yy_current_state;
- (yy_last_accepting_cpos) = yy_cp;
- }
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
@@ -1270,14 +1325,29 @@ yy_match:
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
+ *(yy_state_ptr)++ = yy_current_state;
++yy_cp;
}
- while ( yy_current_state != 799 );
- yy_cp = (yy_last_accepting_cpos);
- yy_current_state = (yy_last_accepting_state);
+ while ( yy_base[yy_current_state] != 849 );
yy_find_action:
- yy_act = yy_accept[yy_current_state];
+ yy_current_state = *--(yy_state_ptr);
+ (yy_lp) = yy_accept[yy_current_state];
+find_rule: /* we branch to this label when backing up */
+ for ( ; ; ) /* until we find what rule we matched */
+ {
+ if ( (yy_lp) && (yy_lp) < yy_accept[yy_current_state + 1] )
+ {
+ yy_act = yy_acclist[(yy_lp)];
+ {
+ (yy_full_match) = yy_cp;
+ break;
+ }
+ }
+ --yy_cp;
+ yy_current_state = *--(yy_state_ptr);
+ (yy_lp) = yy_accept[yy_current_state];
+ }
YY_DO_BEFORE_ACTION;
@@ -1295,1052 +1365,1045 @@ do_action: /* This label is used only to access EOF actions. */
switch ( yy_act )
{ /* beginning of action switch */
- case 0: /* must back up */
- /* undo the effects of YY_DO_BEFORE_ACTION */
- *yy_cp = (yy_hold_char);
- yy_cp = (yy_last_accepting_cpos);
- yy_current_state = (yy_last_accepting_state);
- goto yy_find_action;
-
case 1:
YY_RULE_SETUP
-#line 77 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 88 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{}
YY_BREAK
case 2:
/* rule 2 can match eol */
YY_RULE_SETUP
-#line 78 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 89 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{line_number++; }
YY_BREAK
case 3:
YY_RULE_SETUP
-#line 80 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 91 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(LEFT);
YY_BREAK
case 4:
YY_RULE_SETUP
-#line 81 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 92 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(RIGHT);
YY_BREAK
case 5:
YY_RULE_SETUP
-#line 83 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 94 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{scan_int(8); return(NUMBER); }
YY_BREAK
case 6:
YY_RULE_SETUP
-#line 84 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 95 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{scan_int(10); return(NUMBER); }
YY_BREAK
case 7:
YY_RULE_SETUP
-#line 85 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 96 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{scan_int(16); return(NUMBER); }
YY_BREAK
case 8:
YY_RULE_SETUP
-#line 86 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 97 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{scan_char(); return(NUMBER); }
YY_BREAK
case 9:
YY_RULE_SETUP
-#line 87 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 98 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{scan_fix(); return(FIX); }
YY_BREAK
case 10:
YY_RULE_SETUP
-#line 89 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 100 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{scan_string("CODINGSCHEME", KEEP_CONVERT, LEN_CODING_SCHEME);
return(CODINGSCHEME); }
YY_BREAK
case 11:
YY_RULE_SETUP
-#line 91 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 102 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{scan_string("FAMILY", KEEP_CONVERT, LEN_FAMILY);
return(FAMILY); }
YY_BREAK
case 12:
YY_RULE_SETUP
-#line 93 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 104 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{scan_string("VTITLE", KEEP_ALL, LEN_VTITLE);
return(VTITLE); }
YY_BREAK
case 13:
YY_RULE_SETUP
-#line 95 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 106 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{scan_string("FONTNAME", KEEP_ALL, LEN_FONT_NAME);
return(FONTNAME); }
YY_BREAK
case 14:
YY_RULE_SETUP
-#line 97 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 108 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{scan_string("FONTAREA", KEEP_ALL, LEN_FONT_AREA);
return(FONTAREA); }
YY_BREAK
case 15:
YY_RULE_SETUP
-#line 99 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 110 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{scan_string("SPECIAL", KEEP_ALL, 0);
return(SPECIAL); }
YY_BREAK
case 16:
YY_RULE_SETUP
-#line 101 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 112 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{scan_string("COMMENT", KEEP_NONE, 0);
return(COMMENT); }
YY_BREAK
case 17:
YY_RULE_SETUP
-#line 104 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 115 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{scan_hex_string(); return(SPECIALHEX); }
YY_BREAK
case 18:
YY_RULE_SETUP
-#line 107 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 118 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint=1; return(SEVENBITSAFEFLAG); }
YY_BREAK
case 19:
YY_RULE_SETUP
-#line 108 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 119 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint=0; return(SEVENBITSAFEFLAG); }
YY_BREAK
case 20:
YY_RULE_SETUP
-#line 110 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 121 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CHECKSUM);
YY_BREAK
case 21:
YY_RULE_SETUP
-#line 111 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 122 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(DESIGNSIZE);
YY_BREAK
case 22:
YY_RULE_SETUP
-#line 112 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 123 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(DESIGNUNITS);
YY_BREAK
case 23:
YY_RULE_SETUP
-#line 113 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 124 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(FACE);
YY_BREAK
case 24:
YY_RULE_SETUP
-#line 114 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 125 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(HEADER);
YY_BREAK
case 25:
YY_RULE_SETUP
-#line 115 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 126 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(BOUNDARYCHAR);
YY_BREAK
case 26:
YY_RULE_SETUP
-#line 116 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 127 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(FONTDIMEN);
YY_BREAK
case 27:
YY_RULE_SETUP
-#line 117 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 128 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(LIGTABLE);
YY_BREAK
case 28:
YY_RULE_SETUP
-#line 118 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 129 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CHARACTER);
YY_BREAK
case 29:
YY_RULE_SETUP
-#line 120 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 131 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(PARAMETER);
YY_BREAK
case 30:
YY_RULE_SETUP
-#line 121 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 132 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(LABEL);
YY_BREAK
case 31:
YY_RULE_SETUP
-#line 122 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 133 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(KRN);
YY_BREAK
case 32:
YY_RULE_SETUP
-#line 123 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 134 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(STOP);
YY_BREAK
case 33:
YY_RULE_SETUP
-#line 124 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 135 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(SKIP);
YY_BREAK
case 34:
YY_RULE_SETUP
-#line 125 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 136 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(NEXTLARGER);
YY_BREAK
case 35:
YY_RULE_SETUP
-#line 126 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 137 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(VARCHAR);
YY_BREAK
case 36:
YY_RULE_SETUP
-#line 128 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 139 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_WD; return(CHARMEASURE); }
YY_BREAK
case 37:
YY_RULE_SETUP
-#line 129 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 140 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_HT; return(CHARMEASURE); }
YY_BREAK
case 38:
YY_RULE_SETUP
-#line 130 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 141 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_DP; return(CHARMEASURE); }
YY_BREAK
case 39:
YY_RULE_SETUP
-#line 131 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 142 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_IC; return(CHARMEASURE); }
YY_BREAK
case 40:
YY_RULE_SETUP
-#line 133 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 144 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = E_TOP; return(EXTEN); }
YY_BREAK
case 41:
YY_RULE_SETUP
-#line 134 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 145 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = E_MID; return(EXTEN); }
YY_BREAK
case 42:
YY_RULE_SETUP
-#line 135 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 146 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = E_BOT; return(EXTEN); }
YY_BREAK
case 43:
YY_RULE_SETUP
-#line 136 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 147 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = E_REP; return(EXTEN); }
YY_BREAK
case 44:
YY_RULE_SETUP
-#line 138 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 149 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = L_0; return(LIG); }
YY_BREAK
case 45:
YY_RULE_SETUP
-#line 139 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 150 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = L_B; return(LIG); }
YY_BREAK
case 46:
YY_RULE_SETUP
-#line 140 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 151 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = L_A; return(LIG); }
YY_BREAK
case 47:
YY_RULE_SETUP
-#line 141 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 152 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = L_AB; return(LIG); }
YY_BREAK
case 48:
YY_RULE_SETUP
-#line 142 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 153 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = L_Bx; return(LIG); }
YY_BREAK
case 49:
YY_RULE_SETUP
-#line 143 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 154 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = L_Ax; return(LIG); }
YY_BREAK
case 50:
YY_RULE_SETUP
-#line 144 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 155 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = L_ABx; return(LIG); }
YY_BREAK
case 51:
YY_RULE_SETUP
-#line 145 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 156 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = L_ABxx; return(LIG); }
YY_BREAK
case 52:
YY_RULE_SETUP
-#line 147 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 158 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_MRR; return(NUMBER); }
YY_BREAK
case 53:
YY_RULE_SETUP
-#line 148 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 159 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_MIR; return(NUMBER); }
YY_BREAK
case 54:
YY_RULE_SETUP
-#line 149 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 160 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_BRR; return(NUMBER); }
YY_BREAK
case 55:
YY_RULE_SETUP
-#line 150 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 161 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_BIR; return(NUMBER); }
YY_BREAK
case 56:
YY_RULE_SETUP
-#line 151 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 162 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_LRR; return(NUMBER); }
YY_BREAK
case 57:
YY_RULE_SETUP
-#line 152 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 163 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_LIR; return(NUMBER); }
YY_BREAK
case 58:
YY_RULE_SETUP
-#line 153 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 164 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_MRC; return(NUMBER); }
YY_BREAK
case 59:
YY_RULE_SETUP
-#line 154 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 165 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_MIC; return(NUMBER); }
YY_BREAK
case 60:
YY_RULE_SETUP
-#line 155 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 166 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_BRC; return(NUMBER); }
YY_BREAK
case 61:
YY_RULE_SETUP
-#line 156 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 167 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_BIC; return(NUMBER); }
YY_BREAK
case 62:
YY_RULE_SETUP
-#line 157 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 168 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_LRC; return(NUMBER); }
YY_BREAK
case 63:
YY_RULE_SETUP
-#line 158 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 169 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_LIC; return(NUMBER); }
YY_BREAK
case 64:
YY_RULE_SETUP
-#line 159 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 170 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_MRE; return(NUMBER); }
YY_BREAK
case 65:
YY_RULE_SETUP
-#line 160 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 171 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_MIE; return(NUMBER); }
YY_BREAK
case 66:
YY_RULE_SETUP
-#line 161 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 172 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_BRE; return(NUMBER); }
YY_BREAK
case 67:
YY_RULE_SETUP
-#line 162 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 173 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_BIE; return(NUMBER); }
YY_BREAK
case 68:
YY_RULE_SETUP
-#line 163 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 174 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_LRE; return(NUMBER); }
YY_BREAK
case 69:
YY_RULE_SETUP
-#line 164 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 175 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = F_LIE; return(NUMBER); }
YY_BREAK
case 70:
YY_RULE_SETUP
-#line 166 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 177 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_SLANT; return(NAMEDPARAMETER); }
YY_BREAK
case 71:
YY_RULE_SETUP
-#line 167 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 178 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_SPACE; return(NAMEDPARAMETER); }
YY_BREAK
case 72:
YY_RULE_SETUP
-#line 168 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 179 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_STRETCH; return(NAMEDPARAMETER); }
YY_BREAK
case 73:
YY_RULE_SETUP
-#line 169 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 180 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_SHRINK; return(NAMEDPARAMETER); }
YY_BREAK
case 74:
YY_RULE_SETUP
-#line 170 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 181 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_XHEIGHT; return(NAMEDPARAMETER); }
YY_BREAK
case 75:
YY_RULE_SETUP
-#line 171 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 182 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_QUAD; return(NAMEDPARAMETER); }
YY_BREAK
case 76:
YY_RULE_SETUP
-#line 172 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 183 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_EXTRASPACE; return(NAMEDPARAMETER); }
YY_BREAK
case 77:
YY_RULE_SETUP
-#line 173 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 184 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_NUM1; return(NAMEDPARAMETER); }
YY_BREAK
case 78:
YY_RULE_SETUP
-#line 174 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 185 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_NUM2; return(NAMEDPARAMETER); }
YY_BREAK
case 79:
YY_RULE_SETUP
-#line 175 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 186 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_NUM3; return(NAMEDPARAMETER); }
YY_BREAK
case 80:
YY_RULE_SETUP
-#line 176 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 187 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_DENOM1; return(NAMEDPARAMETER); }
YY_BREAK
case 81:
YY_RULE_SETUP
-#line 177 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 188 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_DENOM2; return(NAMEDPARAMETER); }
YY_BREAK
case 82:
YY_RULE_SETUP
-#line 178 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 189 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_SUP1; return(NAMEDPARAMETER); }
YY_BREAK
case 83:
YY_RULE_SETUP
-#line 179 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 190 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_SUP2; return(NAMEDPARAMETER); }
YY_BREAK
case 84:
YY_RULE_SETUP
-#line 180 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 191 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_SUP3; return(NAMEDPARAMETER); }
YY_BREAK
case 85:
YY_RULE_SETUP
-#line 181 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 192 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_SUB1; return(NAMEDPARAMETER); }
YY_BREAK
case 86:
YY_RULE_SETUP
-#line 182 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 193 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_SUB2; return(NAMEDPARAMETER); }
YY_BREAK
case 87:
YY_RULE_SETUP
-#line 183 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 194 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_SUPDROP; return(NAMEDPARAMETER); }
YY_BREAK
case 88:
YY_RULE_SETUP
-#line 184 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 195 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_SUBDROP; return(NAMEDPARAMETER); }
YY_BREAK
case 89:
YY_RULE_SETUP
-#line 185 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 196 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_DELIM1; return(NAMEDPARAMETER); }
YY_BREAK
case 90:
YY_RULE_SETUP
-#line 186 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 197 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_DELIM2; return(NAMEDPARAMETER); }
YY_BREAK
case 91:
YY_RULE_SETUP
-#line 187 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 198 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_AXISHEIGHT; return(NAMEDPARAMETER); }
YY_BREAK
case 92:
YY_RULE_SETUP
-#line 189 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 200 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_DEFAULTRULETHICKNESS;
return(NAMEDPARAMETER); }
YY_BREAK
case 93:
YY_RULE_SETUP
-#line 191 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 202 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_BIGOPSPACING1; return(NAMEDPARAMETER); }
YY_BREAK
case 94:
YY_RULE_SETUP
-#line 192 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 203 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_BIGOPSPACING2; return(NAMEDPARAMETER); }
YY_BREAK
case 95:
YY_RULE_SETUP
-#line 193 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 204 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_BIGOPSPACING3; return(NAMEDPARAMETER); }
YY_BREAK
case 96:
YY_RULE_SETUP
-#line 194 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 205 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_BIGOPSPACING4; return(NAMEDPARAMETER); }
YY_BREAK
case 97:
YY_RULE_SETUP
-#line 195 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 206 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = P_BIGOPSPACING5; return(NAMEDPARAMETER); }
YY_BREAK
case 98:
YY_RULE_SETUP
-#line 197 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 208 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{return(MAPFONT); }
YY_BREAK
case 99:
YY_RULE_SETUP
-#line 198 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 209 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{return(FONTCHECKSUM); }
YY_BREAK
case 100:
YY_RULE_SETUP
-#line 199 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 210 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{return(FONTAT); }
YY_BREAK
case 101:
YY_RULE_SETUP
-#line 200 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 211 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{return(FONTDSIZE); }
YY_BREAK
case 102:
YY_RULE_SETUP
-#line 201 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 212 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{return(MAP); }
YY_BREAK
case 103:
YY_RULE_SETUP
-#line 202 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 213 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{return(SELECTFONT); }
YY_BREAK
case 104:
YY_RULE_SETUP
-#line 203 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 214 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{return(SETCHAR); }
YY_BREAK
case 105:
YY_RULE_SETUP
-#line 204 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 215 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{return(SETRULE); }
YY_BREAK
case 106:
YY_RULE_SETUP
-#line 205 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 216 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{return(PUSH); }
YY_BREAK
case 107:
YY_RULE_SETUP
-#line 206 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 217 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{return(POP); }
YY_BREAK
case 108:
YY_RULE_SETUP
-#line 208 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 219 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = M_RIGHT; return(MOVE); }
YY_BREAK
case 109:
YY_RULE_SETUP
-#line 209 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 220 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = M_LEFT; return(MOVE); }
YY_BREAK
case 110:
YY_RULE_SETUP
-#line 210 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 221 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = M_UP; return(MOVE); }
YY_BREAK
case 111:
YY_RULE_SETUP
-#line 211 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 222 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = M_DOWN; return(MOVE); }
YY_BREAK
case 112:
YY_RULE_SETUP
-#line 213 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 224 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(OFMLEVEL);
YY_BREAK
case 113:
YY_RULE_SETUP
-#line 214 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 225 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = ACC_TOP; return(ACCENT); }
YY_BREAK
case 114:
YY_RULE_SETUP
-#line 215 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 226 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = ACC_MID; return(ACCENT); }
YY_BREAK
case 115:
YY_RULE_SETUP
-#line 216 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 227 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = ACC_BOT; return(ACCENT); }
YY_BREAK
case 116:
YY_RULE_SETUP
-#line 218 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 229 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_ORD+DIR_TL; return(FONTDIR);}
YY_BREAK
case 117:
YY_RULE_SETUP
-#line 219 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 230 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_ORD+DIR_LT; return(FONTDIR);}
YY_BREAK
case 118:
YY_RULE_SETUP
-#line 220 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 231 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_ORD+DIR_TR; return(FONTDIR);}
YY_BREAK
case 119:
YY_RULE_SETUP
-#line 221 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 232 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_ORD+DIR_LB; return(FONTDIR);}
YY_BREAK
case 120:
YY_RULE_SETUP
-#line 222 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 233 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_ORD+DIR_BL; return(FONTDIR);}
YY_BREAK
case 121:
YY_RULE_SETUP
-#line 223 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 234 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_ORD+DIR_RT; return(FONTDIR);}
YY_BREAK
case 122:
YY_RULE_SETUP
-#line 224 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 235 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_ORD+DIR_BR; return(FONTDIR);}
YY_BREAK
case 123:
YY_RULE_SETUP
-#line 225 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 236 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_ORD+DIR_RB; return(FONTDIR);}
YY_BREAK
case 124:
YY_RULE_SETUP
-#line 226 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 237 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_TL; return(FONTDIR);}
YY_BREAK
case 125:
YY_RULE_SETUP
-#line 227 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 238 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_LT; return(FONTDIR);}
YY_BREAK
case 126:
YY_RULE_SETUP
-#line 228 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 239 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_TR; return(FONTDIR);}
YY_BREAK
case 127:
YY_RULE_SETUP
-#line 229 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 240 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_LB; return(FONTDIR);}
YY_BREAK
case 128:
YY_RULE_SETUP
-#line 230 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 241 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_BL; return(FONTDIR);}
YY_BREAK
case 129:
YY_RULE_SETUP
-#line 231 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 242 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_RT; return(FONTDIR);}
YY_BREAK
case 130:
YY_RULE_SETUP
-#line 232 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 243 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_BR; return(FONTDIR);}
YY_BREAK
case 131:
YY_RULE_SETUP
-#line 233 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 244 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_RB; return(FONTDIR);}
YY_BREAK
/* for compatibility with the omegaware versions */
case 132:
YY_RULE_SETUP
-#line 235 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 246 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_TL; return(FONTDIR);}
YY_BREAK
case 133:
YY_RULE_SETUP
-#line 236 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 247 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_LT; return(FONTDIR);}
YY_BREAK
case 134:
YY_RULE_SETUP
-#line 237 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 248 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_TR; return(FONTDIR);}
YY_BREAK
case 135:
YY_RULE_SETUP
-#line 238 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 249 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_LB; return(FONTDIR);}
YY_BREAK
case 136:
YY_RULE_SETUP
-#line 239 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 250 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_BL; return(FONTDIR);}
YY_BREAK
case 137:
YY_RULE_SETUP
-#line 240 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 251 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_RT; return(FONTDIR);}
YY_BREAK
case 138:
YY_RULE_SETUP
-#line 241 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 252 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_BR; return(FONTDIR);}
YY_BREAK
case 139:
YY_RULE_SETUP
-#line 242 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 253 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = DIR_NAT+DIR_RB; return(FONTDIR);}
YY_BREAK
case 140:
YY_RULE_SETUP
-#line 244 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 255 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(FONTIVALUE);
YY_BREAK
case 141:
YY_RULE_SETUP
-#line 245 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 256 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(FONTFVALUE);
YY_BREAK
case 142:
YY_RULE_SETUP
-#line 246 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 257 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(FONTMVALUE);
YY_BREAK
case 143:
YY_RULE_SETUP
-#line 247 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 258 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(FONTPENALTY);
YY_BREAK
case 144:
YY_RULE_SETUP
-#line 248 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 259 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(FONTRULE);
YY_BREAK
case 145:
YY_RULE_SETUP
-#line 249 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 260 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(FONTGLUE);
YY_BREAK
case 146:
YY_RULE_SETUP
-#line 251 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 262 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(IVALUE);
YY_BREAK
case 147:
YY_RULE_SETUP
-#line 252 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 263 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(FVALUE);
YY_BREAK
case 148:
YY_RULE_SETUP
-#line 253 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 264 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(MVALUE);
YY_BREAK
case 149:
YY_RULE_SETUP
-#line 254 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 265 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(PENALTY);
YY_BREAK
case 150:
YY_RULE_SETUP
-#line 255 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 266 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(RULE);
YY_BREAK
case 151:
YY_RULE_SETUP
-#line 256 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 267 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(GLUE);
YY_BREAK
case 152:
YY_RULE_SETUP
-#line 258 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 269 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(IVALUEVAL);
YY_BREAK
case 153:
YY_RULE_SETUP
-#line 259 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 270 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(FVALUEVAL);
YY_BREAK
case 154:
YY_RULE_SETUP
-#line 260 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 271 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(MVALUEVAL);
YY_BREAK
case 155:
YY_RULE_SETUP
-#line 261 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 272 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(PENALTYVAL);
YY_BREAK
case 156:
YY_RULE_SETUP
-#line 263 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 274 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{ yylval.yint = RULE_WD; return(RULEMEASURE); }
YY_BREAK
case 157:
YY_RULE_SETUP
-#line 264 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 275 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{ yylval.yint = RULE_HT; return(RULEMEASURE); }
YY_BREAK
case 158:
YY_RULE_SETUP
-#line 265 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 276 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{ yylval.yint = RULE_DP; return(RULEMEASURE); }
YY_BREAK
case 159:
YY_RULE_SETUP
-#line 267 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 278 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(GLUEWD);
YY_BREAK
case 160:
YY_RULE_SETUP
-#line 268 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 279 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{ yylval.yint = GLUE_STRETCH; return(GLUESHRINKSTRETCH); }
YY_BREAK
case 161:
YY_RULE_SETUP
-#line 269 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 280 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{ yylval.yint = GLUE_SHRINK; return(GLUESHRINKSTRETCH); }
YY_BREAK
case 162:
YY_RULE_SETUP
-#line 271 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 282 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(GLUETYPE);
YY_BREAK
case 163:
YY_RULE_SETUP
-#line 272 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 283 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(GLUERULE);
YY_BREAK
case 164:
YY_RULE_SETUP
-#line 273 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 284 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(GLUECHAR);
YY_BREAK
case 165:
YY_RULE_SETUP
-#line 275 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 286 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CHARIVALUE);
YY_BREAK
case 166:
YY_RULE_SETUP
-#line 276 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 287 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CHARFVALUE);
YY_BREAK
case 167:
YY_RULE_SETUP
-#line 277 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 288 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CHARMVALUE);
YY_BREAK
case 168:
YY_RULE_SETUP
-#line 278 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 289 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CHARPENALTY);
YY_BREAK
case 169:
YY_RULE_SETUP
-#line 279 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 290 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CHARRULE);
YY_BREAK
case 170:
YY_RULE_SETUP
-#line 280 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 291 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CHARGLUE);
YY_BREAK
case 171:
YY_RULE_SETUP
-#line 282 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 293 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CKRN);
YY_BREAK
case 172:
YY_RULE_SETUP
-#line 283 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 294 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CGLUE);
YY_BREAK
case 173:
YY_RULE_SETUP
-#line 284 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 295 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CPENALTY);
YY_BREAK
case 174:
YY_RULE_SETUP
-#line 285 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 296 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CPENGLUE);
YY_BREAK
case 175:
YY_RULE_SETUP
-#line 286 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 297 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CLABEL);
YY_BREAK
case 176:
YY_RULE_SETUP
-#line 288 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 299 "../../../../texk/web2c/omegafonts/pl-lexer.l"
return(CHARREPEAT);
YY_BREAK
case 177:
YY_RULE_SETUP
-#line 291 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 302 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = O_FILLL; return(GLUEORDER); }
YY_BREAK
case 178:
YY_RULE_SETUP
-#line 292 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 303 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = O_FILL; return(GLUEORDER); }
YY_BREAK
case 179:
YY_RULE_SETUP
-#line 293 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 304 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = O_FIL; return(GLUEORDER); }
YY_BREAK
case 180:
YY_RULE_SETUP
-#line 294 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 305 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = O_FI; return(GLUEORDER); }
YY_BREAK
case 181:
YY_RULE_SETUP
-#line 295 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 306 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = O_UNIT; return(GLUEORDER); }
YY_BREAK
case 182:
YY_RULE_SETUP
-#line 297 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 308 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = K_NORMAL; return(GLUEKIND); }
YY_BREAK
case 183:
YY_RULE_SETUP
-#line 298 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 309 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = K_ALEADERS; return(GLUEKIND); }
YY_BREAK
case 184:
YY_RULE_SETUP
-#line 299 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 310 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = K_CLEADERS; return(GLUEKIND); }
YY_BREAK
case 185:
YY_RULE_SETUP
-#line 300 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 311 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = K_XLEADERS; return(GLUEKIND); }
YY_BREAK
case 186:
YY_RULE_SETUP
-#line 302 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 313 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_SECWD; return(CHARMEASURE); }
YY_BREAK
case 187:
YY_RULE_SETUP
-#line 303 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 314 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_SECHT; return(CHARMEASURE); }
YY_BREAK
case 188:
YY_RULE_SETUP
-#line 304 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 315 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_SECDP; return(CHARMEASURE); }
YY_BREAK
case 189:
YY_RULE_SETUP
-#line 305 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 316 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_SECIC; return(CHARMEASURE); }
YY_BREAK
case 190:
YY_RULE_SETUP
-#line 307 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 318 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_P_TOPAXIS; return(CHARMEASURE); }
YY_BREAK
case 191:
YY_RULE_SETUP
-#line 308 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 319 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_P_TOPAXISBIs; return(CHARMEASURE); }
YY_BREAK
case 192:
YY_RULE_SETUP
-#line 309 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 320 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_P_BOTAXIS; return(CHARMEASURE); }
YY_BREAK
case 193:
YY_RULE_SETUP
-#line 310 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 321 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_P_BOTAXISBIS; return(CHARMEASURE); }
YY_BREAK
case 194:
YY_RULE_SETUP
-#line 311 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 322 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_P_MIDHOR; return(CHARMEASURE); }
YY_BREAK
case 195:
YY_RULE_SETUP
-#line 312 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 323 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_P_MIDVERT; return(CHARMEASURE); }
YY_BREAK
case 196:
YY_RULE_SETUP
-#line 313 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 324 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_P_BASESLANT; return(CHARMEASURE); }
YY_BREAK
case 197:
YY_RULE_SETUP
-#line 315 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 326 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_S_TOPAXIS; return(CHARMEASURE); }
YY_BREAK
case 198:
YY_RULE_SETUP
-#line 316 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 327 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_S_TOPAXISBIs; return(CHARMEASURE); }
YY_BREAK
case 199:
YY_RULE_SETUP
-#line 317 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 328 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_S_BOTAXIS; return(CHARMEASURE); }
YY_BREAK
case 200:
YY_RULE_SETUP
-#line 318 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 329 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_S_BOTAXISBIS; return(CHARMEASURE); }
YY_BREAK
case 201:
YY_RULE_SETUP
-#line 319 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 330 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_S_MIDHOR; return(CHARMEASURE); }
YY_BREAK
case 202:
YY_RULE_SETUP
-#line 320 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 331 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_S_MIDVERT; return(CHARMEASURE); }
YY_BREAK
case 203:
YY_RULE_SETUP
-#line 321 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 332 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{yylval.yint = C_S_BASESLANT; return(CHARMEASURE); }
YY_BREAK
case 204:
YY_RULE_SETUP
-#line 323 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 334 "../../../../texk/web2c/omegafonts/pl-lexer.l"
{lex_error_1("unexpected character (%x); ignored",
yytext[0]);}
YY_BREAK
case 205:
YY_RULE_SETUP
-#line 325 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 336 "../../../../texk/web2c/omegafonts/pl-lexer.l"
ECHO;
YY_BREAK
-#line 2342 "../../../../texk/web2c/omegafonts/pl-lexer.c"
-case YY_STATE_EOF(INITIAL):
- yyterminate();
+#line 2405 "pl-lexer.c"
+ case YY_STATE_EOF(INITIAL):
+ yyterminate();
case YY_END_OF_BUFFER:
{
@@ -2405,8 +2468,7 @@ case YY_STATE_EOF(INITIAL):
else
{
- yy_cp = (yy_last_accepting_cpos);
- yy_current_state = (yy_last_accepting_state);
+ yy_cp = (yy_c_buf_p);
goto yy_find_action;
}
}
@@ -2532,37 +2594,8 @@ static int yy_get_next_buffer (void)
while ( num_to_read <= 0 )
{ /* Not enough room in the buffer - grow it. */
- /* just a shorter name for the current buffer */
- YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;
-
- int yy_c_buf_p_offset =
- (int) ((yy_c_buf_p) - b->yy_ch_buf);
-
- if ( b->yy_is_our_buffer )
- {
- yy_size_t new_size = b->yy_buf_size * 2;
-
- if ( new_size <= 0 )
- b->yy_buf_size += b->yy_buf_size / 8;
- else
- b->yy_buf_size *= 2;
-
- b->yy_ch_buf = (char *)
- /* Include room in for 2 EOB chars. */
- yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 );
- }
- else
- /* Can't grow it, we don't own it. */
- b->yy_ch_buf = 0;
-
- if ( ! b->yy_ch_buf )
- YY_FATAL_ERROR(
- "fatal error - scanner input buffer overflow" );
-
- (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
-
- num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
- number_to_move - 1;
+ YY_FATAL_ERROR(
+"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
}
@@ -2621,14 +2654,12 @@ static int yy_get_next_buffer (void)
yy_current_state = (yy_start);
+ (yy_state_ptr) = (yy_state_buf);
+ *(yy_state_ptr)++ = yy_current_state;
+
for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
{
YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
- if ( yy_accept[yy_current_state] )
- {
- (yy_last_accepting_state) = yy_current_state;
- (yy_last_accepting_cpos) = yy_cp;
- }
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
@@ -2636,6 +2667,7 @@ static int yy_get_next_buffer (void)
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
+ *(yy_state_ptr)++ = yy_current_state;
}
return yy_current_state;
@@ -2649,14 +2681,8 @@ static int yy_get_next_buffer (void)
static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
{
int yy_is_jam;
- char *yy_cp = (yy_c_buf_p);
-
+
YY_CHAR yy_c = 1;
- if ( yy_accept[yy_current_state] )
- {
- (yy_last_accepting_state) = yy_current_state;
- (yy_last_accepting_cpos) = yy_cp;
- }
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
@@ -2665,6 +2691,8 @@ static int yy_get_next_buffer (void)
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
yy_is_jam = (yy_current_state == 799);
+ if ( ! yy_is_jam )
+ *(yy_state_ptr)++ = yy_current_state;
return yy_is_jam ? 0 : yy_current_state;
}
@@ -2926,7 +2954,7 @@ static void yy_load_buffer_state (void)
b->yy_bs_column = 0;
}
- b->yy_is_interactive = 0;
+ b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
errno = oerrno;
}
@@ -3265,6 +3293,11 @@ static int yy_init_globals (void)
(yy_init) = 0;
(yy_start) = 0;
+ (yy_state_buf) = 0;
+ (yy_state_ptr) = 0;
+ (yy_full_match) = 0;
+ (yy_lp) = 0;
+
/* Defined in main.c */
#ifdef YY_STDINIT
yyin = stdin;
@@ -3295,6 +3328,9 @@ int yylex_destroy (void)
yyfree((yy_buffer_stack) );
(yy_buffer_stack) = NULL;
+ yyfree ( (yy_state_buf) );
+ (yy_state_buf) = NULL;
+
/* Reset the globals. This is important in a non-reentrant scanner so the next time
* yylex() is called, initialization will occur. */
yy_init_globals( );
@@ -3352,7 +3388,7 @@ void yyfree (void * ptr )
#define YYTABLES_NAME "yytables"
-#line 325 "../../../../texk/web2c/omegafonts/pl-lexer.l"
+#line 336 "../../../../texk/web2c/omegafonts/pl-lexer.l"
diff --git a/Build/source/texk/web2c/omegafonts/pl-lexer.l b/Build/source/texk/web2c/omegafonts/pl-lexer.l
index a4ba3bd67b9..cc5f4f40250 100644
--- a/Build/source/texk/web2c/omegafonts/pl-lexer.l
+++ b/Build/source/texk/web2c/omegafonts/pl-lexer.l
@@ -1,5 +1,3 @@
-%option never-interactive
-
%{
/* pl-lexer.l: Lexical analysis of property list files.
@@ -25,6 +23,19 @@ along with Omega; if not, write to the Free Software Foundation, Inc.,
59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*/
+/* The xyarabic.opl test has an opl comment larger than 16k, which is
+ the default buffer size for flex defined in its preamble. This
+ results in an error like:
+input buffer overflow, can't enlarge buffer because scanner uses REJECT
+ So we need to redefine YY_BUF_SIZE, which we do here. Unfortunately
+ it is not perfect, since the flex preamble code uses its own
+ YY_BUF_SIZE to #define YY_STATE_BUF_SIZE before our override takes
+ effect. Fortunately this is not causing an error. Apparently the
+ only way to truly override it would be on the command line, and that
+ seems like too much trouble when this works in practice. */
+#undef YY_BUF_SIZE
+#define YY_BUF_SIZE 110000
+
#include <kpathsea/lib.h>
#include <kpathsea/c-memstr.h>
#include "parser.h"