Temporarily back out fixes for unary minus parsing.

Will re-introduce for v6.4 but requires fixes for automatic type
 conversion beforehand.
This commit is contained in:
Thomas G. Lockhart 1998-04-08 06:35:02 +00:00
parent 45a0b4743a
commit 31b9e3fc68
2 changed files with 183 additions and 188 deletions

View File

@ -1,7 +1,7 @@
/* A lexical scanner generated by flex */ /* A lexical scanner generated by flex */
/* Scanner skeleton version: /* Scanner skeleton version:
* $Header: /cvsroot/pgsql/src/backend/parser/Attic/scan.c,v 1.16 1998/03/18 16:50:24 thomas Exp $ * $Header: /cvsroot/pgsql/src/backend/parser/Attic/scan.c,v 1.17 1998/04/08 06:35:02 thomas Exp $
*/ */
#define FLEX_SCANNER #define FLEX_SCANNER
@ -308,22 +308,22 @@ static yyconst short int yy_acclist[168] =
2, 2, 2, 8227, 37,16419, 2 2, 2, 2, 8227, 37,16419, 2
} ; } ;
static yyconst short int yy_accept[129] = static yyconst short int yy_accept[128] =
{ 0, { 0,
1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8,
9, 10, 11, 12, 13, 14, 16, 19, 21, 24, 9, 10, 11, 12, 13, 14, 16, 19, 21, 24,
27, 31, 34, 37, 41, 45, 49, 53, 57, 61, 27, 31, 34, 37, 41, 45, 49, 53, 57, 61,
65, 69, 71, 73, 76, 79, 81, 83, 85, 87, 65, 69, 71, 73, 76, 79, 81, 83, 85, 87,
89, 91, 92, 94, 96, 98, 100, 101, 102, 103, 89, 91, 92, 94, 96, 98, 100, 101, 102, 103,
103, 104, 105, 105, 106, 107, 109, 111, 112, 112, 104, 105, 105, 106, 107, 109, 111, 112, 112, 112,
112, 112, 114, 114, 114, 116, 117, 118, 119, 119, 112, 114, 114, 114, 116, 117, 118, 119, 119, 119,
119, 120, 121, 121, 121, 122, 123, 124, 124, 124, 120, 121, 121, 121, 122, 123, 124, 124, 124, 125,
125, 126, 126, 126, 127, 128, 130, 131, 133, 136, 126, 126, 126, 127, 128, 130, 131, 133, 136, 137,
137, 137, 138, 139, 140, 142, 142, 144, 146, 148, 137, 138, 139, 140, 142, 142, 144, 146, 148, 149,
149, 151, 152, 152, 152, 153, 154, 154, 154, 155, 151, 152, 152, 152, 153, 154, 154, 154, 155, 155,
155, 155, 156, 157, 157, 160, 161, 161, 161, 161, 155, 156, 157, 157, 160, 161, 161, 161, 161, 162,
162, 163, 164, 165, 165, 167, 168, 168 163, 164, 165, 165, 167, 168, 168
} ; } ;
static yyconst int yy_ec[256] = static yyconst int yy_ec[256] =
@ -365,154 +365,152 @@ static yyconst int yy_meta[22] =
12 12
} ; } ;
static yyconst short int yy_base[147] = static yyconst short int yy_base[146] =
{ 0, { 0,
0, 0, 331, 330, 18, 31, 326, 325, 228, 220, 0, 0, 332, 325, 18, 31, 325, 324, 321, 320,
46, 48, 18, 31, 224, 446, 446, 446, 209, 446, 46, 48, 18, 31, 326, 435, 435, 435, 309, 435,
58, 446, 51, 12, 44, 23, 71, 198, 64, 84, 12, 435, 308, 213, 42, 49, 61, 21, 63, 74,
197, 0, 61, 0, 92, 67, 0, 0, 446, 0, 209, 0, 52, 0, 82, 58, 0, 0, 435, 0,
68, 446, 75, 446, 0, 86, 193, 180, 98, 111, 66, 435, 76, 435, 0, 80, 206, 198, 88, 31,
31, 147, 67, 138, 122, 0, 140, 78, 155, 0, 188, 82, 179, 102, 0, 120, 113, 135, 0, 175,
131, 100, 157, 0, 90, 446, 446, 0, 97, 113, 169, 137, 0, 149, 435, 435, 0, 87, 140, 0,
0, 0, 108, 85, 145, 0, 0, 116, 160, 162, 0, 71, 132, 142, 0, 0, 147, 150, 152, 0,
0, 167, 169, 446, 446, 446, 446, 446, 70, 446, 156, 158, 435, 435, 435, 435, 435, 114, 435, 162,
173, 446, 186, 92, 0, 59, 199, 52, 161, 446, 435, 175, 120, 0, 92, 188, 57, 150, 435, 203,
214, 446, 191, 204, 446, 178, 216, 219, 446, 227, 435, 180, 193, 435, 167, 205, 208, 435, 216, 218,
229, 446, 0, 165, 235, 47, 237, 0, 231, 241, 435, 0, 154, 224, 52, 226, 0, 220, 230, 233,
244, 249, 446, 16, 235, 253, 446, 256, 268, 280, 238, 435, 16, 224, 242, 435, 245, 257, 269, 281,
292, 304, 316, 325, 333, 344, 356, 365, 374, 386, 293, 305, 314, 322, 333, 345, 354, 363, 375, 387,
398, 409, 421, 426, 430, 434 398, 410, 415, 419, 423
} ; } ;
static yyconst short int yy_def[147] = static yyconst short int yy_def[146] =
{ 0, { 0,
127, 1, 128, 128, 129, 129, 130, 130, 131, 131, 126, 1, 127, 127, 128, 128, 129, 129, 130, 130,
132, 132, 133, 133, 127, 127, 127, 127, 134, 127, 131, 131, 132, 132, 126, 126, 126, 126, 133, 126,
134, 127, 127, 21, 21, 24, 127, 24, 135, 135, 133, 126, 126, 133, 133, 133, 126, 133, 134, 134,
30, 136, 127, 137, 137, 138, 35, 139, 127, 140, 30, 135, 126, 136, 136, 137, 35, 138, 126, 139,
127, 127, 127, 127, 141, 127, 142, 134, 134, 127, 126, 126, 126, 126, 140, 126, 141, 133, 133, 49,
49, 127, 127, 51, 127, 27, 143, 55, 127, 144, 126, 126, 50, 126, 27, 142, 54, 126, 143, 126,
127, 134, 127, 145, 30, 127, 127, 136, 127, 127, 133, 126, 144, 30, 126, 126, 135, 126, 126, 136,
137, 35, 138, 138, 138, 139, 140, 127, 127, 127, 35, 137, 137, 137, 138, 139, 126, 126, 126, 140,
141, 127, 127, 127, 127, 127, 127, 127, 127, 127, 126, 126, 126, 126, 126, 126, 126, 126, 126, 54,
55, 127, 91, 93, 91, 143, 143, 97, 97, 127, 126, 90, 92, 90, 142, 142, 96, 96, 126, 126,
127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
127, 127, 91, 143, 97, 143, 127, 146, 127, 143, 126, 90, 142, 96, 142, 126, 145, 126, 142, 142,
143, 127, 127, 127, 101, 127, 0, 127, 127, 127, 126, 126, 126, 100, 126, 0, 126, 126, 126, 126,
127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
127, 127, 127, 127, 127, 127 126, 126, 126, 126, 126
} ; } ;
static yyconst short int yy_nxt[468] = static yyconst short int yy_nxt[457] =
{ 0, { 0,
16, 17, 18, 19, 20, 21, 22, 23, 24, 24, 16, 17, 18, 19, 20, 21, 22, 23, 24, 24,
25, 23, 26, 27, 28, 24, 29, 30, 29, 31, 25, 23, 26, 27, 28, 24, 29, 30, 29, 31,
16, 35, 54, 35, 46, 127, 36, 35, 35, 125, 16, 35, 50, 35, 46, 51, 36, 35, 35, 124,
37, 57, 35, 35, 35, 58, 35, 46, 47, 36, 37, 53, 35, 35, 35, 61, 35, 46, 47, 36,
35, 35, 88, 37, 89, 35, 35, 43, 43, 43, 35, 35, 87, 37, 88, 35, 35, 43, 43, 43,
43, 47, 50, 50, 55, 114, 44, 56, 44, 50, 43, 47, 54, 68, 69, 55, 44, 56, 44, 53,
50, 53, 69, 70, 115, 63, 63, 114, 51, 78, 113, 57, 58, 58, 62, 62, 72, 77, 78, 114,
79, 52, 59, 59, 64, 73, 80, 80, 90, 75, 74, 59, 60, 63, 55, 62, 62, 79, 79, 72,
90, 60, 61, 52, 56, 63, 63, 82, 83, 91, 65, 81, 82, 74, 63, 71, 83, 71, 68, 69,
66, 91, 84, 73, 64, 72, 127, 72, 69, 70, 72, 71, 71, 89, 71, 89, 71, 71, 49, 86,
73, 72, 72, 113, 72, 113, 72, 72, 49, 87, 113, 86, 90, 90, 91, 92, 90, 92, 90, 90,
49, 87, 50, 50, 103, 104, 73, 78, 79, 105, 92, 92, 93, 94, 92, 94, 92, 92, 90, 90,
75, 53, 91, 91, 92, 93, 91, 93, 91, 91, 90, 90, 90, 96, 90, 96, 90, 51, 97, 96,
93, 93, 94, 95, 93, 95, 93, 93, 91, 91, 98, 112, 96, 112, 96, 96, 58, 58, 62, 62,
91, 91, 91, 97, 101, 97, 106, 106, 98, 97, 72, 102, 103, 105, 105, 59, 104, 63, 77, 78,
99, 88, 97, 73, 97, 97, 59, 59, 63, 63, 72, 106, 107, 79, 79, 126, 108, 81, 82, 109,
52, 107, 108, 80, 80, 60, 109, 64, 82, 83, 110, 115, 113, 115, 111, 90, 119, 90, 105, 105,
110, 111, 116, 114, 116, 112, 91, 120, 91, 106, 90, 90, 90, 90, 90, 90, 90, 90, 92, 49,
106, 91, 91, 91, 91, 91, 91, 91, 91, 93, 92, 102, 103, 92, 92, 93, 104, 92, 100, 92,
49, 93, 103, 104, 93, 93, 94, 105, 93, 86, 92, 96, 87, 96, 102, 103, 97, 96, 98, 104,
93, 93, 97, 67, 97, 103, 104, 98, 97, 99, 96, 51, 96, 96, 116, 116, 106, 107, 49, 106,
105, 97, 62, 97, 97, 117, 117, 107, 108, 49, 107, 108, 85, 117, 108, 66, 100, 109, 110, 109,
107, 108, 109, 127, 118, 109, 41, 101, 110, 111, 110, 118, 111, 53, 111, 120, 121, 116, 116, 123,
110, 111, 119, 112, 41, 112, 121, 122, 117, 117, 123, 120, 121, 124, 120, 121, 117, 124, 113, 125,
124, 124, 121, 122, 125, 121, 122, 118, 125, 114, 121, 113, 126, 125, 121, 32, 32, 32, 32, 32,
126, 122, 114, 127, 126, 122, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 34, 34, 34,
32, 32, 32, 32, 32, 32, 32, 32, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 38,
34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38,
38, 38, 40, 40, 40, 40, 40, 40, 40, 40, 38, 40, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 42, 42, 42, 42, 42, 42, 42,
40, 40, 40, 40, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 45, 45, 45, 45, 45,
42, 42, 42, 42, 42, 42, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 48, 52, 49,
45, 45, 45, 45, 45, 45, 45, 45, 48, 39, 48, 48, 48, 64, 64, 126, 41, 41, 39, 39,
39, 48, 48, 48, 65, 65, 33, 33, 127, 127, 64, 33, 64, 67, 67, 67, 67, 67, 33, 67,
127, 65, 127, 65, 68, 68, 68, 68, 68, 127, 67, 67, 67, 67, 67, 70, 70, 70, 70, 70,
68, 68, 68, 68, 68, 68, 71, 71, 71, 71, 70, 126, 70, 70, 70, 70, 70, 73, 126, 126,
71, 71, 127, 71, 71, 71, 71, 71, 74, 127, 73, 73, 73, 75, 75, 75, 75, 126, 75, 75,
127, 74, 74, 74, 76, 76, 76, 76, 127, 76, 75, 75, 75, 75, 75, 76, 76, 76, 76, 76,
76, 76, 76, 76, 76, 76, 77, 77, 77, 77, 126, 76, 76, 76, 76, 76, 76, 80, 80, 80,
77, 127, 77, 77, 77, 77, 77, 77, 81, 81, 80, 80, 126, 80, 80, 80, 80, 80, 84, 84,
81, 81, 81, 127, 81, 81, 81, 81, 81, 85, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 95, 95, 126, 95, 95, 95, 95, 95, 95, 95,
85, 96, 96, 127, 96, 96, 96, 96, 96, 96, 95, 95, 99, 99, 99, 99, 101, 101, 101, 101,
96, 96, 96, 100, 100, 100, 100, 102, 102, 102, 122, 122, 122, 122, 15, 126, 126, 126, 126, 126,
102, 123, 123, 123, 123, 15, 127, 127, 127, 127, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 126, 126, 126, 126, 126, 126
127, 127, 127, 127, 127, 127, 127
} ; } ;
static yyconst short int yy_chk[468] = static yyconst short int yy_chk[457] =
{ 0, { 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 5, 24, 5, 13, 24, 5, 5, 5, 124, 1, 5, 21, 5, 13, 21, 5, 5, 5, 123,
5, 26, 5, 5, 6, 26, 6, 14, 13, 6, 5, 28, 5, 5, 6, 28, 6, 14, 13, 6,
6, 6, 51, 6, 51, 6, 6, 11, 11, 12, 6, 6, 50, 6, 50, 6, 6, 11, 11, 12,
12, 14, 23, 23, 25, 116, 11, 25, 12, 21, 12, 14, 25, 33, 33, 25, 11, 26, 12, 26,
21, 23, 33, 33, 98, 29, 29, 96, 21, 41, 115, 26, 27, 27, 29, 29, 36, 41, 41, 97,
41, 21, 27, 27, 29, 36, 43, 43, 53, 36, 36, 27, 27, 29, 27, 30, 30, 43, 43, 72,
53, 27, 27, 89, 27, 30, 30, 46, 46, 58, 30, 46, 46, 72, 30, 35, 46, 35, 68, 68,
30, 58, 46, 74, 30, 35, 65, 35, 69, 69, 35, 35, 35, 52, 35, 52, 35, 35, 49, 49,
35, 35, 35, 94, 35, 94, 35, 35, 49, 49, 95, 49, 54, 54, 54, 54, 54, 54, 54, 54,
62, 49, 50, 50, 70, 70, 73, 78, 78, 70, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
73, 50, 55, 55, 55, 55, 55, 55, 55, 55, 54, 54, 54, 56, 57, 56, 57, 88, 56, 56,
55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 56, 93, 56, 93, 56, 56, 58, 58, 62, 62,
55, 55, 55, 57, 61, 57, 75, 75, 57, 57, 73, 69, 69, 74, 74, 58, 69, 62, 77, 77,
57, 54, 57, 75, 57, 57, 59, 59, 63, 63, 74, 78, 78, 79, 79, 64, 78, 81, 81, 82,
52, 79, 79, 80, 80, 59, 79, 63, 82, 82, 82, 98, 113, 98, 82, 90, 113, 90, 105, 105,
83, 83, 99, 114, 99, 83, 91, 114, 91, 106, 90, 90, 90, 90, 90, 90, 90, 90, 92, 61,
106, 91, 91, 91, 91, 91, 91, 91, 91, 93, 92, 102, 102, 92, 92, 92, 102, 92, 60, 92,
48, 93, 103, 103, 93, 93, 93, 103, 93, 47, 92, 96, 53, 96, 103, 103, 96, 96, 96, 103,
93, 93, 97, 31, 97, 104, 104, 97, 97, 97, 96, 51, 96, 96, 100, 100, 106, 106, 48, 107,
104, 97, 28, 97, 97, 101, 101, 107, 107, 19, 107, 106, 47, 100, 107, 31, 100, 109, 109, 110,
108, 108, 107, 15, 101, 108, 10, 101, 110, 110, 110, 100, 109, 24, 110, 114, 114, 116, 116, 118,
111, 111, 101, 110, 9, 111, 115, 115, 117, 117, 118, 119, 119, 118, 120, 120, 116, 124, 119, 121,
119, 119, 120, 120, 119, 121, 121, 117, 125, 120, 121, 120, 124, 125, 125, 127, 127, 127, 127, 127,
122, 122, 121, 125, 126, 126, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 128, 128, 128, 128, 128, 128, 128, 128, 128, 129,
129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 129, 130, 130, 130, 130, 130, 130, 130, 130, 130,
130, 130, 131, 131, 131, 131, 131, 131, 131, 131, 130, 130, 130, 131, 131, 131, 131, 131, 131, 131,
131, 131, 131, 131, 132, 132, 132, 132, 132, 132, 131, 131, 131, 131, 131, 132, 132, 132, 132, 132,
132, 132, 132, 132, 132, 132, 133, 133, 133, 133, 132, 132, 132, 132, 132, 132, 132, 133, 23, 19,
133, 133, 133, 133, 133, 133, 133, 133, 134, 8, 133, 133, 133, 134, 134, 15, 10, 9, 8, 7,
7, 134, 134, 134, 135, 135, 4, 3, 0, 0, 134, 4, 134, 135, 135, 135, 135, 135, 3, 135,
0, 135, 0, 135, 136, 136, 136, 136, 136, 0, 135, 135, 135, 135, 135, 136, 136, 136, 136, 136,
136, 136, 136, 136, 136, 136, 137, 137, 137, 137, 136, 0, 136, 136, 136, 136, 136, 137, 0, 0,
137, 137, 0, 137, 137, 137, 137, 137, 138, 0, 137, 137, 137, 138, 138, 138, 138, 0, 138, 138,
0, 138, 138, 138, 139, 139, 139, 139, 0, 139, 138, 138, 138, 138, 138, 139, 139, 139, 139, 139,
139, 139, 139, 139, 139, 139, 140, 140, 140, 140, 0, 139, 139, 139, 139, 139, 139, 140, 140, 140,
140, 0, 140, 140, 140, 140, 140, 140, 141, 141, 140, 140, 0, 140, 140, 140, 140, 140, 141, 141,
141, 141, 141, 0, 141, 141, 141, 141, 141, 142, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
142, 142, 142, 142, 142, 142, 142, 142, 142, 142, 142, 142, 0, 142, 142, 142, 142, 142, 142, 142,
142, 143, 143, 0, 143, 143, 143, 143, 143, 143, 142, 142, 143, 143, 143, 143, 144, 144, 144, 144,
143, 143, 143, 144, 144, 144, 144, 145, 145, 145, 145, 145, 145, 145, 126, 126, 126, 126, 126, 126,
145, 146, 146, 146, 146, 127, 127, 127, 127, 127, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 126, 126, 126, 126, 126, 126
127, 127, 127, 127, 127, 127, 127
} ; } ;
static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr; static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;
@ -549,7 +547,7 @@ char *yytext;
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/parser/Attic/scan.c,v 1.16 1998/03/18 16:50:24 thomas Exp $ * $Header: /cvsroot/pgsql/src/backend/parser/Attic/scan.c,v 1.17 1998/04/08 06:35:02 thomas Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
@ -661,7 +659,7 @@ char literal[MAX_PARSE_BUFFER];
* Other embedded escaped characters are matched explicitly and the leading * Other embedded escaped characters are matched explicitly and the leading
* backslash is dropped from the string. - thomas 1997-09-24 * backslash is dropped from the string. - thomas 1997-09-24
*/ */
#line 665 "lex.yy.c" #line 663 "lex.yy.c"
/* Macros after this point can all be overridden by user definitions in /* Macros after this point can all be overridden by user definitions in
* section 1. * section 1.
@ -812,9 +810,9 @@ YY_DECL
register char *yy_cp, *yy_bp; register char *yy_cp, *yy_bp;
register int yy_act; register int yy_act;
#line 176 "scan.l" #line 178 "scan.l"
#line 818 "lex.yy.c" #line 816 "lex.yy.c"
if ( yy_init ) if ( yy_init )
{ {
@ -862,14 +860,14 @@ yy_match:
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{ {
yy_current_state = (int) yy_def[yy_current_state]; yy_current_state = (int) yy_def[yy_current_state];
if ( yy_current_state >= 128 ) if ( yy_current_state >= 127 )
yy_c = yy_meta[(unsigned int) yy_c]; yy_c = yy_meta[(unsigned int) yy_c];
} }
yy_current_state = yy_nxt[yy_base[yy_current_state] + (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_state_ptr++ = yy_current_state;
++yy_cp; ++yy_cp;
} }
while ( yy_base[yy_current_state] != 446 ); while ( yy_base[yy_current_state] != 435 );
yy_find_action: yy_find_action:
yy_current_state = *--yy_state_ptr; yy_current_state = *--yy_state_ptr;
@ -920,34 +918,34 @@ do_action: /* This label is used only to access EOF actions. */
{ /* beginning of action switch */ { /* beginning of action switch */
case 1: case 1:
YY_RULE_SETUP YY_RULE_SETUP
#line 177 "scan.l" #line 179 "scan.l"
{ /* ignore */ } { /* ignore */ }
YY_BREAK YY_BREAK
case 2: case 2:
YY_RULE_SETUP YY_RULE_SETUP
#line 179 "scan.l" #line 181 "scan.l"
{ /* ignore */ } { /* ignore */ }
YY_BREAK YY_BREAK
case 3: case 3:
#line 182 "scan.l" #line 184 "scan.l"
case 4: case 4:
YY_RULE_SETUP YY_RULE_SETUP
#line 182 "scan.l" #line 184 "scan.l"
{ BEGIN(xc); } { BEGIN(xc); }
YY_BREAK YY_BREAK
case 5: case 5:
YY_RULE_SETUP YY_RULE_SETUP
#line 184 "scan.l" #line 186 "scan.l"
{ BEGIN(INITIAL); } { BEGIN(INITIAL); }
YY_BREAK YY_BREAK
case 6: case 6:
YY_RULE_SETUP YY_RULE_SETUP
#line 186 "scan.l" #line 188 "scan.l"
{ /* ignore */ } { /* ignore */ }
YY_BREAK YY_BREAK
case 7: case 7:
YY_RULE_SETUP YY_RULE_SETUP
#line 188 "scan.l" #line 190 "scan.l"
{ {
BEGIN(xb); BEGIN(xb);
llen = 0; llen = 0;
@ -956,7 +954,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 8: case 8:
YY_RULE_SETUP YY_RULE_SETUP
#line 193 "scan.l" #line 195 "scan.l"
{ {
char* endptr; char* endptr;
@ -969,10 +967,10 @@ YY_RULE_SETUP
} }
YY_BREAK YY_BREAK
case 9: case 9:
#line 204 "scan.l" #line 206 "scan.l"
case 10: case 10:
YY_RULE_SETUP YY_RULE_SETUP
#line 204 "scan.l" #line 206 "scan.l"
{ {
if ((llen+yyleng) > (MAX_PARSE_BUFFER - 1)) if ((llen+yyleng) > (MAX_PARSE_BUFFER - 1))
elog(ERROR,"quoted string parse buffer of %d chars exceeded",MAX_PARSE_BUFFER); elog(ERROR,"quoted string parse buffer of %d chars exceeded",MAX_PARSE_BUFFER);
@ -981,16 +979,16 @@ YY_RULE_SETUP
} }
YY_BREAK YY_BREAK
case 11: case 11:
#line 211 "scan.l" #line 213 "scan.l"
case 12: case 12:
YY_RULE_SETUP YY_RULE_SETUP
#line 211 "scan.l" #line 213 "scan.l"
{ {
} }
YY_BREAK YY_BREAK
case 13: case 13:
YY_RULE_SETUP YY_RULE_SETUP
#line 214 "scan.l" #line 216 "scan.l"
{ {
BEGIN(xh); BEGIN(xh);
llen = 0; llen = 0;
@ -999,7 +997,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 14: case 14:
YY_RULE_SETUP YY_RULE_SETUP
#line 219 "scan.l" #line 221 "scan.l"
{ {
char* endptr; char* endptr;
@ -1013,7 +1011,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 15: case 15:
YY_RULE_SETUP YY_RULE_SETUP
#line 230 "scan.l" #line 232 "scan.l"
{ {
BEGIN(xq); BEGIN(xq);
llen = 0; llen = 0;
@ -1022,7 +1020,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 16: case 16:
YY_RULE_SETUP YY_RULE_SETUP
#line 235 "scan.l" #line 237 "scan.l"
{ {
BEGIN(INITIAL); BEGIN(INITIAL);
yylval.str = pstrdup(scanstr(literal)); yylval.str = pstrdup(scanstr(literal));
@ -1030,10 +1028,10 @@ YY_RULE_SETUP
} }
YY_BREAK YY_BREAK
case 17: case 17:
#line 241 "scan.l" #line 243 "scan.l"
case 18: case 18:
YY_RULE_SETUP YY_RULE_SETUP
#line 241 "scan.l" #line 243 "scan.l"
{ {
if ((llen+yyleng) > (MAX_PARSE_BUFFER - 1)) if ((llen+yyleng) > (MAX_PARSE_BUFFER - 1))
elog(ERROR,"quoted string parse buffer of %d chars exceeded",MAX_PARSE_BUFFER); elog(ERROR,"quoted string parse buffer of %d chars exceeded",MAX_PARSE_BUFFER);
@ -1043,7 +1041,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 19: case 19:
YY_RULE_SETUP YY_RULE_SETUP
#line 247 "scan.l" #line 249 "scan.l"
{ {
if ((llen+yyleng-1) > (MAX_PARSE_BUFFER - 1)) if ((llen+yyleng-1) > (MAX_PARSE_BUFFER - 1))
elog(ERROR,"quoted string parse buffer of %d chars exceeded",MAX_PARSE_BUFFER); elog(ERROR,"quoted string parse buffer of %d chars exceeded",MAX_PARSE_BUFFER);
@ -1054,7 +1052,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 20: case 20:
YY_RULE_SETUP YY_RULE_SETUP
#line 255 "scan.l" #line 257 "scan.l"
{ {
if ((llen+yyleng-1) > (MAX_PARSE_BUFFER - 1)) if ((llen+yyleng-1) > (MAX_PARSE_BUFFER - 1))
elog(ERROR,"quoted string parse buffer of %d chars exceeded",MAX_PARSE_BUFFER); elog(ERROR,"quoted string parse buffer of %d chars exceeded",MAX_PARSE_BUFFER);
@ -1064,13 +1062,13 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 21: case 21:
YY_RULE_SETUP YY_RULE_SETUP
#line 261 "scan.l" #line 263 "scan.l"
{ {
} }
YY_BREAK YY_BREAK
case 22: case 22:
YY_RULE_SETUP YY_RULE_SETUP
#line 265 "scan.l" #line 267 "scan.l"
{ {
BEGIN(xd); BEGIN(xd);
llen = 0; llen = 0;
@ -1079,7 +1077,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 23: case 23:
YY_RULE_SETUP YY_RULE_SETUP
#line 270 "scan.l" #line 272 "scan.l"
{ {
BEGIN(INITIAL); BEGIN(INITIAL);
yylval.str = pstrdup(literal); yylval.str = pstrdup(literal);
@ -1088,7 +1086,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 24: case 24:
YY_RULE_SETUP YY_RULE_SETUP
#line 275 "scan.l" #line 277 "scan.l"
{ {
if ((llen+yyleng) > (MAX_PARSE_BUFFER - 1)) if ((llen+yyleng) > (MAX_PARSE_BUFFER - 1))
elog(ERROR,"quoted string parse buffer of %d chars exceeded",MAX_PARSE_BUFFER); elog(ERROR,"quoted string parse buffer of %d chars exceeded",MAX_PARSE_BUFFER);
@ -1098,12 +1096,12 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 25: case 25:
YY_RULE_SETUP YY_RULE_SETUP
#line 283 "scan.l" #line 285 "scan.l"
{ /* ignore */ } { /* ignore */ }
YY_BREAK YY_BREAK
case 26: case 26:
YY_RULE_SETUP YY_RULE_SETUP
#line 284 "scan.l" #line 286 "scan.l"
{ {
BEGIN(INITIAL); BEGIN(INITIAL);
return (yytext[0]); return (yytext[0]);
@ -1111,7 +1109,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 27: case 27:
YY_RULE_SETUP YY_RULE_SETUP
#line 290 "scan.l" #line 292 "scan.l"
{ return TYPECAST; } { return TYPECAST; }
YY_BREAK YY_BREAK
case 28: case 28:
@ -1119,15 +1117,14 @@ case 28:
yy_c_buf_p = yy_cp = yy_bp + 1; yy_c_buf_p = yy_cp = yy_bp + 1;
YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP YY_RULE_SETUP
#line 292 "scan.l" #line 294 "scan.l"
{ {
BEGIN(xm);
return (yytext[0]); return (yytext[0]);
} }
YY_BREAK YY_BREAK
case 29: case 29:
YY_RULE_SETUP YY_RULE_SETUP
#line 296 "scan.l" #line 297 "scan.l"
{ return (yytext[0]); } { return (yytext[0]); }
YY_BREAK YY_BREAK
case 30: case 30:
@ -1135,7 +1132,7 @@ case 30:
yy_c_buf_p = yy_cp -= 2; yy_c_buf_p = yy_cp -= 2;
YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP YY_RULE_SETUP
#line 297 "scan.l" #line 298 "scan.l"
{ {
yylval.str = pstrdup((char*)yytext); yylval.str = pstrdup((char*)yytext);
return (Op); return (Op);
@ -1143,7 +1140,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 31: case 31:
YY_RULE_SETUP YY_RULE_SETUP
#line 301 "scan.l" #line 302 "scan.l"
{ {
if (strcmp((char*)yytext,"!=") == 0) if (strcmp((char*)yytext,"!=") == 0)
yylval.str = pstrdup("<>"); /* compatability */ yylval.str = pstrdup("<>"); /* compatability */
@ -1154,7 +1151,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 32: case 32:
YY_RULE_SETUP YY_RULE_SETUP
#line 308 "scan.l" #line 309 "scan.l"
{ {
yylval.ival = atoi((char*)&yytext[1]); yylval.ival = atoi((char*)&yytext[1]);
return (PARAM); return (PARAM);
@ -1257,7 +1254,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 38: case 38:
YY_RULE_SETUP YY_RULE_SETUP
#line 391 "scan.l" #line 389 "scan.l"
{ {
int i; int i;
ScanKeyword *keyword; ScanKeyword *keyword;
@ -1279,20 +1276,20 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 39: case 39:
YY_RULE_SETUP YY_RULE_SETUP
#line 409 "scan.l" #line 407 "scan.l"
{ /* ignore */ } { /* ignore */ }
YY_BREAK YY_BREAK
case 40: case 40:
YY_RULE_SETUP YY_RULE_SETUP
#line 411 "scan.l" #line 409 "scan.l"
{ return (yytext[0]); } { return (yytext[0]); }
YY_BREAK YY_BREAK
case 41: case 41:
YY_RULE_SETUP YY_RULE_SETUP
#line 413 "scan.l" #line 411 "scan.l"
ECHO; ECHO;
YY_BREAK YY_BREAK
#line 1296 "lex.yy.c" #line 1293 "lex.yy.c"
case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(xb): case YY_STATE_EOF(xb):
case YY_STATE_EOF(xc): case YY_STATE_EOF(xc):
@ -1587,7 +1584,7 @@ static yy_state_type yy_get_previous_state()
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{ {
yy_current_state = (int) yy_def[yy_current_state]; yy_current_state = (int) yy_def[yy_current_state];
if ( yy_current_state >= 128 ) if ( yy_current_state >= 127 )
yy_c = yy_meta[(unsigned int) yy_c]; yy_c = yy_meta[(unsigned int) yy_c];
} }
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@ -1617,11 +1614,11 @@ yy_state_type yy_current_state;
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{ {
yy_current_state = (int) yy_def[yy_current_state]; yy_current_state = (int) yy_def[yy_current_state];
if ( yy_current_state >= 128 ) if ( yy_current_state >= 127 )
yy_c = yy_meta[(unsigned int) yy_c]; yy_c = yy_meta[(unsigned int) yy_c];
} }
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
yy_is_jam = (yy_current_state == 127); yy_is_jam = (yy_current_state == 126);
if ( ! yy_is_jam ) if ( ! yy_is_jam )
*yy_state_ptr++ = yy_current_state; *yy_state_ptr++ = yy_current_state;
@ -2178,7 +2175,7 @@ int main()
return 0; return 0;
} }
#endif #endif
#line 413 "scan.l" #line 411 "scan.l"
void yyerror(char message[]) void yyerror(char message[])

View File

@ -8,7 +8,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/parser/scan.l,v 1.37 1998/03/18 16:50:25 thomas Exp $ * $Header: /cvsroot/pgsql/src/backend/parser/scan.l,v 1.38 1998/04/08 06:35:00 thomas Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
@ -148,10 +148,12 @@ self [,()\[\].;$\:\+\-\*\/\<\>\=\|]
op_and_self [\~\!\@\#\%\^\&\|\`\?\$\:\+\-\*\/\<\>\=] op_and_self [\~\!\@\#\%\^\&\|\`\?\$\:\+\-\*\/\<\>\=]
operator {op_and_self}+ operator {op_and_self}+
xminteger {integer}/-
xmreal {real}/{space}*-{digit}
xmstop - xmstop -
integer [\-]?{digit}+ integer -?{digit}+
real [\-]?{digit}+\.{digit}+([Ee][-+]?{digit}+)? real -?{digit}+\.{digit}+([Ee][-+]?{digit}+)?
param \${integer} param \${integer}
@ -289,8 +291,7 @@ other .
{typecast} { return TYPECAST; } {typecast} { return TYPECAST; }
{self}/{space}*-[\.0-9] { {self}/-[\.0-9] {
BEGIN(xm);
return (yytext[0]); return (yytext[0]);
} }
{self} { return (yytext[0]); } {self} { return (yytext[0]); }
@ -310,7 +311,6 @@ other .
return (PARAM); return (PARAM);
} }
{identifier}/{space}*-{number} { {identifier}/{space}*-{number} {
int i; int i;
ScanKeyword *keyword; ScanKeyword *keyword;
@ -386,8 +386,6 @@ other .
CheckFloat8Val(yylval.dval); CheckFloat8Val(yylval.dval);
return (FCONST); return (FCONST);
} }
{identifier} { {identifier} {
int i; int i;
ScanKeyword *keyword; ScanKeyword *keyword;