Re: kdelibs compile failure in khtml/css (HELP PLEASE)
Shawn <[email protected]> 21 Feb 2003 14:33:46 -0600
| Newsgroups | gmane.comp.kde.alpha |
|---|---|
| Message-ID | <[email protected]> |
--=-EGFmxr10r4V2OzkcVIHd Content-Type: text/plain Content-Transfer-Encoding: 7bit Here's the kicker... Here's a cvs version summary, going from cvsup sources to the snapshot file. I take is that cvsup.kde.org is a crusty mirror of the cvs server? Is it that I'm in the US? Why is cvsup so crusty???!?!?!? I've attached the patch I generated. $ grep -e "\$Id" -e "^diff" css.cvsup-to-030221 diff -urN css.cvsup/css_base.cpp css.030221/css_base.cpp diff -urN css.cvsup/css_base.h css.030221/css_base.h - * $Id: css_base.h,v 1.5 2003/02/19 19:58:40 mueller Exp $ + * $Id: css_base.h,v 1.6 2003/02/20 21:09:45 knoll Exp $ diff -urN css.cvsup/cssparser.h css.030221/cssparser.h - * $Id: cssparser.h,v 1.68 2003/01/29 18:19:23 knoll Exp $ + * $Id: cssparser.h,v 1.69 2003/02/20 21:09:45 knoll Exp $ diff -urN css.cvsup/cssstyleselector.cpp css.030221/cssstyleselector.cpp diff -urN css.cvsup/parser.cpp css.030221/parser.cpp - * $Id: parser.cpp,v 1.21 2003/02/08 02:24:52 pmk Exp $ + * $Id: parser.cpp,v 1.22 2003/02/20 21:09:57 knoll Exp $ diff -urN css.cvsup/parser.h css.030221/parser.h diff -urN css.cvsup/parser.y css.030221/parser.y - * $Id: parser.y,v 1.16 2003/02/08 02:24:52 pmk Exp $ + * $Id: parser.y,v 1.18 2003/02/20 21:09:45 knoll Exp $ diff -urN css.cvsup/tokenizer.cpp css.030221/tokenizer.cpp - * $Id: tokenizer.cpp,v 1.6 2003/01/22 10:03:48 knoll Exp $ + * $Id: tokenizer.cpp,v 1.7 2003/02/20 21:09:57 knoll Exp $ diff -urN css.cvsup/tokenizer.flex css.030221/tokenizer.flex On Fri, 2003-02-21 at 14:17, Shawn wrote: > And stranger yet, the kdelibs-030221.tar.bz2 compiles. > > I looked, there's quite a diff between it and cvsup sources. What's the > deal??? > > On Fri, 2003-02-21 at 14:08, Shawn wrote: > > When the kdelibs build (cvsup'ed minutes ago) gets to khtml/css, the > > build dies like this. PLEASE HELP!!!!! > > > > gcc version 3.2 20020903 (Red Hat Linux 8.0 3.2-7) > > bison (GNU Bison) 1.875 > > > > make: Entering directory `/hdg/3/03data/kde/kdelibs/khtml/css' > > if /bin/sh ../../libtool --silent --mode=compile --tag=CXX g++ > > -DHAVE_CONFIG_H -I. -I. -I../.. -I../../kimgio -I../../kio -I../../dcop > > -I../../khtml -I../../libltdl -I../.. -I../../dcop -I../../libltdl > > -I../../kdefx -I../../kdecore -I../../kdeui -I../../kio -I../../kio/kio > > -I../../kio/kfile -I../.. -I/opt/garnome/include -I/usr/X11R6/include > > -DQT_THREAD_SUPPORT -D_REENTRANT -I/usr/include/pcre > > -Wnon-virtual-dtor -Wno-long-long -Wundef -Wall -pedantic -W > > -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -ansi > > -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion > > -Wchar-subscripts -O2 -Wformat-security -Wmissing-format-attribute > > -fno-exceptions -fno-check-new -fno-common -DQT_NO_TRANSLATION > > -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_COMPAT -MT > > libkhtmlcss_la.all_cpp.lo -MD -MP -MF ".deps/libkhtmlcss_la.all_cpp.Tpo" > > \ > > -c -o libkhtmlcss_la.all_cpp.lo `test -f 'libkhtmlcss_la.all_cpp.cpp' > > || echo './'`libkhtmlcss_la.all_cpp.cpp; \ > > then mv ".deps/libkhtmlcss_la.all_cpp.Tpo" > > ".deps/libkhtmlcss_la.all_cpp.Plo"; \ > > else rm -f ".deps/libkhtmlcss_la.all_cpp.Tpo"; exit 1; \ > > fi > > In file included from libkhtmlcss_la.all_cpp.cpp:9: > > parser.y:97: conflicting types for `typedef union YYSTYPE YYSTYPE' > > parser.h:19: previous declaration as `typedef union YYSTYPE YYSTYPE' > > make: *** [libkhtmlcss_la.all_cpp.lo] Error 1 > > make: Leaving directory `/hdg/3/03data/kde/kdelibs/khtml/css' > > > > _______________________________________________ > > kde3alpha mailing list > > [email protected] > > http://mail.kde.org/mailman/listinfo/kde3alpha > _______________________________________________ > kde3alpha mailing list > [email protected] > http://mail.kde.org/mailman/listinfo/kde3alpha --=-EGFmxr10r4V2OzkcVIHd Content-Description: Content-Disposition: inline; filename=css.cvsup-to-030221 Content-Type: text/x-patch; charset=ISO-8859-15 Content-Transfer-Encoding: quoted-printable diff -urN css.cvsup/css_base.cpp css.030221/css_base.cpp --- css.cvsup/css_base.cpp 2003-01-20 14:47:40.000000000 -0600 +++ css.030221/css_base.cpp 2003-02-20 17:31:45.000000000 -0600 @@ -135,7 +135,7 @@ if ( nonCSSHint ) return 0; =20 - int s =3D ((tag =3D=3D -1) ? 0 : 1); + int s =3D ((tag =3D=3D 0xffff) ? 0 : 1); switch(match) { case Id: @@ -231,26 +231,27 @@ =20 DOMString CSSSelector::selectorText() const { + // #### fix namespace DOMString str; const CSSSelector* cs =3D this; - if ( cs->tag =3D=3D -1 && cs->attr =3D=3D ATTR_ID && cs->match =3D=3D = CSSSelector::Exact ) + if ( cs->tag =3D=3D 0xffff && cs->attr =3D=3D ATTR_ID && cs->match =3D= =3D CSSSelector::Exact ) { str =3D "#"; str +=3D cs->value; } - else if ( cs->tag =3D=3D -1 && cs->attr =3D=3D ATTR_CLASS && cs->match= =3D=3D CSSSelector::List ) + else if ( cs->tag =3D=3D 0xffff && cs->attr =3D=3D ATTR_CLASS && cs->m= atch =3D=3D CSSSelector::List ) { str =3D "."; str +=3D cs->value; } - else if ( cs->tag =3D=3D -1 && cs->match =3D=3D CSSSelector::Pseudo ) + else if ( cs->tag =3D=3D 0xffff && cs->match =3D=3D CSSSelector::Pseud= o ) { str =3D ":"; str +=3D cs->value; } else { - if ( cs->tag =3D=3D -1 ) + if ( cs->tag =3D=3D 0xffff ) str =3D "*"; else str =3D getTagName( cs->tag ); diff -urN css.cvsup/css_base.h css.030221/css_base.h --- css.cvsup/css_base.h 2003-02-19 13:58:40.000000000 -0600 +++ css.030221/css_base.h 2003-02-20 17:31:45.000000000 -0600 @@ -20,7 +20,7 @@ * the Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. * - * $Id: css_base.h,v 1.5 2003/02/19 19:58:40 mueller Exp $ + * $Id: css_base.h,v 1.6 2003/02/20 21:09:45 knoll Exp $ */ #ifndef _CSS_BASE_H #define _CSS_BASE_H @@ -51,7 +51,7 @@ { public: CSSSelector() - : tagHistory(0), attr(0), tag(-1), relation( Descendant ), + : tagHistory(0), attr(0), tag(0xffff), relation( Descendant ), match( None ), nonCSSHint( false ), pseudoId( 0 ), _pseudoType(Pseu= doNotParsed) {} =20 ~CSSSelector() { @@ -125,8 +125,8 @@ =20 mutable DOM::DOMString value; CSSSelector *tagHistory; - int attr; - int tag; + unsigned int attr; + unsigned int tag; =20 Relation relation : 2; Match match : 4; diff -urN css.cvsup/cssparser.h css.030221/cssparser.h --- css.cvsup/cssparser.h 2003-01-29 12:19:23.000000000 -0600 +++ css.030221/cssparser.h 2003-02-20 17:31:45.000000000 -0600 @@ -3,7 +3,7 @@ * * Copyright (C) 2003 Lars Knoll ([email protected]) * - * $Id: cssparser.h,v 1.68 2003/01/29 18:19:23 knoll Exp $ + * $Id: cssparser.h,v 1.69 2003/02/20 21:09:45 knoll Exp $ * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -54,7 +54,7 @@ }; =20 struct Value { - int id; + unsigned int id; union { double fValue; int iValue; @@ -127,7 +127,7 @@ bool strict; bool important; bool nonCSSHint; - int id; + unsigned int id; DOM::StyleListImpl *styleElement; DOM::CSSRuleImpl *rule; ValueList *valueList; diff -urN css.cvsup/cssstyleselector.cpp css.030221/cssstyleselector.cpp --- css.cvsup/cssstyleselector.cpp 2003-02-16 04:54:10.000000000 -0600 +++ css.030221/cssstyleselector.cpp 2003-02-20 17:31:45.000000000 -0600 @@ -540,7 +540,7 @@ =20 // hack. We can't allow :hover, as it would trigger a complete // relayout with every mouse event. - bool single =3D ( sel->tag =3D=3D -1 ); + bool single =3D ( (sel->tag & 0xffff) =3D=3D 0xffff ); =20 bool affectedByHover =3D style->affectedByHoverRules(); =20 @@ -551,7 +551,7 @@ CSSSelector::Relation relation =3D sel->relation; while((sel =3D sel->tagHistory)) { - if (strictParsing || sel->tag !=3D -1) single =3D false; + if (strictParsing || (sel->tag & 0xffff) !=3D 0xffff) single =3D f= alse; if(!n->isElementNode()) return; switch(relation) { @@ -695,7 +695,8 @@ // sel->print(); =20 =20 - if((e->id() & NodeImpl_IdLocalMask) !=3D uint(sel->tag) && sel->tag != =3D -1) return false; + // ###### fix namespace + if((e->id() & NodeImpl_IdLocalMask) !=3D uint(sel->tag) && sel->tag != =3D 0xffff) return false; =20 if(sel->attr) { diff -urN css.cvsup/parser.cpp css.030221/parser.cpp --- css.cvsup/parser.cpp 2003-02-07 20:24:52.000000000 -0600 +++ css.030221/parser.cpp 2003-02-20 17:31:46.000000000 -0600 @@ -1,6 +1,5 @@ - -/* A Bison parser, made from parser.y - by GNU Bison version 1.28 */ +/* A Bison parser, made from parser.y + by GNU bison 1.33. */ =20 #define YYBISON 1 /* Identify Bison output. */ =20 @@ -11,47 +10,48 @@ #define yychar cssyychar #define yydebug cssyydebug #define yynerrs cssyynerrs -#define S 257 -#define SGML_CD 258 -#define INCLUDES 259 -#define DASHMATCH 260 -#define BEGINSWITH 261 -#define ENDSWITH 262 -#define CONTAINS 263 -#define STRING 264 -#define IDENT 265 -#define HASH 266 -#define IMPORT_SYM 267 -#define PAGE_SYM 268 -#define MEDIA_SYM 269 -#define FONT_FACE_SYM 270 -#define CHARSET_SYM 271 -#define KONQ_RULE_SYM 272 -#define KONQ_DECLS_SYM 273 -#define KONQ_VALUE_SYM 274 -#define IMPORTANT_SYM 275 -#define QEMS 276 -#define EMS 277 -#define EXS 278 -#define PXS 279 -#define CMS 280 -#define MMS 281 -#define INS 282 -#define PTS 283 -#define PCS 284 -#define DEGS 285 -#define RADS 286 -#define GRADS 287 -#define MSECS 288 -#define SECS 289 -#define HERZ 290 -#define KHERZ 291 -#define DIMEN 292 -#define PERCENTAGE 293 -#define NUMBER 294 -#define URI 295 -#define FUNCTION 296 -#define UNICODERANGE 297 +# define S 257 +# define SGML_CD 258 +# define INCLUDES 259 +# define DASHMATCH 260 +# define BEGINSWITH 261 +# define ENDSWITH 262 +# define CONTAINS 263 +# define STRING 264 +# define IDENT 265 +# define HASH 266 +# define IMPORT_SYM 267 +# define PAGE_SYM 268 +# define MEDIA_SYM 269 +# define FONT_FACE_SYM 270 +# define CHARSET_SYM 271 +# define NAMESPACE_SYM 272 +# define KONQ_RULE_SYM 273 +# define KONQ_DECLS_SYM 274 +# define KONQ_VALUE_SYM 275 +# define IMPORTANT_SYM 276 +# define QEMS 277 +# define EMS 278 +# define EXS 279 +# define PXS 280 +# define CMS 281 +# define MMS 282 +# define INS 283 +# define PTS 284 +# define PCS 285 +# define DEGS 286 +# define RADS 287 +# define GRADS 288 +# define MSECS 289 +# define SECS 290 +# define HERZ 291 +# define KHERZ 292 +# define DIMEN 293 +# define PERCENTAGE 294 +# define NUMBER 295 +# define URI 296 +# define FUNCTION 297 +# define UNICODERANGE 298 =20 #line 1 "parser.y" =20 @@ -74,7 +74,7 @@ * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 = USA * - * $Id: parser.cpp,v 1.21 2003/02/08 02:24:52 pmk Exp $ + * $Id: parser.cpp,v 1.22 2003/02/20 21:09:57 knoll Exp $ */ =20 #ifdef HAVE_CONFIG_H @@ -130,6 +130,7 @@ #define YYPARSE_PARAM parser =20 #line 79 "parser.y" +#ifndef YYSTYPE typedef union { CSSRuleImpl *rule; CSSSelector *selector; @@ -142,13 +143,15 @@ float val; int prop_id; int attribute; - int element; + unsigned int element; CSSSelector::Relation relation; bool b; char tok; Value value; ValueList *valueList; -} YYSTYPE; +} yystype; +# define YYSTYPE yystype +#endif #line 99 "parser.y" =20 =20 @@ -166,355 +169,438 @@ } =20 =20 -#include <stdio.h> - -#ifndef __cplusplus -#ifndef __STDC__ -#define const -#endif +#ifndef YYDEBUG +# define YYDEBUG 0 #endif =20 =20 =20 -#define YYFINAL 258 +#define YYFINAL 284 #define YYFLAG -32768 -#define YYNTBASE 60 +#define YYNTBASE 62 =20 -#define YYTRANSLATE(x) ((unsigned)(x) <=3D 297 ? yytranslate[x] : 109) +/* YYTRANSLATE(YYLEX) -- Bison token number corresponding to YYLEX. */ +#define YYTRANSLATE(x) ((unsigned)(x) <=3D 298 ? yytranslate[x] : 118) =20 -static const char yytranslate[] =3D { 0, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 57, 54, 51, 50, 53, 14, 58, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 13, 49, 2, - 56, 52, 2, 59, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 15, 2, 55, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 47, 2, 48, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 1, 3, 4, 5, 6, - 7, 8, 9, 10, 11, 12, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46 +/* YYTRANSLATE[YYLEX] -- Bison token number corresponding to YYLEX. */ +static const char yytranslate[] =3D +{ + 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 59, 17, 54, 53, 56, 14, 60, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 13, 52, + 2, 58, 55, 2, 61, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 15, 2, 57, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 50, 16, 51, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 1, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49 }; =20 -#if YYDEBUG !=3D 0 -static const short yyprhs[] =3D { 0, - 0, 5, 8, 11, 14, 21, 27, 33, 34, 37, - 38, 41, 44, 45, 51, 55, 59, 60, 64, 65, - 69, 71, 73, 75, 77, 79, 81, 88, 92, 96, - 98, 100, 101, 103, 108, 116, 118, 123, 124, 128, - 131, 135, 139, 143, 147, 150, 153, 154, 156, 158, - 164, 166, 171, 173, 177, 180, 184, 187, 189, 191, - 193, 196, 198, 200, 202, 204, 207, 210, 215, 224, - 226, 228, 230, 232, 234, 236, 238, 240, 243, 250, - 252, 255, 257, 261, 263, 267, 271, 277, 282, 287, - 294, 300, 303, 306, 307, 309, 313, 316, 319, 320, - 322, 325, 328, 331, 334, 337, 339, 341, 344, 347, - 350, 353, 356, 359, 362, 365, 368, 371, 374, 377, - 380, 383, 386, 389, 392, 395, 398, 404, 407, 411, - 415, 418, 424, 428, 430 +#if YYDEBUG +static const short yyprhs[] =3D +{ + 0, 0, 6, 9, 12, 15, 22, 28, 34, 35, + 38, 39, 42, 45, 46, 52, 56, 60, 61, 65, + 72, 76, 80, 81, 84, 91, 93, 94, 97, 98, + 102, 104, 106, 108, 110, 112, 114, 116, 118, 119, + 121, 123, 128, 131, 139, 140, 144, 147, 151, 155, + 159, 163, 166, 169, 170, 172, 174, 180, 182, 187, + 190, 192, 196, 199, 202, 206, 209, 212, 214, 216, + 219, 222, 224, 226, 228, 231, 234, 236, 238, 240, + 242, 245, 248, 250, 253, 258, 267, 269, 271, 273, + 275, 277, 279, 281, 283, 286, 293, 295, 298, 300, + 304, 306, 310, 314, 320, 325, 330, 337, 343, 346, + 349, 350, 352, 356, 359, 362, 365, 366, 368, 371, + 374, 377, 380, 383, 385, 387, 390, 393, 396, 399, + 402, 405, 408, 411, 414, 417, 420, 423, 426, 429, + 432, 435, 438, 441, 444, 450, 453, 457, 461, 464, + 470, 474, 476 }; - -static const short yyrhs[] =3D { 66, - 65, 67, 68, 0, 61, 64, 0, 62, 64, 0, - 63, 64, 0, 21, 47, 64, 81, 64, 48, 0, - 22, 47, 64, 94, 48, 0, 23, 47, 64, 99, - 48, 0, 0, 64, 3, 0, 0, 65, 4, 0, - 65, 3, 0, 0, 20, 64, 10, 64, 49, 0, - 20, 1, 107, 0, 20, 1, 49, 0, 0, 67, - 70, 65, 0, 0, 68, 69, 65, 0, 81, 0, - 73, 0, 77, 0, 78, 0, 106, 0, 105, 0, - 16, 64, 71, 64, 72, 49, 0, 16, 1, 107, - 0, 16, 1, 49, 0, 10, 0, 44, 0, 0, - 76, 0, 72, 50, 64, 76, 0, 18, 64, 74, - 47, 64, 75, 48, 0, 76, 0, 72, 50, 64, - 76, 0, 0, 75, 81, 64, 0, 11, 64, 0, - 17, 1, 107, 0, 17, 1, 49, 0, 19, 1, - 107, 0, 19, 1, 49, 0, 51, 64, 0, 52, - 64, 0, 0, 53, 0, 51, 0, 82, 47, 64, - 94, 48, 0, 83, 0, 82, 50, 64, 83, 0, - 84, 0, 83, 79, 84, 0, 85, 64, 0, 85, - 86, 64, 0, 86, 64, 0, 11, 0, 54, 0, - 87, 0, 86, 87, 0, 12, 0, 88, 0, 90, - 0, 93, 0, 14, 11, 0, 11, 64, 0, 15, - 64, 89, 55, 0, 15, 64, 89, 91, 64, 92, - 64, 55, 0, 56, 0, 5, 0, 6, 0, 7, - 0, 8, 0, 9, 0, 11, 0, 10, 0, 13, - 11, 0, 13, 45, 64, 11, 64, 57, 0, 96, - 0, 95, 96, 0, 95, 0, 1, 108, 1, 0, - 1, 0, 96, 49, 64, 0, 1, 49, 64, 0, - 1, 108, 1, 49, 64, 0, 95, 96, 49, 64, - 0, 95, 1, 49, 64, 0, 95, 1, 108, 1, - 49, 64, 0, 97, 13, 64, 99, 98, 0, 11, - 64, 0, 24, 64, 0, 0, 101, 0, 99, 100, - 101, 0, 58, 64, 0, 50, 64, 0, 0, 102, - 0, 80, 102, 0, 10, 64, 0, 11, 64, 0, - 44, 64, 0, 46, 64, 0, 104, 0, 103, 0, - 43, 64, 0, 42, 64, 0, 28, 64, 0, 29, - 64, 0, 30, 64, 0, 31, 64, 0, 32, 64, - 0, 33, 64, 0, 34, 64, 0, 35, 64, 0, - 36, 64, 0, 37, 64, 0, 38, 64, 0, 39, - 64, 0, 40, 64, 0, 26, 64, 0, 25, 64, - 0, 27, 64, 0, 41, 64, 0, 45, 64, 99, - 57, 64, 0, 12, 64, 0, 59, 1, 107, 0, - 59, 1, 49, 0, 1, 107, 0, 47, 1, 108, - 1, 48, 0, 47, 1, 48, 0, 107, 0, 108, - 1, 107, 0 +static const short yyrhs[] =3D +{ + 68, 67, 69, 71, 75, 0, 63, 66, 0, 64, + 66, 0, 65, 66, 0, 24, 50, 66, 87, 66, + 51, 0, 25, 50, 66, 103, 51, 0, 26, 50, + 66, 108, 51, 0, 0, 66, 3, 0, 0, 67, + 4, 0, 67, 3, 0, 0, 22, 66, 10, 66, + 52, 0, 22, 1, 116, 0, 22, 1, 52, 0, + 0, 69, 70, 67, 0, 18, 66, 77, 66, 78, + 52, 0, 18, 1, 116, 0, 18, 1, 52, 0, + 0, 72, 67, 0, 23, 66, 74, 77, 66, 52, + 0, 11, 0, 0, 73, 3, 0, 0, 75, 76, + 67, 0, 87, 0, 80, 0, 83, 0, 84, 0, + 115, 0, 114, 0, 10, 0, 47, 0, 0, 79, + 0, 82, 0, 79, 53, 66, 82, 0, 79, 1, + 0, 20, 66, 79, 50, 66, 81, 51, 0, 0, + 81, 87, 66, 0, 11, 66, 0, 19, 1, 116, + 0, 19, 1, 52, 0, 21, 1, 116, 0, 21, + 1, 52, 0, 54, 66, 0, 55, 66, 0, 0, + 56, 0, 54, 0, 88, 50, 66, 103, 51, 0, + 89, 0, 88, 53, 66, 89, 0, 88, 1, 0, + 90, 0, 89, 85, 90, 0, 89, 1, 0, 91, + 66, 0, 91, 94, 66, 0, 94, 66, 0, 92, + 93, 0, 93, 0, 16, 0, 11, 16, 0, 17, + 16, 0, 11, 0, 17, 0, 95, 0, 94, 95, + 0, 94, 1, 0, 12, 0, 96, 0, 99, 0, + 102, 0, 14, 11, 0, 92, 98, 0, 98, 0, + 11, 66, 0, 15, 66, 97, 57, 0, 15, 66, + 97, 100, 66, 101, 66, 57, 0, 58, 0, 5, + 0, 6, 0, 7, 0, 8, 0, 9, 0, 11, + 0, 10, 0, 13, 11, 0, 13, 48, 66, 11, + 66, 59, 0, 105, 0, 104, 105, 0, 104, 0, + 1, 117, 1, 0, 1, 0, 105, 52, 66, 0, + 1, 52, 66, 0, 1, 117, 1, 52, 66, 0, + 104, 105, 52, 66, 0, 104, 1, 52, 66, 0, + 104, 1, 117, 1, 52, 66, 0, 106, 13, 66, + 108, 107, 0, 11, 66, 0, 27, 66, 0, 0, + 110, 0, 108, 109, 110, 0, 108, 1, 0, 60, + 66, 0, 53, 66, 0, 0, 111, 0, 86, 111, + 0, 10, 66, 0, 11, 66, 0, 47, 66, 0, + 49, 66, 0, 113, 0, 112, 0, 46, 66, 0, + 45, 66, 0, 31, 66, 0, 32, 66, 0, 33, + 66, 0, 34, 66, 0, 35, 66, 0, 36, 66, + 0, 37, 66, 0, 38, 66, 0, 39, 66, 0, + 40, 66, 0, 41, 66, 0, 42, 66, 0, 43, + 66, 0, 29, 66, 0, 28, 66, 0, 30, 66, + 0, 44, 66, 0, 48, 66, 108, 59, 66, 0, + 12, 66, 0, 61, 1, 116, 0, 61, 1, 52, + 0, 1, 116, 0, 50, 1, 117, 1, 51, 0, + 50, 1, 51, 0, 116, 0, 117, 1, 116, 0 }; =20 #endif =20 -#if YYDEBUG !=3D 0 -static const short yyrline[] =3D { 0, - 225, 227, 228, 229, 232, 239, 245, 270, 272, 275, - 277, 278, 281, 283, 288, 289, 292, 294, 305, 307, - 317, 319, 320, 321, 322, 323, 326, 337, 340, 345, - 347, 350, 354, 358, 365, 379, 384, 391, 393, 402, - 424, 428, 433, 437, 442, 444, 445, 448, 450, 453, - 473, 487, 503, 507, 514, 519, 523, 529, 546, 551, - 556, 564, 571, 572, 573, 576, 585, 605, 611, 619, - 623, 626, 629, 632, 635, 640, 642, 645, 651, 659, - 663, 668, 671, 677, 685, 689, 695, 701, 706, 712, - 720, 743, 750, 752, 755, 760, 773, 777, 780, 785, - 787, 788, 789, 795, 796, 797, 799, 804, 806, 807, - 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, - 818, 819, 820, 821, 822, 823, 827, 842, 849, 856, - 864, 890, 892, 895, 897 +#if YYDEBUG +/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ +static const short yyrline[] =3D +{ + 0, 233, 235, 236, 237, 240, 247, 253, 278, 280, + 283, 285, 286, 289, 291, 296, 297, 300, 302, 312, + 323, 326, 332, 333, 337, 341, 344, 346, 349, 351, + 361, 363, 364, 365, 366, 367, 370, 372, 375, 379, + 383, 388, 392, 399, 414, 416, 425, 447, 451, 456, + 460, 465, 467, 468, 471, 473, 476, 496, 510, 524, + 530, 534, 539, 545, 550, 554, 560, 562, 565, 567, + 568, 572, 589, 592, 597, 603, 609, 616, 617, 618, + 621, 630, 632, 635, 655, 661, 669, 673, 676, 679, + 682, 685, 690, 692, 695, 701, 709, 713, 718, 721, + 727, 735, 739, 745, 751, 756, 762, 770, 793, 800, + 802, 805, 810, 821, 827, 831, 834, 839, 841, 842, + 843, 849, 850, 851, 853, 858, 860, 861, 862, 863, + 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, + 874, 875, 876, 877, 881, 896, 903, 910, 918, 944, + 946, 949, 951 }; #endif =20 =20 -#if YYDEBUG !=3D 0 || defined (YYERROR_VERBOSE) +#if (YYDEBUG) || defined YYERROR_VERBOSE =20 -static const char * const yytname[] =3D { "$","error","$undefined.","S",= "SGML_CD", -"INCLUDES","DASHMATCH","BEGINSWITH","ENDSWITH","CONTAINS","STRING","IDENT"= ,"HASH", -"':'","'.'","'['","IMPORT_SYM","PAGE_SYM","MEDIA_SYM","FONT_FACE_SYM","CHA= RSET_SYM", -"KONQ_RULE_SYM","KONQ_DECLS_SYM","KONQ_VALUE_SYM","IMPORTANT_SYM","QEMS","= EMS", -"EXS","PXS","CMS","MMS","INS","PTS","PCS","DEGS","RADS","GRADS","MSECS","S= ECS", -"HERZ","KHERZ","DIMEN","PERCENTAGE","NUMBER","URI","FUNCTION","UNICODERANG= E", -"'{'","'}'","';'","','","'+'","'>'","'-'","'*'","']'","'=3D'","')'","'/'",= "'@'", -"stylesheet","konq_rule","konq_decls","konq_value","maybe_space","maybe_sg= ml", -"maybe_charset","import_list","rule_list","rule","import","string_or_uri",= "media_list", -"media","media_list2","ruleset_list","medium","page","font_face","combinat= or", -"unary_operator","ruleset","selector_list","selector","simple_selector","e= lement_name", -"specifier_list","specifier","class","attrib_id","attrib","match","ident_o= r_string", -"pseudo","declaration_list","decl_list","declaration","property","prio","e= xpr", -"operator","term","unary_term","function","hexcolor","invalid_at","invalid= _rule", -"invalid_block","invalid_block_list", NULL +/* YYTNAME[TOKEN_NUM] -- String name of the token TOKEN_NUM. */ +static const char *const yytname[] =3D +{ + "$", "error", "$undefined.", "S", "SGML_CD", "INCLUDES", "DASHMATCH",=20 + "BEGINSWITH", "ENDSWITH", "CONTAINS", "STRING", "IDENT", "HASH", "':'",=20 + "'.'", "'['", "'|'", "'*'", "IMPORT_SYM", "PAGE_SYM", "MEDIA_SYM",=20 + "FONT_FACE_SYM", "CHARSET_SYM", "NAMESPACE_SYM", "KONQ_RULE_SYM",=20 + "KONQ_DECLS_SYM", "KONQ_VALUE_SYM", "IMPORTANT_SYM", "QEMS", "EMS",=20 + "EXS", "PXS", "CMS", "MMS", "INS", "PTS", "PCS", "DEGS", "RADS",=20 + "GRADS", "MSECS", "SECS", "HERZ", "KHERZ", "DIMEN", "PERCENTAGE",=20 + "NUMBER", "URI", "FUNCTION", "UNICODERANGE", "'{'", "'}'", "';'", "','",= =20 + "'+'", "'>'", "'-'", "']'", "'=3D'", "')'", "'/'", "'@'", "stylesheet",=20 + "konq_rule", "konq_decls", "konq_value", "maybe_space", "maybe_sgml",=20 + "maybe_charset", "import_list", "import", "maybe_namespace",=20 + "namespace", "ns_prefix", "maybe_ns_prefix", "rule_list", "rule",=20 + "string_or_uri", "maybe_media_list", "media_list", "media",=20 + "ruleset_list", "medium", "page", "font_face", "combinator",=20 + "unary_operator", "ruleset", "selector_list", "selector",=20 + "simple_selector", "ns_element", "ns_selector", "element_name",=20 + "specifier_list", "specifier", "class", "ns_attrib_id", "attrib_id",=20 + "attrib", "match", "ident_or_string", "pseudo", "declaration_list",=20 + "decl_list", "declaration", "property", "prio", "expr", "operator",=20 + "term", "unary_term", "function", "hexcolor", "invalid_at",=20 + "invalid_rule", "invalid_block", "invalid_block_list", 0 }; #endif =20 -static const short yyr1[] =3D { 0, - 60, 60, 60, 60, 61, 62, 63, 64, 64, 65, - 65, 65, 66, 66, 66, 66, 67, 67, 68, 68, - 69, 69, 69, 69, 69, 69, 70, 70, 70, 71, - 71, 72, 72, 72, 73, 74, 74, 75, 75, 76, - 77, 77, 78, 78, 79, 79, 79, 80, 80, 81, - 82, 82, 83, 83, 84, 84, 84, 85, 85, 86, - 86, 87, 87, 87, 87, 88, 89, 90, 90, 91, - 91, 91, 91, 91, 91, 92, 92, 93, 93, 94, - 94, 94, 94, 94, 95, 95, 95, 95, 95, 95, - 96, 97, 98, 98, 99, 99, 100, 100, 100, 101, - 101, 101, 101, 101, 101, 101, 101, 102, 102, 102, - 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, - 102, 102, 102, 102, 102, 102, 103, 104, 105, 105, - 106, 107, 107, 108, 108 +/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ +static const short yyr1[] =3D +{ + 0, 62, 62, 62, 62, 63, 64, 65, 66, 66, + 67, 67, 67, 68, 68, 68, 68, 69, 69, 70, + 70, 70, 71, 71, 72, 73, 74, 74, 75, 75, + 76, 76, 76, 76, 76, 76, 77, 77, 78, 78, + 79, 79, 79, 80, 81, 81, 82, 83, 83, 84, + 84, 85, 85, 85, 86, 86, 87, 88, 88, 88, + 89, 89, 89, 90, 90, 90, 91, 91, 92, 92, + 92, 93, 93, 94, 94, 94, 95, 95, 95, 95, + 96, 97, 97, 98, 99, 99, 100, 100, 100, 100, + 100, 100, 101, 101, 102, 102, 103, 103, 103, 103, + 103, 104, 104, 104, 104, 104, 104, 105, 106, 107, + 107, 108, 108, 108, 109, 109, 109, 110, 110, 110, + 110, 110, 110, 110, 110, 111, 111, 111, 111, 111, + 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, + 111, 111, 111, 111, 112, 113, 114, 114, 115, 116, + 116, 117, 117 }; =20 -static const short yyr2[] =3D { 0, - 4, 2, 2, 2, 6, 5, 5, 0, 2, 0, - 2, 2, 0, 5, 3, 3, 0, 3, 0, 3, - 1, 1, 1, 1, 1, 1, 6, 3, 3, 1, - 1, 0, 1, 4, 7, 1, 4, 0, 3, 2, - 3, 3, 3, 3, 2, 2, 0, 1, 1, 5, - 1, 4, 1, 3, 2, 3, 2, 1, 1, 1, - 2, 1, 1, 1, 1, 2, 2, 4, 8, 1, - 1, 1, 1, 1, 1, 1, 1, 2, 6, 1, - 2, 1, 3, 1, 3, 3, 5, 4, 4, 6, - 5, 2, 2, 0, 1, 3, 2, 2, 0, 1, - 2, 2, 2, 2, 2, 1, 1, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 5, 2, 3, 3, - 2, 5, 3, 1, 3 +/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. *= / +static const short yyr2[] =3D +{ + 0, 5, 2, 2, 2, 6, 5, 5, 0, 2, + 0, 2, 2, 0, 5, 3, 3, 0, 3, 6, + 3, 3, 0, 2, 6, 1, 0, 2, 0, 3, + 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, + 1, 4, 2, 7, 0, 3, 2, 3, 3, 3, + 3, 2, 2, 0, 1, 1, 5, 1, 4, 2, + 1, 3, 2, 2, 3, 2, 2, 1, 1, 2, + 2, 1, 1, 1, 2, 2, 1, 1, 1, 1, + 2, 2, 1, 2, 4, 8, 1, 1, 1, 1, + 1, 1, 1, 1, 2, 6, 1, 2, 1, 3, + 1, 3, 3, 5, 4, 4, 6, 5, 2, 2, + 0, 1, 3, 2, 2, 2, 0, 1, 2, 2, + 2, 2, 2, 1, 1, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 5, 2, 3, 3, 2, 5, + 3, 1, 3 }; =20 -static const short yydefact[] =3D { 13, - 0, 0, 0, 0, 8, 8, 8, 10, 0, 0, - 8, 8, 8, 2, 3, 4, 17, 0, 16, 15, - 9, 8, 0, 0, 0, 12, 11, 19, 0, 0, - 58, 62, 0, 0, 8, 59, 8, 0, 47, 53, - 8, 8, 60, 63, 64, 65, 84, 8, 0, 0, - 80, 0, 8, 8, 8, 8, 8, 8, 8, 8, - 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, - 8, 8, 8, 8, 8, 8, 8, 49, 48, 0, - 99, 95, 100, 107, 106, 0, 0, 10, 133, 134, - 0, 14, 78, 8, 66, 0, 0, 8, 8, 8, - 8, 0, 55, 8, 57, 61, 8, 0, 92, 6, - 0, 81, 8, 8, 102, 103, 128, 124, 123, 125, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 126, 109, 108, 104, 0, 105, 101, - 7, 8, 8, 0, 0, 0, 0, 0, 8, 0, - 0, 10, 22, 23, 24, 21, 26, 25, 18, 0, - 0, 8, 0, 5, 0, 0, 45, 46, 54, 56, - 86, 83, 8, 0, 8, 85, 0, 99, 98, 97, - 96, 29, 28, 30, 31, 8, 131, 0, 32, 0, - 0, 20, 132, 135, 8, 67, 71, 72, 73, 74, - 75, 68, 70, 8, 0, 47, 8, 89, 0, 88, - 99, 8, 32, 42, 41, 8, 0, 0, 33, 44, - 43, 130, 129, 0, 0, 50, 87, 8, 8, 91, - 127, 0, 33, 40, 8, 8, 79, 77, 76, 8, - 90, 93, 27, 8, 0, 38, 0, 0, 34, 0, - 69, 34, 35, 8, 39, 0, 0, 0 +/* YYDEFACT[S] -- default rule to reduce with in state S when YYTABLE + doesn't specify something else to do. Zero means the default is an + error. */ +static const short yydefact[] =3D +{ + 13, 0, 0, 0, 0, 8, 8, 8, 10, 0, + 0, 8, 8, 8, 2, 3, 4, 17, 0, 16, + 15, 9, 8, 0, 0, 0, 12, 11, 22, 0, + 0, 71, 76, 0, 0, 8, 68, 72, 8, 0, + 0, 60, 8, 0, 67, 0, 73, 77, 78, 79, + 100, 8, 0, 0, 96, 0, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 55, 54, 0, 0, 111, 117, 124, 123, 0, + 8, 10, 28, 10, 150, 151, 0, 14, 69, 94, + 8, 80, 0, 70, 0, 59, 8, 8, 62, 8, + 8, 0, 63, 0, 71, 72, 66, 75, 65, 74, + 8, 0, 108, 6, 0, 97, 8, 8, 119, 120, + 145, 141, 140, 142, 127, 128, 129, 130, 131, 132, + 133, 134, 135, 136, 137, 138, 139, 143, 126, 125, + 121, 0, 122, 118, 113, 7, 8, 8, 0, 0, + 0, 26, 18, 0, 23, 0, 0, 8, 0, 0, + 0, 82, 5, 0, 0, 51, 52, 61, 64, 102, + 99, 8, 0, 8, 101, 0, 0, 115, 114, 112, + 21, 20, 36, 37, 8, 25, 0, 0, 0, 0, + 8, 0, 0, 10, 31, 32, 33, 30, 35, 34, + 149, 152, 8, 83, 8, 81, 87, 88, 89, 90, + 91, 84, 86, 8, 0, 0, 8, 105, 0, 104, + 0, 8, 38, 27, 8, 148, 0, 0, 0, 0, + 29, 0, 0, 56, 103, 8, 8, 107, 144, 8, + 0, 0, 40, 0, 48, 47, 0, 50, 49, 147, + 146, 95, 93, 92, 8, 106, 109, 46, 19, 42, + 8, 24, 8, 0, 0, 44, 85, 41, 0, 43, + 8, 45, 0, 0, 0 }; =20 -static const short yydefgoto[] =3D { 256, - 5, 6, 7, 10, 17, 8, 28, 87, 152, 88, - 186, 217, 153, 218, 250, 219, 154, 155, 102, 80, - 37, 38, 39, 40, 41, 42, 43, 44, 163, 45, - 204, 240, 46, 49, 50, 51, 52, 230, 81, 144, - 82, 83, 84, 85, 157, 158, 90, 91 +static const short yydefgoto[] =3D +{ + 282, 5, 6, 7, 213, 17, 8, 28, 91, 92, + 93, 196, 197, 163, 203, 194, 250, 251, 204, 278, + 252, 205, 206, 111, 83, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 170, 171, 48, 223, 264, + 49, 52, 53, 54, 55, 247, 84, 158, 85, 86, + 87, 88, 208, 209, 95, 96 }; =20 -static const short yypact[] =3D { 175, - 32, -36, -9, -3,-32768,-32768,-32768,-32768, 93, 97, --32768,-32768,-32768, 79, 79, 79, 152, 87,-32768,-32768, --32768,-32768, 117, 13, 226,-32768,-32768, 81, 153, 31, --32768,-32768, 80, 92,-32768,-32768,-32768, 51, 128,-32768, - 200, 200,-32768,-32768,-32768,-32768, 96,-32768, 58, 30, - 77, 123,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 292, - -30,-32768,-32768,-32768,-32768, 173, 104,-32768,-32768,-32768, - 145,-32768,-32768,-32768,-32768, 12, 42,-32768,-32768,-32768, --32768, 137, 79, 200, 79,-32768,-32768, 176, 79,-32768, - 115, 138,-32768,-32768, 79, 79, 79, 79, 79, 79, - 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, - 79, 79, 79, 79, 79, 79, 79, 226, 79,-32768, --32768,-32768,-32768, 263, 139, 2, 158, 208,-32768, 219, - 221,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 152, 185, - 18,-32768, 78,-32768, 13, 117, 79, 79,-32768, 79, - 79, 157,-32768, 225,-32768, 79, 226, -31, 79, 79, --32768,-32768,-32768,-32768,-32768,-32768,-32768, 161, 36, 169, - 172, 152,-32768,-32768,-32768, 79,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768, 180, 142,-32768, 79, 178, 79, - 111,-32768, 36,-32768,-32768,-32768, 184, 195, 196,-32768, --32768,-32768,-32768, 19, 162,-32768, 79,-32768,-32768,-32768, - 79, 191,-32768, 79,-32768,-32768,-32768,-32768,-32768,-32768, - 79, 79,-32768,-32768, 36, 79, 22, 36, 197, 99, --32768,-32768,-32768,-32768, 79, 245, 246,-32768 +static const short yypact[] =3D +{ + 98, 165, -10, 4, 60,-32768,-32768,-32768,-32768, 119, + 6,-32768,-32768,-32768, 49, 49, 49, 150, 120,-32768, + -32768,-32768,-32768, 310, 19, 411,-32768,-32768, 5, 217, + 33, 141,-32768, 91, 124,-32768,-32768, 151,-32768, 34, + 173,-32768, 182, 159,-32768, 148,-32768,-32768,-32768,-32768, + 127,-32768, 121, 2, 131, 179,-32768,-32768,-32768,-32768, + -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, + -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, + -32768,-32768,-32768, 480, 308,-32768,-32768,-32768,-32768, 93, + -32768,-32768,-32768,-32768,-32768,-32768, 199,-32768,-32768,-32768, + -32768,-32768, 15,-32768, 35,-32768,-32768,-32768,-32768,-32768, + -32768, 223, 49, 148,-32768,-32768,-32768,-32768, 49,-32768, + -32768, 208, 49,-32768, 155, 161,-32768,-32768, 49, 49, + 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, + 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, + 49, 411, 49,-32768,-32768,-32768,-32768,-32768, 451, 156, + 101, 16, 150, 117, 150, 222, 22, 141, 151, 213, + 40,-32768,-32768, 19, 310, 49, 49,-32768, 49, 49, + 160,-32768, 241,-32768, 49, 411, 359, 49, 49,-32768, + -32768,-32768,-32768,-32768,-32768,-32768, 243, 103, 201, 253, + -32768, 259, 261,-32768,-32768,-32768,-32768,-32768,-32768,-32768, + -32768,-32768,-32768, 49,-32768,-32768,-32768,-32768,-32768,-32768, + -32768,-32768,-32768,-32768, 219, 203,-32768, 49, 191, 49, + 254,-32768, 90,-32768,-32768,-32768, 197, 90, 200, 209, + 150, 21, 104,-32768, 49,-32768,-32768,-32768, 49,-32768, + 224, 38,-32768, 48,-32768,-32768, 42,-32768,-32768,-32768, + -32768,-32768,-32768,-32768,-32768, 49, 49, 49,-32768,-32768, + -32768,-32768,-32768, 26, 90, 49,-32768,-32768, 130,-32768, + -32768, 49, 274, 275,-32768 }; =20 -static const short yypgoto[] =3D {-32768, --32768,-32768,-32768, -5, -79,-32768,-32768,-32768,-32768,-32768, --32768, 34,-32768,-32768,-32768, -121,-32768,-32768,-32768,-32768, - -83,-32768, 82, 148,-32768, 235, -29,-32768,-32768,-32768, --32768,-32768,-32768, 113,-32768, 230,-32768,-32768, -98,-32768, - 140, 201,-32768,-32768,-32768,-32768, -6, -37 +static const short yypgoto[] =3D +{ + -32768,-32768,-32768,-32768, -1, -76,-32768,-32768,-32768,-32768, + -32768,-32768,-32768,-32768,-32768, 80,-32768, 41,-32768,-32768, + 30,-32768,-32768,-32768,-32768, -162,-32768, 106, 204,-32768, + 210, 268, 286, -31,-32768,-32768, 147,-32768,-32768,-32768, + -32768, 144,-32768, 276,-32768,-32768, -143,-32768, 172, 248, + -32768,-32768,-32768,-32768, -7, -43 }; =20 =20 -#define YYLAST 335 +#define YYLAST 526 =20 =20 -static const short yytable[] =3D { 14, - 15, 16, 20, 156, 21, 23, 24, 25, 159, 108, - 11, 184, 106, 47, 21, 21, 30, 141, 142, 142, - 21, 21, 162, 48, 21, 212, 143, 143, 195, 96, - 111, 97, 9, 21, -8, 103, 105, 12, 21, 178, - 48, -8, 109, 13, 21, 185, 216, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 192, 174, 106, 237, 251, -82, 211, 92, - 146, 21, 197, 198, 199, 200, 201, 29, 161, 164, - 93, 233, 165, 166, 167, 168, 86, 98, 170, 21, - 99, 171, 95, -1, 147, 110, 22, 176, 177, 31, - 32, 33, 34, 35, 31, 32, 33, 34, 35, 21, - 148, 149, 150, 249, 94, 113, 252, 31, 32, 33, - 34, 35, 202, 203, 229, 114, 179, 180, 183, 18, - 187, 19, 18, 189, 107, 160, 253, 31, 32, 33, - 34, 35, 36, 194, 26, 27, 196, 36, -94, -94, - 142, 18, 151, 173, 21, 194, 254, 208, 143, 210, - 36, 238, 239, 145, -51, -8, 172, -51, 100, 101, - 213, 215, -8, 221, 223, 18, 175, 182, -52, 224, - 36, -52, 100, 101, 1, 2, 3, 4, 225, 18, - 89, 227, 194, 18, 18, 207, 231, 18, 188, 214, - 234, 32, 33, 34, 35, 18, -8, 220, 18, 190, - 222, 191, 241, 242, 18, 209, 228, 226, 21, 245, - 246, 18, 193, 235, 247, 53, 54, 55, 248, 243, - 244, 236, -36, -37, 257, 258, 232, 206, 255, 169, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 53, 54, 55, 104, 78, 205, 79, 112, - 140, 0, 0, 181, 0, 0, 0, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, 74, 75, 76, 77, 0, - 0, 0, 0, 78, 0, 79, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74 +static const short yytable[] =3D +{ + 10, 207, 20, 124, 14, 15, 16, 121, 186, 21, + 23, 24, 25, 51, 119, 162, 22, 164, 21, 21, + 50, 30, 21, 89, 21, 21, 167, 195, 90, 21, + 51, 36, 168, 212, 102, 105, 21, 104, 21, 269, + 11, 112, 230, 269, 118, 216, 217, 218, 219, 220, + 122, 21, 21, -98, 12, 128, 129, 130, 131, 132, + 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, + 261, 182, 119, 276, 106, 97, 172, 107, 160, 161, + -39, 270, 272, 21, 159, 270, -8, 221, 222, 166, + 271, 249, 99, -8, 21, 173, 174, 21, 175, 176, + 13, 192, 178, 192, 262, 263, 280, -1, 198, 179, + 1, 29, 2, 3, 4, 184, 185, 240, 31, 32, + 33, 34, 35, 36, 37, 101, 199, 200, 201, 100, + -8, 31, 32, 33, 34, 35, 36, 37, 193, 117, + 193, -8, 191, 26, 27, 187, 188, 98, 211, -8, + 32, 33, 34, 35, -8, -8, 9, 103, -8, 18, + 114, 19, 123, 211, 108, -8, 115, 18, 202, 120, + 227, 279, 229, 126, -53, -53, -53, -53, -53, -53, + -53, 235, 127, 232, 32, 33, 34, 35, -8, 237, + 165, -8, -8, -8, 108, 18, 18, 181, 190, 180, + 18, 241, 226, 183, -53, -53, -53, -53, -53, -53, + -53, 211, 242, -57, 214, 244, -57, 109, 110, 255, + 248, 258, 260, 253, 31, 32, 33, 34, 35, 36, + 37, 18, 228, 245, 265, 266, 233, 18, 267, 254, + 18, 18, 257, -58, 236, 154, -58, 109, 110, 18, + 238, 259, 239, 273, -116, -116, -116, 18, 94, 274, + 243, 275, 18, 210, 283, 284, 268, 234, 256, 281, + 225, 246, -116, -116, -116, -116, -116, -116, -116, -116, + -116, -116, -116, -116, -116, -116, -116, -116, -116, -116, + -116, -116, -116, -116, 277, -110, -110, 156, -116, 154, + -116, 116, 169, 21, 157, 177, 215, 224, -116, -116, + -116, 31, 32, 33, 34, 35, 36, 37, 113, 125, + 189, 153, 0, 0, 0, 0, -116, -116, -116, -116, + -116, -116, -116, -116, -116, -116, -116, -116, -116, -116, + -116, -116, -116, -116, -116, -116, -116, -116, 0, 155, + 154, 156, -116, 0, -116, 0, 0, 0, 157, -116, + -116, -116, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -116, -116, -116, + -116, -116, -116, -116, -116, -116, -116, -116, -116, -116, + -116, -116, -116, -116, -116, -116, -116, -116, -116, 0, + 0, 0, 156, -116, 21, -116, 0, 0, 231, 157, + 0, 56, 57, 58, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, + 80, 56, 57, 58, 0, 81, 0, 82, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, + 80, 0, 0, 0, 0, 81, 0, 82, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 77 }; =20 -static const short yycheck[] =3D { 5, - 6, 7, 9, 87, 3, 11, 12, 13, 88, 47, - 47, 10, 42, 1, 3, 3, 22, 48, 50, 50, - 3, 3, 11, 11, 3, 57, 58, 58, 11, 35, - 1, 37, 1, 3, 3, 41, 42, 47, 3, 138, - 11, 10, 48, 47, 3, 44, 11, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 152, 111, 104, 57, 55, 48, 177, 49, - 86, 3, 5, 6, 7, 8, 9, 1, 94, 48, - 11, 213, 98, 99, 100, 101, 16, 47, 104, 3, - 50, 107, 11, 0, 1, 48, 10, 113, 114, 11, - 12, 13, 14, 15, 11, 12, 13, 14, 15, 3, - 17, 18, 19, 245, 45, 49, 248, 11, 12, 13, - 14, 15, 55, 56, 24, 13, 142, 143, 145, 47, - 147, 49, 47, 149, 49, 1, 48, 11, 12, 13, - 14, 15, 54, 160, 3, 4, 162, 54, 48, 49, - 50, 47, 59, 49, 3, 172, 250, 173, 58, 175, - 54, 10, 11, 1, 47, 3, 1, 50, 51, 52, - 186, 188, 10, 190, 191, 47, 49, 49, 47, 195, - 54, 50, 51, 52, 20, 21, 22, 23, 204, 47, - 48, 207, 209, 47, 47, 49, 212, 47, 1, 49, - 216, 12, 13, 14, 15, 47, 44, 49, 47, 1, - 49, 1, 228, 229, 47, 1, 49, 48, 3, 235, - 236, 47, 48, 50, 240, 10, 11, 12, 244, 49, - 50, 47, 47, 47, 0, 0, 213, 166, 254, 102, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 10, 11, 12, 41, 51, 165, 53, 50, - 80, -1, -1, 144, -1, -1, -1, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, -1, - -1, -1, -1, 51, -1, 53, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43 +static const short yycheck[] =3D +{ + 1, 163, 9, 1, 5, 6, 7, 50, 151, 3, + 11, 12, 13, 11, 45, 91, 10, 93, 3, 3, + 1, 22, 3, 18, 3, 3, 11, 11, 23, 3, + 11, 16, 17, 11, 35, 1, 3, 38, 3, 1, + 50, 42, 185, 1, 45, 5, 6, 7, 8, 9, + 51, 3, 3, 51, 50, 56, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 59, 124, 113, 57, 50, 52, 51, 53, 89, 90, + 52, 53, 50, 3, 1, 53, 3, 57, 58, 100, + 52, 11, 11, 10, 3, 106, 107, 3, 109, 110, + 50, 10, 113, 10, 10, 11, 278, 0, 1, 120, + 22, 1, 24, 25, 26, 126, 127, 203, 11, 12, + 13, 14, 15, 16, 17, 11, 19, 20, 21, 48, + 47, 11, 12, 13, 14, 15, 16, 17, 47, 1, + 47, 3, 159, 3, 4, 156, 157, 16, 165, 11, + 12, 13, 14, 15, 16, 17, 1, 16, 3, 50, + 11, 52, 51, 180, 1, 10, 17, 50, 61, 52, + 181, 51, 183, 52, 11, 12, 13, 14, 15, 16, + 17, 198, 13, 194, 12, 13, 14, 15, 50, 200, + 1, 53, 54, 55, 1, 50, 50, 52, 52, 1, + 50, 212, 52, 52, 11, 12, 13, 14, 15, 16, + 17, 228, 223, 50, 11, 226, 53, 54, 55, 236, + 231, 238, 239, 234, 11, 12, 13, 14, 15, 16, + 17, 50, 1, 52, 245, 246, 3, 50, 249, 52, + 50, 50, 52, 50, 1, 1, 53, 54, 55, 50, + 1, 52, 1, 264, 10, 11, 12, 50, 51, 270, + 51, 272, 50, 51, 0, 0, 52, 197, 237, 280, + 174, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 274, 51, 52, 53, 54, 1, + 56, 43, 102, 3, 60, 111, 169, 173, 10, 11, + 12, 11, 12, 13, 14, 15, 16, 17, 42, 53, + 158, 83, -1, -1, -1, -1, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, -1, 51, + 1, 53, 54, -1, 56, -1, -1, -1, 60, 10, + 11, 12, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, -1, + -1, -1, 53, 54, 3, 56, -1, -1, 59, 60, + -1, 10, 11, 12, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, 10, 11, 12, -1, 54, -1, 56, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, -1, -1, -1, -1, 54, -1, 56, 28, 29, + 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46 }; #define YYPURE 1 =20 /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ -#line 3 "/usr/lib/bison.simple" -/* This file comes from bison-1.28. */ +#line 3 "/usr/share/bison/bison.simple" =20 /* Skeleton output parser for bison, - Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc. + + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software + Foundation, Inc. =20 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -536,62 +622,128 @@ This special exception was added by the Free Software Foundation in version 1.24 of Bison. */ =20 -/* This is the parser code that is written into each bison parser - when the %semantic_parser declaration is not specified in the grammar. - It was written by Richard Stallman by simplifying the hairy parser - used when %semantic_parser is specified. */ - -#ifndef YYSTACK_USE_ALLOCA -#ifdef alloca -#define YYSTACK_USE_ALLOCA -#else /* alloca not defined */ -#ifdef __GNUC__ -#define YYSTACK_USE_ALLOCA -#define alloca __builtin_alloca -#else /* not GNU C. */ -#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || def= ined (__sparc) || defined (__sgi) || (defined (__sun) && defined (__i386)) -#define YYSTACK_USE_ALLOCA -#include <alloca.h> -#else /* not sparc */ -/* We think this test detects Watcom and Microsoft C. */ -/* This used to test MSDOS, but that is a bad idea - since that symbol is in the user namespace. */ -#if (defined (_MSDOS) || defined (_MSDOS_)) && !defined (__TURBOC__) -#if 0 /* No need for malloc.h, which pollutes the namespace; - instead, just don't use alloca. */ -#include <malloc.h> -#endif -#else /* not MSDOS, or __TURBOC__ */ -#if defined(_AIX) -/* I don't know what this was needed for, but it pollutes the namespace. - So I turned it off. rms, 2 May 1997. */ -/* #include <malloc.h> */ - #pragma alloca -#define YYSTACK_USE_ALLOCA -#else /* not MSDOS, or __TURBOC__, or _AIX */ -#if 0 -#ifdef __hpux /* [email protected] says this works for HPUX 9.05 and up, - and on HPUX 10. Eventually we can turn this on. */ -#define YYSTACK_USE_ALLOCA -#define alloca __builtin_alloca -#endif /* __hpux */ -#endif -#endif /* not _AIX */ -#endif /* not MSDOS, or __TURBOC__ */ -#endif /* not sparc */ -#endif /* not GNU C */ -#endif /* alloca not defined */ -#endif /* YYSTACK_USE_ALLOCA not defined */ +/* This is the parser code that is written into each bison parser when + the %semantic_parser declaration is not specified in the grammar. + It was written by Richard Stallman by simplifying the hairy parser + used when %semantic_parser is specified. */ + +/* All symbols defined below should begin with yy or YY, to avoid + infringing on user name space. This should be done even for local + variables, as they might otherwise be expanded by user macros. + There are some unavoidable exceptions within include files to + define necessary library symbols; they are noted "INFRINGES ON + USER NAME SPACE" below. */ =20 -#ifdef YYSTACK_USE_ALLOCA -#define YYSTACK_ALLOC alloca +#ifdef __cplusplus +# define YYSTD(x) std::x #else -#define YYSTACK_ALLOC malloc +# define YYSTD(x) x +#endif + +#ifndef YYPARSE_RETURN_TYPE +#define YYPARSE_RETURN_TYPE int #endif =20 -/* Note: there must be only one dollar sign in this file. - It is replaced by the list of actions, each action - as one case of the switch. */ +#if ! defined (yyoverflow) || defined (YYERROR_VERBOSE) + +/* The parser invokes alloca or malloc; define the necessary symbols. */ + +# if YYSTACK_USE_ALLOCA +# define YYSTACK_ALLOC alloca +# else +# ifndef YYSTACK_USE_ALLOCA +# if defined (alloca) || defined (_ALLOCA_H) +# define YYSTACK_ALLOC alloca +# else +# ifdef __GNUC__ +# define YYSTACK_ALLOC __builtin_alloca +# endif +# endif +# endif +# endif + +# ifdef YYSTACK_ALLOC + /* Pacify GCC's `empty if-body' warning. */ +# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) +# else +# ifdef __cplusplus +# include <cstdlib> /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T std::size_t +# else +# ifdef __STDC__ +# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T size_t +# endif +# endif +# define YYSTACK_ALLOC YYSTD (malloc) +# define YYSTACK_FREE YYSTD (free) +# endif + +/* A type that is properly aligned for any stack member. */ +union yyalloc +{ + short yyss; + YYSTYPE yyvs; +# if YYLSP_NEEDED + YYLTYPE yyls; +# endif +}; + +/* The size of the maximum gap between one aligned stack and the next. */ +# define YYSTACK_GAP_MAX (sizeof (union yyalloc) - 1) + +/* The size of an array large to enough to hold all stacks, each with + N elements. */ +# if YYLSP_NEEDED +# define YYSTACK_BYTES(N) \ + ((N) * (sizeof (short) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \ + + 2 * YYSTACK_GAP_MAX) +# else +# define YYSTACK_BYTES(N) \ + ((N) * (sizeof (short) + sizeof (YYSTYPE)) \ + + YYSTACK_GAP_MAX) +# endif + +/* Relocate the TYPE STACK from its old location to the new one. The + local variables YYSIZE and YYSTACKSIZE give the old and new number of + elements in the stack, and YYPTR gives the new location of the + stack. Advance YYPTR to a properly aligned location for the next + stack. */ +# define YYSTACK_RELOCATE(Type, Stack) \ + do \ + { \ + YYSIZE_T yynewbytes; \ + yymemcpy ((char *) yyptr, (char *) (Stack), \ + yysize * (YYSIZE_T) sizeof (Type)); \ + Stack =3D &yyptr->Stack; \ + yynewbytes =3D yystacksize * sizeof (Type) + YYSTACK_GAP_MAX; \ + yyptr +=3D yynewbytes / sizeof (*yyptr); \ + } \ + while (0) + +#endif /* ! defined (yyoverflow) || defined (YYERROR_VERBOSE) */ + + +#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) +# define YYSIZE_T __SIZE_TYPE__ +#endif +#if ! defined (YYSIZE_T) && defined (size_t) +# define YYSIZE_T size_t +#endif +#if ! defined (YYSIZE_T) +# ifdef __cplusplus +# include <cstddef> /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T std::size_t +# else +# ifdef __STDC__ +# include <stddef.h> /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T size_t +# endif +# endif +#endif +#if ! defined (YYSIZE_T) +# define YYSIZE_T unsigned int +#endif =20 #define yyerrok (yyerrstatus =3D 0) #define yyclearin (yychar =3D YYEMPTY) @@ -600,131 +752,194 @@ #define YYACCEPT goto yyacceptlab #define YYABORT goto yyabortlab #define YYERROR goto yyerrlab1 -/* Like YYERROR except do call yyerror. - This remains here temporarily to ease the - transition to the new meaning of YYERROR, for GCC. +/* Like YYERROR except do call yyerror. This remains here temporarily + to ease the transition to the new meaning of YYERROR, for GCC. Once GCC version 2 has supplanted version 1, this can go. */ #define YYFAIL goto yyerrlab #define YYRECOVERING() (!!yyerrstatus) -#define YYBACKUP(token, value) \ +#define YYBACKUP(Token, Value) \ do \ if (yychar =3D=3D YYEMPTY && yylen =3D=3D 1) \ - { yychar =3D (token), yylval =3D (value); \ + { \ + yychar =3D (Token); \ + yylval =3D (Value); \ yychar1 =3D YYTRANSLATE (yychar); \ YYPOPSTACK; \ goto yybackup; \ } \ else \ - { yyerror ("syntax error: cannot back up"); YYERROR; } \ + { \ + yyerror ("syntax error: cannot back up"); \ + YYERROR; \ + } \ while (0) =20 #define YYTERROR 1 #define YYERRCODE 256 =20 -#ifndef YYPURE -#define YYLEX yylex() -#endif - -#ifdef YYPURE -#ifdef YYLSP_NEEDED -#ifdef YYLEX_PARAM -#define YYLEX yylex(&yylval, &yylloc, YYLEX_PARAM) -#else -#define YYLEX yylex(&yylval, &yylloc) -#endif -#else /* not YYLSP_NEEDED */ -#ifdef YYLEX_PARAM -#define YYLEX yylex(&yylval, YYLEX_PARAM) -#else -#define YYLEX yylex(&yylval) -#endif -#endif /* not YYLSP_NEEDED */ -#endif - -/* If nonreentrant, generate the variables here */ =20 -#ifndef YYPURE +/* YYLLOC_DEFAULT -- Compute the default location (before the actions + are run). =20 -int yychar; /* the lookahead symbol */ -YYSTYPE yylval; /* the semantic value of the */ - /* lookahead symbol */ - -#ifdef YYLSP_NEEDED -YYLTYPE yylloc; /* location data for the lookahead */ - /* symbol */ + When YYLLOC_DEFAULT is run, CURRENT is set the location of the + first token. By default, to implement support for ranges, extend + its range to the last symbol. */ + +#ifndef YYLLOC_DEFAULT +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + Current.last_line =3D Rhs[N].last_line; \ + Current.last_column =3D Rhs[N].last_column; #endif =20 -int yynerrs; /* number of parse errors so far */ -#endif /* not YYPURE */ - -#if YYDEBUG !=3D 0 -int yydebug; /* nonzero means print parse trace */ -/* Since this is uninitialized, it does not stop multiple parsers - from coexisting. */ -#endif =20 -/* YYINITDEPTH indicates the initial size of the parser's stacks */ +/* YYLEX -- calling `yylex' with the right arguments. */ + +#if YYPURE +# if YYLSP_NEEDED +# ifdef YYLEX_PARAM +# define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM) +# else +# define YYLEX yylex (&yylval, &yylloc) +# endif +# else /* !YYLSP_NEEDED */ +# ifdef YYLEX_PARAM +# define YYLEX yylex (&yylval, YYLEX_PARAM) +# else +# define YYLEX yylex (&yylval) +# endif +# endif /* !YYLSP_NEEDED */ +#else /* !YYPURE */ +# define YYLEX yylex () +#endif /* !YYPURE */ + + +/* Enable debugging if requested. */ +#if YYDEBUG + +# ifndef YYFPRINTF +# ifdef __cplusplus +# include <cstdio> /* INFRINGES ON USER NAME SPACE */ +# else +# include <stdio.h> /* INFRINGES ON USER NAME SPACE */ +# endif +# define YYFPRINTF YYSTD (fprintf) +# endif + +# define YYDPRINTF(Args) \ +do { \ + if (yydebug) \ + YYFPRINTF Args; \ +} while (0) +/* Nonzero means print parse trace. [The following comment makes no + sense to me. Could someone clarify it? --akim] Since this is + uninitialized, it does not stop multiple parsers from coexisting. + */ +int yydebug; +#else /* !YYDEBUG */ +# define YYDPRINTF(Args) +#endif /* !YYDEBUG */ =20 +/* YYINITDEPTH -- initial size of the parser's stacks. */ #ifndef YYINITDEPTH -#define YYINITDEPTH 200 +# define YYINITDEPTH 200 #endif =20 -/* YYMAXDEPTH is the maximum size the stacks can grow to - (effective only if the built-in stack extension method is used). */ +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH) + evaluated with infinite-precision integer arithmetic. */ =20 #if YYMAXDEPTH =3D=3D 0 -#undef YYMAXDEPTH +# undef YYMAXDEPTH #endif =20 #ifndef YYMAXDEPTH -#define YYMAXDEPTH 10000 +# define YYMAXDEPTH 10000 #endif =0C -/* Define __yy_memcpy. Note that the size argument - should be passed with type unsigned int, because that is what the non-G= CC - definitions require. With GCC, __builtin_memcpy takes an arg - of type size_t, but it can handle unsigned int. */ - -#if __GNUC__ > 1 /* GNU C and GNU C++ define this. */ -#define __yy_memcpy(TO,FROM,COUNT) __builtin_memcpy(TO,FROM,COUNT) -#else /* not GNU C or C++ */ -#ifndef __cplusplus +#if ! defined (yyoverflow) && ! defined (yymemcpy) +# if __GNUC__ > 1 /* GNU C and GNU C++ define this. */ +# define yymemcpy __builtin_memcpy +# else /* not GNU C or C++ */ =20 /* This is the most reliable way to avoid incompatibilities in available built-in functions on various systems. */ static void -__yy_memcpy (to, from, count) - char *to; - char *from; - unsigned int count; -{ - register char *f =3D from; - register char *t =3D to; - register int i =3D count; +# if defined (__STDC__) || defined (__cplusplus) +yymemcpy (char *yyto, const char *yyfrom, YYSIZE_T yycount) +# else +yymemcpy (yyto, yyfrom, yycount) + char *yyto; + const char *yyfrom; + YYSIZE_T yycount; +# endif +{ + register const char *yyf =3D yyfrom; + register char *yyt =3D yyto; + register YYSIZE_T yyi =3D yycount; =20 - while (i-- > 0) - *t++ =3D *f++; + while (yyi-- !=3D 0) + *yyt++ =3D *yyf++; } +# endif +#endif =20 -#else /* __cplusplus */ +#ifdef YYERROR_VERBOSE =20 -/* This is the most reliable way to avoid incompatibilities - in available built-in functions on various systems. */ -static void -__yy_memcpy (char *to, char *from, unsigned int count) +# ifndef yystrlen +# if defined (__GLIBC__) && defined (_STRING_H) +# define yystrlen strlen +# else +/* Return the length of YYSTR. */ +static YYSIZE_T +# if defined (__STDC__) || defined (__cplusplus) +yystrlen (const char *yystr) +# else +yystrlen (yystr) + const char *yystr; +# endif { - register char *t =3D to; - register char *f =3D from; - register int i =3D count; + register const char *yys =3D yystr; =20 - while (i-- > 0) - *t++ =3D *f++; + while (*yys++ !=3D '\0') + continue; + + return yys - yystr - 1; } +# endif +# endif =20 -#endif +# ifndef yystpcpy +# if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE) +# define yystpcpy stpcpy +# else +/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in + YYDEST. */ +static char * +# if defined (__STDC__) || defined (__cplusplus) +yystpcpy (char *yydest, const char *yysrc) +# else +yystpcpy (yydest, yysrc) + char *yydest; + const char *yysrc; +# endif +{ + register char *yyd =3D yydest; + register const char *yys =3D yysrc; + + while ((*yyd++ =3D *yys++) !=3D '\0') + continue; + + return yyd - 1; +} +# endif +# endif #endif =0C -#line 217 "/usr/lib/bison.simple" +#line 345 "/usr/share/bison/bison.simple" + =20 /* The user can define YYPARSE_PARAM as the name of an argument to be pass= ed into yyparse. The argument should have type void *. @@ -733,76 +948,121 @@ to the proper pointer type. */ =20 #ifdef YYPARSE_PARAM -#ifdef __cplusplus -#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM -#define YYPARSE_PARAM_DECL -#else /* not __cplusplus */ -#define YYPARSE_PARAM_ARG YYPARSE_PARAM -#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM; -#endif /* not __cplusplus */ -#else /* not YYPARSE_PARAM */ -#define YYPARSE_PARAM_ARG -#define YYPARSE_PARAM_DECL -#endif /* not YYPARSE_PARAM */ +# ifdef __cplusplus +# define YYPARSE_PARAM_ARG void *YYPARSE_PARAM +# define YYPARSE_PARAM_DECL +# else /* !__cplusplus */ +# define YYPARSE_PARAM_ARG YYPARSE_PARAM +# define YYPARSE_PARAM_DECL void *YYPARSE_PARAM; +# endif /* !__cplusplus */ +#else /* !YYPARSE_PARAM */ +# define YYPARSE_PARAM_ARG +# define YYPARSE_PARAM_DECL +#endif /* !YYPARSE_PARAM */ =20 /* Prevent warning if -Wstrict-prototypes. */ #ifdef __GNUC__ -#ifdef YYPARSE_PARAM -int yyparse (void *); +# ifdef YYPARSE_PARAM +YYPARSE_RETURN_TYPE yyparse (void *); +# else +YYPARSE_RETURN_TYPE yyparse (void); +# endif +#endif + +/* YY_DECL_VARIABLES -- depending whether we use a pure parser, + variables are global, or local to YYPARSE. */ + +#define YY_DECL_NON_LSP_VARIABLES \ +/* The lookahead symbol. */ \ +int yychar; \ + \ +/* The semantic value of the lookahead symbol. */ \ +YYSTYPE yylval; \ + \ +/* Number of parse errors so far. */ \ +int yynerrs; + +#if YYLSP_NEEDED +# define YY_DECL_VARIABLES \ +YY_DECL_NON_LSP_VARIABLES \ + \ +/* Location data for the lookahead symbol. */ \ +YYLTYPE yylloc; #else -int yyparse (void); -#endif +# define YY_DECL_VARIABLES \ +YY_DECL_NON_LSP_VARIABLES #endif =20 -int -yyparse(YYPARSE_PARAM_ARG) + +/* If nonreentrant, generate the variables here. */ + +#if !YYPURE +YY_DECL_VARIABLES +#endif /* !YYPURE */ + +YYPARSE_RETURN_TYPE +yyparse (YYPARSE_PARAM_ARG) YYPARSE_PARAM_DECL { + /* If reentrant, generate the variables here. */ +#if YYPURE + YY_DECL_VARIABLES +#endif /* !YYPURE */ + register int yystate; register int yyn; + int yyresult; + /* Number of tokens to shift before error messages enabled. */ + int yyerrstatus; + /* Lookahead token as an internal (translated) token number. */ + int yychar1 =3D 0; + + /* Three stacks and their tools: + `yyss': related to states, + `yyvs': related to semantic values, + `yyls': related to locations. + + Refer to the stacks thru separate pointers, to allow yyoverflow + to reallocate them elsewhere. */ + + /* The state stack. */ + short yyssa[YYINITDEPTH]; + short *yyss =3D yyssa; register short *yyssp; - register YYSTYPE *yyvsp; - int yyerrstatus; /* number of tokens to shift before error messages ena= bled */ - int yychar1 =3D 0; /* lookahead token as an internal (translated) toke= n number */ =20 - short yyssa[YYINITDEPTH]; /* the state stack */ - YYSTYPE yyvsa[YYINITDEPTH]; /* the semantic value stack */ - - short *yyss =3D yyssa; /* refer to the stacks thru separate pointers *= / - YYSTYPE *yyvs =3D yyvsa; /* to allow yyoverflow to reallocate them else= where */ + /* The semantic value stack. */ + YYSTYPE yyvsa[YYINITDEPTH]; + YYSTYPE *yyvs =3D yyvsa; + register YYSTYPE *yyvsp; =20 -#ifdef YYLSP_NEEDED - YYLTYPE yylsa[YYINITDEPTH]; /* the location stack */ +#if YYLSP_NEEDED + /* The location stack. */ + YYLTYPE yylsa[YYINITDEPTH]; YYLTYPE *yyls =3D yylsa; YYLTYPE *yylsp; +#endif =20 -#define YYPOPSTACK (yyvsp--, yyssp--, yylsp--) +#if YYLSP_NEEDED +# define YYPOPSTACK (yyvsp--, yyssp--, yylsp--) #else -#define YYPOPSTACK (yyvsp--, yyssp--) +# define YYPOPSTACK (yyvsp--, yyssp--) #endif =20 - int yystacksize =3D YYINITDEPTH; - int yyfree_stacks =3D 0; + YYSIZE_T yystacksize =3D YYINITDEPTH; =20 -#ifdef YYPURE - int yychar; - YYSTYPE yylval; - int yynerrs; -#ifdef YYLSP_NEEDED - YYLTYPE yylloc; -#endif -#endif =20 - YYSTYPE yyval; /* the variable used to return */ - /* semantic values from the action */ - /* routines */ + /* The variables used to return semantic value and location from the + action routines. */ + YYSTYPE yyval; +#if YYLSP_NEEDED + YYLTYPE yyloc; +#endif =20 + /* When reducing, the number of symbols on the RHS of the reduced + rule. */ int yylen; =20 -#if YYDEBUG !=3D 0 - if (yydebug) - fprintf(stderr, "Starting parse\n"); -#endif + YYDPRINTF ((stderr, "Starting parse\n")); =20 yystate =3D 0; yyerrstatus =3D 0; @@ -814,110 +1074,106 @@ so that they stay on the same level as the state stack. The wasted elements are never initialized. */ =20 - yyssp =3D yyss - 1; + yyssp =3D yyss; yyvsp =3D yyvs; -#ifdef YYLSP_NEEDED +#if YYLSP_NEEDED yylsp =3D yyls; #endif + goto yysetstate; =20 -/* Push a new state, which is found in yystate . */ -/* In all cases, when you get here, the value and location stacks - have just been pushed. so pushing a state here evens the stacks. */ -yynewstate: +/*------------------------------------------------------------. +| yynewstate -- Push a new state, which is found in yystate. | +`------------------------------------------------------------*/ + yynewstate: + /* In all cases, when you get here, the value and location stacks + have just been pushed. so pushing a state here evens the stacks. + */ + yyssp++; =20 - *++yyssp =3D yystate; + yysetstate: + *yyssp =3D yystate; =20 if (yyssp >=3D yyss + yystacksize - 1) { - /* Give user a chance to reallocate the stack */ - /* Use copies of these so that the &'s don't force the real ones int= o memory. */ - YYSTYPE *yyvs1 =3D yyvs; - short *yyss1 =3D yyss; -#ifdef YYLSP_NEEDED - YYLTYPE *yyls1 =3D yyls; -#endif - /* Get the current used size of the three stacks, in elements. */ - int size =3D yyssp - yyss + 1; + YYSIZE_T yysize =3D yyssp - yyss + 1; =20 #ifdef yyoverflow - /* Each stack pointer address is followed by the size of - the data in use in that stack, in bytes. */ -#ifdef YYLSP_NEEDED - /* This used to be a conditional around just the two extra args, - but that might be undefined if yyoverflow is a macro. */ - yyoverflow("parser stack overflow", - &yyss1, size * sizeof (*yyssp), - &yyvs1, size * sizeof (*yyvsp), - &yyls1, size * sizeof (*yylsp), - &yystacksize); -#else - yyoverflow("parser stack overflow", - &yyss1, size * sizeof (*yyssp), - &yyvs1, size * sizeof (*yyvsp), - &yystacksize); -#endif - - yyss =3D yyss1; yyvs =3D yyvs1; -#ifdef YYLSP_NEEDED - yyls =3D yyls1; -#endif + { + /* Give user a chance to reallocate the stack. Use copies of + these so that the &'s don't force the real ones into + memory. */ + YYSTYPE *yyvs1 =3D yyvs; + short *yyss1 =3D yyss; + + /* Each stack pointer address is followed by the size of the + data in use in that stack, in bytes. */ +# if YYLSP_NEEDED + YYLTYPE *yyls1 =3D yyls; + /* This used to be a conditional around just the two extra args, + but that might be undefined if yyoverflow is a macro. */ + yyoverflow ("parser stack overflow", + &yyss1, yysize * sizeof (*yyssp), + &yyvs1, yysize * sizeof (*yyvsp), + &yyls1, yysize * sizeof (*yylsp), + &yystacksize); + yyls =3D yyls1; +# else + yyoverflow ("parser stack overflow", + &yyss1, yysize * sizeof (*yyssp), + &yyvs1, yysize * sizeof (*yyvsp), + &yystacksize); +# endif + yyss =3D yyss1; + yyvs =3D yyvs1; + } #else /* no yyoverflow */ /* Extend the stack our own way. */ if (yystacksize >=3D YYMAXDEPTH) - { - yyerror("parser stack overflow"); - if (yyfree_stacks) - { - free (yyss); - free (yyvs); -#ifdef YYLSP_NEEDED - free (yyls); -#endif - } - return 2; - } + goto yyoverflowlab; yystacksize *=3D 2; if (yystacksize > YYMAXDEPTH) yystacksize =3D YYMAXDEPTH; -#ifndef YYSTACK_USE_ALLOCA - yyfree_stacks =3D 1; -#endif - yyss =3D (short *) YYSTACK_ALLOC (yystacksize * sizeof (*yyssp)); - __yy_memcpy ((char *)yyss, (char *)yyss1, - size * (unsigned int) sizeof (*yyssp)); - yyvs =3D (YYSTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yyvsp)); - __yy_memcpy ((char *)yyvs, (char *)yyvs1, - size * (unsigned int) sizeof (*yyvsp)); -#ifdef YYLSP_NEEDED - yyls =3D (YYLTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yylsp)); - __yy_memcpy ((char *)yyls, (char *)yyls1, - size * (unsigned int) sizeof (*yylsp)); -#endif + + { + short *yyss1 =3D yyss; + union yyalloc *yyptr =3D + (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); + if (! yyptr) + goto yyoverflowlab; + YYSTACK_RELOCATE (short, yyss); + YYSTACK_RELOCATE (YYSTYPE, yyvs); +# if YYLSP_NEEDED + YYSTACK_RELOCATE (YYLTYPE, yyls); +# endif +# undef YYSTACK_RELOCATE + if (yyss1 !=3D yyssa) + YYSTACK_FREE (yyss1); + } #endif /* no yyoverflow */ =20 - yyssp =3D yyss + size - 1; - yyvsp =3D yyvs + size - 1; -#ifdef YYLSP_NEEDED - yylsp =3D yyls + size - 1; + yyssp =3D yyss + yysize - 1; + yyvsp =3D yyvs + yysize - 1; +#if YYLSP_NEEDED + yylsp =3D yyls + yysize - 1; #endif =20 -#if YYDEBUG !=3D 0 - if (yydebug) - fprintf(stderr, "Stack size increased to %d\n", yystacksize); -#endif + YYDPRINTF ((stderr, "Stack size increased to %lu\n", + (unsigned long int) yystacksize)); =20 if (yyssp >=3D yyss + yystacksize - 1) YYABORT; } =20 -#if YYDEBUG !=3D 0 - if (yydebug) - fprintf(stderr, "Entering state %d\n", yystate); -#endif + YYDPRINTF ((stderr, "Entering state %d\n", yystate)); =20 goto yybackup; - yybackup: + + +/*-----------. +| yybackup. | +`-----------*/ +yybackup: =20 /* Do appropriate processing given the current state. */ /* Read a lookahead token if we need one and don't already have one. */ @@ -936,10 +1192,7 @@ =20 if (yychar =3D=3D YYEMPTY) { -#if YYDEBUG !=3D 0 - if (yydebug) - fprintf(stderr, "Reading a token: "); -#endif + YYDPRINTF ((stderr, "Reading a token: ")); yychar =3D YYLEX; } =20 @@ -950,25 +1203,25 @@ yychar1 =3D 0; yychar =3D YYEOF; /* Don't call YYLEX any more */ =20 -#if YYDEBUG !=3D 0 - if (yydebug) - fprintf(stderr, "Now at end of input.\n"); -#endif + YYDPRINTF ((stderr, "Now at end of input.\n")); } else { - yychar1 =3D YYTRANSLATE(yychar); + yychar1 =3D YYTRANSLATE (yychar); =20 -#if YYDEBUG !=3D 0 +#if YYDEBUG + /* We have to keep this `#if YYDEBUG', since we use variables + which are defined only if `YYDEBUG' is set. */ if (yydebug) { - fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]); - /* Give the individual parser a way to print the precise meaning - of a token, for further debugging info. */ -#ifdef YYPRINT + YYFPRINTF (stderr, "Next token is %d (%s", + yychar, yytname[yychar1]); + /* Give the individual parser a way to print the precise + meaning of a token, for further debugging info. */ +# ifdef YYPRINT YYPRINT (stderr, yychar, yylval); -#endif - fprintf (stderr, ")\n"); +# endif + YYFPRINTF (stderr, ")\n"); } #endif } @@ -1000,73 +1253,95 @@ YYACCEPT; =20 /* Shift the lookahead token. */ - -#if YYDEBUG !=3D 0 - if (yydebug) - fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]); -#endif + YYDPRINTF ((stderr, "Shifting token %d (%s), ", + yychar, yytname[yychar1])); =20 /* Discard the token being shifted unless it is eof. */ if (yychar !=3D YYEOF) yychar =3D YYEMPTY; =20 *++yyvsp =3D yylval; -#ifdef YYLSP_NEEDED +#if YYLSP_NEEDED *++yylsp =3D yylloc; #endif =20 - /* count tokens shifted since error; after three, turn off error status.= */ - if (yyerrstatus) yyerrstatus--; + /* Count tokens shifted since error; after three, turn off error + status. */ + if (yyerrstatus) + yyerrstatus--; =20 yystate =3D yyn; goto yynewstate; =20 -/* Do the default action for the current state. */ -yydefault: =20 +/*-----------------------------------------------------------. +| yydefault -- do the default action for the current state. | +`-----------------------------------------------------------*/ +yydefault: yyn =3D yydefact[yystate]; if (yyn =3D=3D 0) goto yyerrlab; + goto yyreduce; =20 -/* Do a reduction. yyn is the number of a rule to reduce with. */ + +/*-----------------------------. +| yyreduce -- Do a reduction. | +`-----------------------------*/ yyreduce: + /* yyn is the number of a rule to reduce with. */ yylen =3D yyr2[yyn]; - if (yylen > 0) - yyval =3D yyvsp[1-yylen]; /* implement default value of the action */ =20 -#if YYDEBUG !=3D 0 + /* If YYLEN is nonzero, implement the default value of the action: + `$$ =3D $1'. + + Otherwise, the following line sets YYVAL to the semantic value of + the lookahead token. This behavior is undocumented and Bison + users should not rely upon it. Assigning to YYVAL + unconditionally makes the parser a bit smaller, and it avoids a + GCC warning that YYVAL may be used uninitialized. */ + yyval =3D yyvsp[1-yylen]; + +#if YYLSP_NEEDED + /* Similarly for the default location. Let the user run additional + commands if for instance locations are ranges. */ + yyloc =3D yylsp[1-yylen]; + YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen); +#endif + +#if YYDEBUG + /* We have to keep this `#if YYDEBUG', since we use variables which + are defined only if `YYDEBUG' is set. */ if (yydebug) { - int i; + int yyi; =20 - fprintf (stderr, "Reducing via rule %d (line %d), ", - yyn, yyrline[yyn]); + YYFPRINTF (stderr, "Reducing via rule %d (line %d), ", + yyn, yyrline[yyn]); =20 /* Print the symbols being reduced, and their result. */ - for (i =3D yyprhs[yyn]; yyrhs[i] > 0; i++) - fprintf (stderr, "%s ", yytname[yyrhs[i]]); - fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]); + for (yyi =3D yyprhs[yyn]; yyrhs[yyi] > 0; yyi++) + YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]); + YYFPRINTF (stderr, " -> %s\n", yytname[yyr1[yyn]]); } #endif =20 - switch (yyn) { =20 case 5: -#line 233 "parser.y" +#line 241 "parser.y" { CSSParser *p =3D static_cast<CSSParser *>(parser); p->rule =3D yyvsp[-2].rule; ; break;} case 6: -#line 240 "parser.y" +#line 248 "parser.y" { /* can be empty */ ; break;} case 7: -#line 246 "parser.y" +#line 254 "parser.y" { CSSParser *p =3D static_cast<CSSParser *>(parser); if ( yyvsp[-1].valueList ) { @@ -1091,7 +1366,7 @@ ; break;} case 14: -#line 283 "parser.y" +#line 291 "parser.y" { #ifdef CSS_DEBUG kdDebug( 6080 ) << "charset rule: " << qString(yyvsp[-2].string) << e= ndl; @@ -1099,7 +1374,7 @@ ; break;} case 18: -#line 294 "parser.y" +#line 302 "parser.y" { CSSParser *p =3D static_cast<CSSParser *>(parser); if ( yyvsp[-1].rule && p->styleElement && p->styleElement->isCSSStyle= Sheet() ) { @@ -1109,19 +1384,8 @@ } ; break;} -case 20: -#line 307 "parser.y" -{ - CSSParser *p =3D static_cast<CSSParser *>(parser); - if ( yyvsp[-1].rule && p->styleElement && p->styleElement->isCSSStyle= Sheet() ) { - p->styleElement->append( yyvsp[-1].rule ); - } else { - delete yyvsp[-1].rule; - } - ; - break;} -case 27: -#line 327 "parser.y" +case 19: +#line 313 "parser.y" { #ifdef CSS_DEBUG kdDebug( 6080 ) << "@import: " << qString(yyvsp[-3].string) << endl; @@ -1133,41 +1397,62 @@ yyval.rule =3D 0; ; break;} -case 28: -#line 337 "parser.y" +case 20: +#line 323 "parser.y" { yyval.rule =3D 0; ; break;} -case 29: -#line 340 "parser.y" +case 21: +#line 326 "parser.y" { yyval.rule =3D 0; ; break;} -case 32: +case 26: +#line 345 "parser.y" +{ yyval.string.string =3D 0; yyval.string.length =3D 0; ; + break;} +case 29: #line 351 "parser.y" { + CSSParser *p =3D static_cast<CSSParser *>(parser); + if ( yyvsp[-1].rule && p->styleElement && p->styleElement->isCSSStyle= Sheet() ) { + p->styleElement->append( yyvsp[-1].rule ); + } else { + delete yyvsp[-1].rule; + } + ; + break;} +case 38: +#line 376 "parser.y" +{ yyval.mediaList =3D 0; ; break;} -case 33: -#line 354 "parser.y" +case 40: +#line 384 "parser.y" { yyval.mediaList =3D new MediaListImpl(); yyval.mediaList->appendMedium( domString(yyvsp[0].string) ); ; break;} -case 34: -#line 358 "parser.y" +case 41: +#line 388 "parser.y" { yyval.mediaList =3D yyvsp[-3].mediaList; - if ( !yyval.mediaList ) yyval.mediaList =3D new MediaListImpl(); yyval.mediaList->appendMedium( domString(yyvsp[0].string) ); ; break;} -case 35: -#line 366 "parser.y" +case 42: +#line 392 "parser.y" +{ + delete yyvsp[-1].mediaList; + yyval.mediaList =3D 0; + ; + break;} +case 43: +#line 400 "parser.y" { CSSParser *p =3D static_cast<CSSParser *>(parser); if ( yyvsp[-4].mediaList && yyvsp[-1].ruleList && @@ -1180,26 +1465,12 @@ } ; break;} -case 36: -#line 380 "parser.y" -{ - yyval.mediaList =3D new MediaListImpl(); - yyval.mediaList->appendMedium( domString(yyvsp[0].string) ); - ; - break;} -case 37: -#line 384 "parser.y" -{ - yyval.mediaList =3D yyvsp[-3].mediaList; - yyval.mediaList->appendMedium( domString(yyvsp[0].string) ); - ; - break;} -case 38: -#line 392 "parser.y" +case 44: +#line 415 "parser.y" { yyval.ruleList =3D 0; ; break;} -case 39: -#line 393 "parser.y" +case 45: +#line 416 "parser.y" { yyval.ruleList =3D yyvsp[-2].ruleList; if ( yyvsp[-1].rule ) { @@ -1208,58 +1479,58 @@ } ; break;} -case 40: -#line 403 "parser.y" +case 46: +#line 426 "parser.y" { yyval.string =3D yyvsp[-1].string; ; break;} -case 41: -#line 425 "parser.y" +case 47: +#line 448 "parser.y" { yyval.rule =3D 0; ; break;} -case 42: -#line 428 "parser.y" +case 48: +#line 451 "parser.y" { yyval.rule =3D 0; ; break;} -case 43: -#line 434 "parser.y" +case 49: +#line 457 "parser.y" { yyval.rule =3D 0; ; break;} -case 44: -#line 437 "parser.y" +case 50: +#line 460 "parser.y" { yyval.rule =3D 0; ; break;} -case 45: -#line 443 "parser.y" +case 51: +#line 466 "parser.y" { yyval.relation =3D CSSSelector::Sibling; ; break;} -case 46: -#line 444 "parser.y" +case 52: +#line 467 "parser.y" { yyval.relation =3D CSSSelector::Child; ; break;} -case 47: -#line 445 "parser.y" +case 53: +#line 468 "parser.y" { yyval.relation =3D CSSSelector::Descendant; ; break;} -case 48: -#line 449 "parser.y" +case 54: +#line 472 "parser.y" { yyval.val =3D -1; ; break;} -case 49: -#line 450 "parser.y" +case 55: +#line 473 "parser.y" { yyval.val =3D 1; ; break;} -case 50: -#line 454 "parser.y" +case 56: +#line 477 "parser.y" { #ifdef CSS_DEBUG kdDebug( 6080 ) << "got ruleset" << endl << " selector:" << endl; @@ -1278,8 +1549,8 @@ } ; break;} -case 51: -#line 474 "parser.y" +case 57: +#line 497 "parser.y" { if ( yyvsp[0].selector ) { yyval.selectorList =3D new QPtrList<CSSSelector>; @@ -1294,60 +1565,94 @@ } ; break;} -case 52: -#line 487 "parser.y" +case 58: +#line 510 "parser.y" { - yyval.selectorList =3D yyvsp[-3].selectorList; - if ( yyvsp[0].selector ) { - if ( !yyval.selectorList ) { - yyval.selectorList =3D new QPtrList<CSSSelector>; - yyval.selectorList->setAutoDelete(true); - } + if ( yyvsp[-3].selectorList && yyvsp[0].selector ) { + yyval.selectorList =3D yyvsp[-3].selectorList; yyval.selectorList->append( yyvsp[0].selector ); #ifdef CSS_DEBUG kdDebug( 6080 ) << " got simple selector:" << endl; yyvsp[0].selector->print(); #endif + } else { + delete yyvsp[-3].selectorList; + delete yyvsp[0].selector; + yyval.selectorList =3D 0; } ; break;} -case 53: -#line 504 "parser.y" +case 59: +#line 524 "parser.y" +{ + delete yyvsp[-1].selectorList; + yyval.selectorList =3D 0; + ; + break;} +case 60: +#line 531 "parser.y" { yyval.selector =3D yyvsp[0].selector; ; break;} -case 54: -#line 507 "parser.y" +case 61: +#line 534 "parser.y" { yyval.selector =3D yyvsp[0].selector; yyval.selector->relation =3D yyvsp[-1].relation; yyval.selector->tagHistory =3D yyvsp[-2].selector; ; break;} -case 55: -#line 515 "parser.y" +case 62: +#line 539 "parser.y" +{ + delete yyvsp[-1].selector; + yyval.selector =3D 0; + ; + break;} +case 63: +#line 546 "parser.y" { yyval.selector =3D new CSSSelector(); yyval.selector->tag =3D yyvsp[-1].element; ; break;} -case 56: -#line 519 "parser.y" +case 64: +#line 550 "parser.y" { yyval.selector =3D yyvsp[-1].selector; yyval.selector->tag =3D yyvsp[-2].element; ; break;} -case 57: -#line 523 "parser.y" +case 65: +#line 554 "parser.y" { yyval.selector =3D yyvsp[-1].selector; - yyval.selector->tag =3D -1; + yyval.selector->tag =3D 0xffff; ; break;} -case 58: -#line 530 "parser.y" +case 66: +#line 561 "parser.y" +{ yyval.element =3D (yyvsp[-1].element<<16) | yyvsp[0].element; ; + break;} +case 67: +#line 562 "parser.y" +{ yyval.element =3D yyvsp[0].element; ; + break;} +case 68: +#line 566 "parser.y" +{ yyval.element =3D 0; ; + break;} +case 69: +#line 567 "parser.y" +{ yyval.element =3D 1; ; + break;} +case 70: +#line 568 "parser.y" +{ yyval.element =3D 0xffff; ; + break;} +case 71: +#line 573 "parser.y" { CSSParser *p =3D static_cast<CSSParser *>(parser); DOM::DocumentImpl *doc =3D p->document(); @@ -1365,21 +1670,19 @@ } ; break;} -case 59: -#line 546 "parser.y" -{ - yyval.element =3D -1; - ; +case 72: +#line 589 "parser.y" +{ yyval.element =3D 0xffff; ; break;} -case 60: -#line 552 "parser.y" +case 73: +#line 593 "parser.y" { yyval.selector =3D yyvsp[0].selector; yyval.selector->nonCSSHint =3D static_cast<CSSParser *>(parser)->nonCSSHi= nt; ; break;} -case 61: -#line 556 "parser.y" +case 74: +#line 597 "parser.y" { yyval.selector =3D yyvsp[-1].selector; yyval.selector->nonCSSHint =3D static_cast<CSSParser *>(parser)->nonCSSHi= nt; @@ -1387,8 +1690,15 @@ yyval.selector->tagHistory =3D yyvsp[0].selector; ; break;} -case 62: -#line 565 "parser.y" +case 75: +#line 603 "parser.y" +{ + delete yyvsp[-1].selector; + yyval.selector =3D 0; +; + break;} +case 76: +#line 610 "parser.y" { yyval.selector =3D new CSSSelector(); yyval.selector->match =3D CSSSelector::Id; @@ -1396,8 +1706,8 @@ yyval.selector->value =3D domString(yyvsp[0].string); ; break;} -case 66: -#line 577 "parser.y" +case 80: +#line 622 "parser.y" { yyval.selector =3D new CSSSelector(); yyval.selector->match =3D CSSSelector::List; @@ -1405,8 +1715,16 @@ yyval.selector->value =3D domString(yyvsp[0].string); ; break;} -case 67: -#line 586 "parser.y" +case 81: +#line 631 "parser.y" +{ yyval.attribute =3D (yyvsp[-1].element<<16) | yyvsp[0].attribute; ; + break;} +case 82: +#line 632 "parser.y" +{ yyval.attribute =3D yyvsp[0].attribute; ; + break;} +case 83: +#line 636 "parser.y" { CSSParser *p =3D static_cast<CSSParser *>(parser); DOM::DocumentImpl *doc =3D p->document(); @@ -1425,16 +1743,16 @@ } ; break;} -case 68: -#line 606 "parser.y" +case 84: +#line 656 "parser.y" { yyval.selector =3D new CSSSelector(); yyval.selector->attr =3D yyvsp[-1].attribute; yyval.selector->match =3D CSSSelector::Set; ; break;} -case 69: -#line 611 "parser.y" +case 85: +#line 661 "parser.y" { yyval.selector =3D new CSSSelector(); yyval.selector->attr =3D yyvsp[-5].attribute; @@ -1442,52 +1760,52 @@ yyval.selector->value =3D domString(yyvsp[-2].string); ; break;} -case 70: -#line 620 "parser.y" +case 86: +#line 670 "parser.y" { yyval.val =3D CSSSelector::Exact; ; break;} -case 71: -#line 623 "parser.y" +case 87: +#line 673 "parser.y" { yyval.val =3D CSSSelector::List; ; break;} -case 72: -#line 626 "parser.y" +case 88: +#line 676 "parser.y" { yyval.val =3D CSSSelector::Hyphen; ; break;} -case 73: -#line 629 "parser.y" +case 89: +#line 679 "parser.y" { yyval.val =3D CSSSelector::Begin; ; break;} -case 74: -#line 632 "parser.y" +case 90: +#line 682 "parser.y" { yyval.val =3D CSSSelector::End; ; break;} -case 75: -#line 635 "parser.y" +case 91: +#line 685 "parser.y" { yyval.val =3D CSSSelector::Contain; ; break;} -case 78: -#line 646 "parser.y" +case 94: +#line 696 "parser.y" { yyval.selector =3D new CSSSelector(); yyval.selector->match =3D CSSSelector::Pseudo; yyval.selector->value =3D domString(yyvsp[0].string); ; break;} -case 79: -#line 651 "parser.y" +case 95: +#line 701 "parser.y" { yyval.selector =3D new CSSSelector(); yyval.selector->match =3D CSSSelector::Pseudo; @@ -1495,28 +1813,28 @@ yyval.selector->value =3D domString(yyvsp[-2].string); ; break;} -case 80: -#line 660 "parser.y" +case 96: +#line 710 "parser.y" { yyval.ok =3D yyvsp[0].ok; ; break;} -case 81: -#line 663 "parser.y" +case 97: +#line 713 "parser.y" { yyval.ok =3D yyvsp[-1].ok; if ( yyvsp[0].ok ) yyval.ok =3D yyvsp[0].ok; ; break;} -case 82: -#line 668 "parser.y" +case 98: +#line 718 "parser.y" { yyval.ok =3D yyvsp[0].ok; ; break;} -case 83: -#line 671 "parser.y" +case 99: +#line 721 "parser.y" { yyval.ok =3D false; #ifdef CSS_DEBUG @@ -1524,8 +1842,8 @@ #endif ; break;} -case 84: -#line 677 "parser.y" +case 100: +#line 727 "parser.y" { yyval.ok =3D false; #ifdef CSS_DEBUG @@ -1533,14 +1851,14 @@ #endif ; break;} -case 85: -#line 686 "parser.y" +case 101: +#line 736 "parser.y" { yyval.ok =3D yyvsp[-2].ok; ; break;} -case 86: -#line 689 "parser.y" +case 102: +#line 739 "parser.y" { yyval.ok =3D false; #ifdef CSS_DEBUG @@ -1548,8 +1866,8 @@ #endif ; break;} -case 87: -#line 695 "parser.y" +case 103: +#line 745 "parser.y" { yyval.ok =3D false; #ifdef CSS_DEBUG @@ -1557,16 +1875,16 @@ #endif ; break;} -case 88: -#line 701 "parser.y" +case 104: +#line 751 "parser.y" { yyval.ok =3D yyvsp[-3].ok; if ( yyvsp[-2].ok ) yyval.ok =3D yyvsp[-2].ok; ; break;} -case 89: -#line 706 "parser.y" +case 105: +#line 756 "parser.y" { yyval.ok =3D yyvsp[-3].ok; #ifdef CSS_DEBUG @@ -1574,8 +1892,8 @@ #endif ; break;} -case 90: -#line 712 "parser.y" +case 106: +#line 762 "parser.y" { yyval.ok =3D yyvsp[-5].ok; #ifdef CSS_DEBUG @@ -1583,8 +1901,8 @@ #endif ; break;} -case 91: -#line 721 "parser.y" +case 107: +#line 771 "parser.y" { yyval.ok =3D false; CSSParser *p =3D static_cast<CSSParser *>(parser); @@ -1606,30 +1924,30 @@ p->valueList =3D 0; ; break;} -case 92: -#line 744 "parser.y" +case 108: +#line 794 "parser.y" { QString str =3D qString(yyvsp[-1].string); yyval.prop_id =3D getPropertyID( str.lower().latin1(), str.length() ); ; break;} -case 93: -#line 751 "parser.y" +case 109: +#line 801 "parser.y" { yyval.b =3D true; ; break;} -case 94: -#line 752 "parser.y" +case 110: +#line 802 "parser.y" { yyval.b =3D false; ; break;} -case 95: -#line 756 "parser.y" +case 111: +#line 806 "parser.y" { yyval.valueList =3D new ValueList; yyval.valueList->addValue( yyvsp[0].value ); ; break;} -case 96: -#line 760 "parser.y" +case 112: +#line 810 "parser.y" { yyval.valueList =3D yyvsp[-2].valueList; if ( yyvsp[-1].tok ) { @@ -1642,38 +1960,45 @@ yyval.valueList->addValue( yyvsp[0].value ); ; break;} -case 97: -#line 774 "parser.y" +case 113: +#line 821 "parser.y" +{ + delete yyvsp[-1].valueList; + yyval.valueList =3D 0; + ; + break;} +case 114: +#line 828 "parser.y" { yyval.tok =3D '/'; ; break;} -case 98: -#line 777 "parser.y" +case 115: +#line 831 "parser.y" { yyval.tok =3D ','; ; break;} -case 99: -#line 780 "parser.y" +case 116: +#line 834 "parser.y" { yyval.tok =3D 0; ; break;} -case 100: -#line 786 "parser.y" +case 117: +#line 840 "parser.y" { yyval.value =3D yyvsp[0].value; ; break;} -case 101: -#line 787 "parser.y" +case 118: +#line 841 "parser.y" { yyval.value =3D yyvsp[0].value; yyval.value.fValue *=3D yyvsp[-1].val; ; break;} -case 102: -#line 788 "parser.y" +case 119: +#line 842 "parser.y" { yyval.value.id =3D 0; yyval.value.string =3D yyvsp[-1].string; yyval.val= ue.unit =3D CSSPrimitiveValue::CSS_STRING; ; break;} -case 103: -#line 789 "parser.y" +case 120: +#line 843 "parser.y" { QString str =3D qString( yyvsp[-1].string ); yyval.value.id =3D getValueID( str.lower().latin1(), str.length() ); @@ -1681,102 +2006,102 @@ yyval.value.string =3D yyvsp[-1].string; ; break;} -case 104: -#line 795 "parser.y" +case 121: +#line 849 "parser.y" { yyval.value.id =3D 0; yyval.value.string =3D yyvsp[-1].string; yyval.val= ue.unit =3D CSSPrimitiveValue::CSS_URI; ; break;} -case 105: -#line 796 "parser.y" +case 122: +#line 850 "parser.y" { yyval.value.id =3D 0; yyval.value.iValue =3D 0; yyval.value.unit =3D CSS= PrimitiveValue::CSS_UNKNOWN;/* ### */ ; break;} -case 106: -#line 797 "parser.y" +case 123: +#line 851 "parser.y" { yyval.value.id =3D 0; yyval.value.string =3D yyvsp[0].string; yyval.valu= e.unit =3D CSSPrimitiveValue::CSS_RGBCOLOR; ; break;} -case 107: -#line 799 "parser.y" +case 124: +#line 853 "parser.y" { yyval.value =3D yyvsp[0].value; ; break;} -case 108: -#line 805 "parser.y" +case 125: +#line 859 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_NUMBER; ; break;} -case 109: -#line 806 "parser.y" +case 126: +#line 860 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_PERCENTAGE; ; break;} -case 110: -#line 807 "parser.y" +case 127: +#line 861 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_PX; ; break;} -case 111: -#line 808 "parser.y" +case 128: +#line 862 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_CM; ; break;} -case 112: -#line 809 "parser.y" +case 129: +#line 863 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_MM; ; break;} -case 113: -#line 810 "parser.y" +case 130: +#line 864 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_IN; ; break;} -case 114: -#line 811 "parser.y" +case 131: +#line 865 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_PT; ; break;} -case 115: -#line 812 "parser.y" +case 132: +#line 866 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_PC; ; break;} -case 116: -#line 813 "parser.y" +case 133: +#line 867 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_DEG; ; break;} -case 117: -#line 814 "parser.y" +case 134: +#line 868 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_RAD; ; break;} -case 118: -#line 815 "parser.y" +case 135: +#line 869 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_GRAD; ; break;} -case 119: -#line 816 "parser.y" +case 136: +#line 870 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_MS; ; break;} -case 120: -#line 817 "parser.y" +case 137: +#line 871 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_S; ; break;} -case 121: -#line 818 "parser.y" +case 138: +#line 872 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_HZ; ; break;} -case 122: -#line 819 "parser.y" +case 139: +#line 873 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_KHZ; ; break;} -case 123: -#line 820 "parser.y" +case 140: +#line 874 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_EMS; ; break;} -case 124: -#line 821 "parser.y" +case 141: +#line 875 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D Value::Q_EMS; ; break;} -case 125: -#line 822 "parser.y" +case 142: +#line 876 "parser.y" { yyval.value.id =3D 0; yyval.value.fValue =3D yyvsp[-1].val; yyval.value.= unit =3D CSSPrimitiveValue::CSS_EXS; ; break;} -case 126: -#line 823 "parser.y" +case 143: +#line 877 "parser.y" { yyval.value.id =3D 0; yyval.value.string =3D yyvsp[-1].string; yyval.val= ue.unit =3D CSSPrimitiveValue::CSS_DIMENSION ; break;} -case 127: -#line 828 "parser.y" +case 144: +#line 882 "parser.y" { Function *f =3D new Function; f->name =3D yyvsp[-4].string; @@ -1786,12 +2111,12 @@ yyval.value.function =3D f; ; break;} -case 128: -#line 843 "parser.y" +case 145: +#line 897 "parser.y" { yyval.string =3D yyvsp[-1].string; ; break;} -case 129: -#line 850 "parser.y" +case 146: +#line 904 "parser.y" { yyval.rule =3D 0; #ifdef CSS_DEBUG @@ -1799,8 +2124,8 @@ #endif ; break;} -case 130: -#line 856 "parser.y" +case 147: +#line 910 "parser.y" { yyval.rule =3D 0; #ifdef CSS_DEBUG @@ -1808,8 +2133,8 @@ #endif ; break;} -case 131: -#line 865 "parser.y" +case 148: +#line 919 "parser.y" { yyval.rule =3D 0; #ifdef CSS_DEBUG @@ -1818,49 +2143,35 @@ ; break;} } - /* the action file gets copied in in place of this dollarsign */ -#line 543 "/usr/lib/bison.simple" + +#line 731 "/usr/share/bison/bison.simple" + =0C yyvsp -=3D yylen; yyssp -=3D yylen; -#ifdef YYLSP_NEEDED +#if YYLSP_NEEDED yylsp -=3D yylen; #endif =20 -#if YYDEBUG !=3D 0 +#if YYDEBUG if (yydebug) { - short *ssp1 =3D yyss - 1; - fprintf (stderr, "state stack now"); - while (ssp1 !=3D yyssp) - fprintf (stderr, " %d", *++ssp1); - fprintf (stderr, "\n"); + short *yyssp1 =3D yyss - 1; + YYFPRINTF (stderr, "state stack now"); + while (yyssp1 !=3D yyssp) + YYFPRINTF (stderr, " %d", *++yyssp1); + YYFPRINTF (stderr, "\n"); } #endif =20 *++yyvsp =3D yyval; - -#ifdef YYLSP_NEEDED - yylsp++; - if (yylen =3D=3D 0) - { - yylsp->first_line =3D yylloc.first_line; - yylsp->first_column =3D yylloc.first_column; - yylsp->last_line =3D (yylsp-1)->last_line; - yylsp->last_column =3D (yylsp-1)->last_column; - yylsp->text =3D 0; - } - else - { - yylsp->last_line =3D (yylsp+yylen-1)->last_line; - yylsp->last_column =3D (yylsp+yylen-1)->last_column; - } +#if YYLSP_NEEDED + *++yylsp =3D yyloc; #endif =20 - /* Now "shift" the result of the reduction. - Determine what state that goes to, - based on the state we popped back to - and the rule number reduced by. */ + /* Now `shift' the result of the reduction. Determine what state + that goes to, based on the state we popped back to and the rule + number reduced by. */ =20 yyn =3D yyr1[yyn]; =20 @@ -1872,10 +2183,13 @@ =20 goto yynewstate; =20 -yyerrlab: /* here on detecting error */ =20 - if (! yyerrstatus) - /* If not already recovering from an error, report this error. */ +/*------------------------------------. +| yyerrlab -- here on detecting error | +`------------------------------------*/ +yyerrlab: + /* If not already recovering from an error, report this error. */ + if (!yyerrstatus) { ++yynerrs; =20 @@ -1884,102 +2198,121 @@ =20 if (yyn > YYFLAG && yyn < YYLAST) { - int size =3D 0; - char *msg; - int x, count; - - count =3D 0; - /* Start X at -yyn if nec to avoid negative indexes in yycheck. */ - for (x =3D (yyn < 0 ? -yyn : 0); - x < (sizeof(yytname) / sizeof(char *)); x++) - if (yycheck[x + yyn] =3D=3D x) - size +=3D strlen(yytname[x]) + 15, count++; - msg =3D (char *) malloc(size + 15); - if (msg !=3D 0) + YYSIZE_T yysize =3D 0; + char *yymsg; + int yyx, yycount; + + yycount =3D 0; + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. */ + for (yyx =3D yyn < 0 ? -yyn : 0; + yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++) + if (yycheck[yyx + yyn] =3D=3D yyx) + yysize +=3D yystrlen (yytname[yyx]) + 15, yycount++; + yysize +=3D yystrlen ("parse error, unexpected ") + 1; + yysize +=3D yystrlen (yytname[YYTRANSLATE (yychar)]); + yymsg =3D (char *) YYSTACK_ALLOC (yysize); + if (yymsg !=3D 0) { - strcpy(msg, "parse error"); + char *yyp =3D yystpcpy (yymsg, "parse error, unexpected "); + yyp =3D yystpcpy (yyp, yytname[YYTRANSLATE (yychar)]); =20 - if (count < 5) + if (yycount < 5) { - count =3D 0; - for (x =3D (yyn < 0 ? -yyn : 0); - x < (sizeof(yytname) / sizeof(char *)); x++) - if (yycheck[x + yyn] =3D=3D x) + yycount =3D 0; + for (yyx =3D yyn < 0 ? -yyn : 0; + yyx < (int) (sizeof (yytname) / sizeof (char *)); + yyx++) + if (yycheck[yyx + yyn] =3D=3D yyx) { - strcat(msg, count =3D=3D 0 ? ", expecting `" : " or `"); - strcat(msg, yytname[x]); - strcat(msg, "'"); - count++; + const char *yyq =3D ! yycount ? ", expecting " : " or "; + yyp =3D yystpcpy (yyp, yyq); + yyp =3D yystpcpy (yyp, yytname[yyx]); + yycount++; } } - yyerror(msg); - free(msg); + yyerror (yymsg); + YYSTACK_FREE (yymsg); } else - yyerror ("parse error; also virtual memory exceeded"); + yyerror ("parse error; also virtual memory exhausted"); } else -#endif /* YYERROR_VERBOSE */ - yyerror("parse error"); +#endif /* defined (YYERROR_VERBOSE) */ + yyerror ("parse error"); } - goto yyerrlab1; -yyerrlab1: /* here on error raised explicitly by an action */ =20 + +/*--------------------------------------------------. +| yyerrlab1 -- error raised explicitly by an action | +`--------------------------------------------------*/ +yyerrlab1: if (yyerrstatus =3D=3D 3) { - /* if just tried and failed to reuse lookahead token after an error,= discard it. */ + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ =20 /* return failure if at end of input */ if (yychar =3D=3D YYEOF) YYABORT; - -#if YYDEBUG !=3D 0 - if (yydebug) - fprintf(stderr, "Discarding token %d (%s).\n", yychar, yytname[yychar1]); -#endif - + YYDPRINTF ((stderr, "Discarding token %d (%s).\n", + yychar, yytname[yychar1])); yychar =3D YYEMPTY; } =20 - /* Else will try to reuse lookahead token - after shifting the error token. */ + /* Else will try to reuse lookahead token after shifting the error + token. */ =20 yyerrstatus =3D 3; /* Each real token shifted decrements this */ =20 goto yyerrhandle; =20 -yyerrdefault: /* current state does not do anything special for the error= token. */ =20 +/*-------------------------------------------------------------------. +| yyerrdefault -- current state does not do anything special for the | +| error token. | +`-------------------------------------------------------------------*/ +yyerrdefault: #if 0 /* This is wrong; only states that explicitly want error tokens should shift them. */ - yyn =3D yydefact[yystate]; /* If its default is to accept any token, ok= . Otherwise pop it.*/ - if (yyn) goto yydefault; + + /* If its default is to accept any token, ok. Otherwise pop it. */ + yyn =3D yydefact[yystate]; + if (yyn) + goto yydefault; #endif =20 -yyerrpop: /* pop the current state because it cannot handle the error to= ken */ =20 - if (yyssp =3D=3D yyss) YYABORT; +/*---------------------------------------------------------------. +| yyerrpop -- pop the current state because it cannot handle the | +| error token | +`---------------------------------------------------------------*/ +yyerrpop: + if (yyssp =3D=3D yyss) + YYABORT; yyvsp--; yystate =3D *--yyssp; -#ifdef YYLSP_NEEDED +#if YYLSP_NEEDED yylsp--; #endif =20 -#if YYDEBUG !=3D 0 +#if YYDEBUG if (yydebug) { - short *ssp1 =3D yyss - 1; - fprintf (stderr, "Error: state stack now"); - while (ssp1 !=3D yyssp) - fprintf (stderr, " %d", *++ssp1); - fprintf (stderr, "\n"); + short *yyssp1 =3D yyss - 1; + YYFPRINTF (stderr, "Error: state stack now"); + while (yyssp1 !=3D yyssp) + YYFPRINTF (stderr, " %d", *++yyssp1); + YYFPRINTF (stderr, "\n"); } #endif =20 +/*--------------. +| yyerrhandle. | +`--------------*/ yyerrhandle: - yyn =3D yypact[yystate]; if (yyn =3D=3D YYFLAG) goto yyerrdefault; @@ -2002,43 +2335,46 @@ if (yyn =3D=3D YYFINAL) YYACCEPT; =20 -#if YYDEBUG !=3D 0 - if (yydebug) - fprintf(stderr, "Shifting error token, "); -#endif + YYDPRINTF ((stderr, "Shifting error token, ")); =20 *++yyvsp =3D yylval; -#ifdef YYLSP_NEEDED +#if YYLSP_NEEDED *++yylsp =3D yylloc; #endif =20 yystate =3D yyn; goto yynewstate; =20 - yyacceptlab: - /* YYACCEPT comes here. */ - if (yyfree_stacks) - { - free (yyss); - free (yyvs); -#ifdef YYLSP_NEEDED - free (yyls); -#endif - } - return 0; =20 - yyabortlab: - /* YYABORT comes here. */ - if (yyfree_stacks) - { - free (yyss); - free (yyvs); -#ifdef YYLSP_NEEDED - free (yyls); +/*-------------------------------------. +| yyacceptlab -- YYACCEPT comes here. | +`-------------------------------------*/ +yyacceptlab: + yyresult =3D 0; + goto yyreturn; + +/*-----------------------------------. +| yyabortlab -- YYABORT comes here. | +`-----------------------------------*/ +yyabortlab: + yyresult =3D 1; + goto yyreturn; + +/*---------------------------------------------. +| yyoverflowab -- parser overflow comes here. | +`---------------------------------------------*/ +yyoverflowlab: + yyerror ("parser stack overflow"); + yyresult =3D 2; + /* Fall through. */ + +yyreturn: +#ifndef yyoverflow + if (yyss !=3D yyssa) + YYSTACK_FREE (yyss); #endif - } - return 1; + return yyresult; } -#line 900 "parser.y" +#line 954 "parser.y" =20 =20 diff -urN css.cvsup/parser.h css.030221/parser.h --- css.cvsup/parser.h 2003-01-22 04:03:48.000000000 -0600 +++ css.030221/parser.h 2003-02-20 17:31:46.000000000 -0600 @@ -1,3 +1,7 @@ +#ifndef BISON_PARSER_TAB_H +# define BISON_PARSER_TAB_H + +#ifndef YYSTYPE typedef union { CSSRuleImpl *rule; CSSSelector *selector; @@ -10,52 +14,57 @@ float val; int prop_id; int attribute; - int element; + unsigned int element; CSSSelector::Relation relation; bool b; char tok; Value value; ValueList *valueList; -} YYSTYPE; -#define S 257 -#define SGML_CD 258 -#define INCLUDES 259 -#define DASHMATCH 260 -#define BEGINSWITH 261 -#define ENDSWITH 262 -#define CONTAINS 263 -#define STRING 264 -#define IDENT 265 -#define HASH 266 -#define IMPORT_SYM 267 -#define PAGE_SYM 268 -#define MEDIA_SYM 269 -#define FONT_FACE_SYM 270 -#define CHARSET_SYM 271 -#define KONQ_RULE_SYM 272 -#define KONQ_DECLS_SYM 273 -#define KONQ_VALUE_SYM 274 -#define IMPORTANT_SYM 275 -#define QEMS 276 -#define EMS 277 -#define EXS 278 -#define PXS 279 -#define CMS 280 -#define MMS 281 -#define INS 282 -#define PTS 283 -#define PCS 284 -#define DEGS 285 -#define RADS 286 -#define GRADS 287 -#define MSECS 288 -#define SECS 289 -#define HERZ 290 -#define KHERZ 291 -#define DIMEN 292 -#define PERCENTAGE 293 -#define NUMBER 294 -#define URI 295 -#define FUNCTION 296 -#define UNICODERANGE 297 +} yystype; +# define YYSTYPE yystype +#endif +# define S 257 +# define SGML_CD 258 +# define INCLUDES 259 +# define DASHMATCH 260 +# define BEGINSWITH 261 +# define ENDSWITH 262 +# define CONTAINS 263 +# define STRING 264 +# define IDENT 265 +# define HASH 266 +# define IMPORT_SYM 267 +# define PAGE_SYM 268 +# define MEDIA_SYM 269 +# define FONT_FACE_SYM 270 +# define CHARSET_SYM 271 +# define NAMESPACE_SYM 272 +# define KONQ_RULE_SYM 273 +# define KONQ_DECLS_SYM 274 +# define KONQ_VALUE_SYM 275 +# define IMPORTANT_SYM 276 +# define QEMS 277 +# define EMS 278 +# define EXS 279 +# define PXS 280 +# define CMS 281 +# define MMS 282 +# define INS 283 +# define PTS 284 +# define PCS 285 +# define DEGS 286 +# define RADS 287 +# define GRADS 288 +# define MSECS 289 +# define SECS 290 +# define HERZ 291 +# define KHERZ 292 +# define DIMEN 293 +# define PERCENTAGE 294 +# define NUMBER 295 +# define URI 296 +# define FUNCTION 297 +# define UNICODERANGE 298 + =20 +#endif /* not BISON_PARSER_TAB_H */ diff -urN css.cvsup/parser.y css.030221/parser.y --- css.cvsup/parser.y 2003-02-07 20:24:52.000000000 -0600 +++ css.030221/parser.y 2003-02-20 17:31:46.000000000 -0600 @@ -18,7 +18,7 @@ * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 = USA * - * $Id: parser.y,v 1.16 2003/02/08 02:24:52 pmk Exp $ + * $Id: parser.y,v 1.18 2003/02/20 21:09:45 knoll Exp $ */ =20 #ifdef HAVE_CONFIG_H @@ -88,7 +88,7 @@ float val; int prop_id; int attribute; - int element; + unsigned int element; CSSSelector::Relation relation; bool b; char tok; @@ -114,7 +114,7 @@ =20 %} =20 -%expect 12 +%expect 18 =20 %token S SGML_CD =20 @@ -132,12 +132,15 @@ %token ':' %token '.' %token '[' +%token '|' +%token '*' =20 %token IMPORT_SYM %token PAGE_SYM %token MEDIA_SYM %token FONT_FACE_SYM %token CHARSET_SYM +%token NAMESPACE_SYM %token KONQ_RULE_SYM %token KONQ_DECLS_SYM %token KONQ_VALUE_SYM @@ -184,9 +187,12 @@ %type <string> ident_or_string %type <string> medium %type <string> hexcolor +%type <string> ns_prefix +%type <string> maybe_ns_prefix +%type <element> ns_selector =20 %type <mediaList> media_list -%type <mediaList> media_list2 +%type <mediaList> maybe_media_list =20 %type <ruleList> ruleset_list =20 @@ -217,13 +223,15 @@ %type <value> function =20 %type <element> element_name +%type <element> ns_element =20 %type <attribute> attrib_id +%type <attribute> ns_attrib_id =20 %% =20 stylesheet: - maybe_charset maybe_sgml import_list rule_list + maybe_charset maybe_sgml import_list maybe_namespace rule_list | konq_rule maybe_space | konq_decls maybe_space | konq_value maybe_space @@ -301,6 +309,42 @@ } ; =20 +import: + IMPORT_SYM maybe_space string_or_uri maybe_space maybe_media_list ';' = { +#ifdef CSS_DEBUG + kdDebug( 6080 ) << "@import: " << qString($3) << endl; +#endif + CSSParser *p =3D static_cast<CSSParser *>(parser); + if ( p->styleElement && p->styleElement->isCSSStyleSheet() ) + $$ =3D new CSSImportRuleImpl( p->styleElement, domString($3), $5 ); + else + $$ =3D 0; + } + | IMPORT_SYM error invalid_block { + $$ =3D 0; + } + | IMPORT_SYM error ';' { + $$ =3D 0; + } + ; + +maybe_namespace + : /* empty */ + | namespace maybe_sgml +; + +namespace + : NAMESPACE_SYM maybe_space maybe_ns_prefix string_or_uri maybe_space ';= ' + ; + +ns_prefix + : IDENT + ; + +maybe_ns_prefix: + /* empty */ { $$.string =3D 0; $$.length =3D 0; } + | ns_prefix S + ; =20 rule_list: /* empty */ @@ -323,47 +367,37 @@ | invalid_at ; =20 -import: - IMPORT_SYM maybe_space string_or_uri maybe_space media_list ';' { -#ifdef CSS_DEBUG - kdDebug( 6080 ) << "@import: " << qString($3) << endl; -#endif - CSSParser *p =3D static_cast<CSSParser *>(parser); - if ( p->styleElement && p->styleElement->isCSSStyleSheet() ) - $$ =3D new CSSImportRuleImpl( p->styleElement, domString($3), $5 ); - else - $$ =3D 0; - } - | IMPORT_SYM error invalid_block { - $$ =3D 0; - } - | IMPORT_SYM error ';' { - $$ =3D 0; - } - ; - string_or_uri: STRING | URI ; =20 -media_list: +maybe_media_list: /* empty */ { $$ =3D 0; } - | medium { + | media_list +; + + +media_list: + medium { $$ =3D new MediaListImpl(); $$->appendMedium( domString($1) ); } | media_list ',' maybe_space medium { $$ =3D $1; - if ( !$$ ) $$ =3D new MediaListImpl(); $$->appendMedium( domString($4) ); } -; + | media_list error { + delete $1; + $$ =3D 0; + } + ; + =20 media: - MEDIA_SYM maybe_space media_list2 '{' maybe_space ruleset_list '}' { + MEDIA_SYM maybe_space media_list '{' maybe_space ruleset_list '}' { CSSParser *p =3D static_cast<CSSParser *>(parser); if ( $3 && $6 && p->styleElement && p->styleElement->isCSSStyleSheet() ) { @@ -376,17 +410,6 @@ } ; =20 -media_list2: - medium { - $$ =3D new MediaListImpl(); - $$->appendMedium( domString($1) ); - } - | media_list ',' maybe_space medium { - $$ =3D $1; - $$->appendMedium( domString($4) ); - } - ; - =20 ruleset_list: /* empty */ { $$ =3D 0; } @@ -485,19 +508,23 @@ } } | selector_list ',' maybe_space selector { - $$ =3D $1; - if ( $4 ) { - if ( !$$ ) { - $$ =3D new QPtrList<CSSSelector>; - $$->setAutoDelete(true); - } + if ( $1 && $4 ) { + $$ =3D $1; $$->append( $4 ); #ifdef CSS_DEBUG kdDebug( 6080 ) << " got simple selector:" << endl; $4->print(); #endif + } else { + delete $1; + delete $4; + $$ =3D 0; } } + | selector_list error { + delete $1; + $$ =3D 0; + } ; =20 selector: @@ -509,23 +536,39 @@ $$->relation =3D $2; $$->tagHistory =3D $1; } + | selector error { + delete $1; + $$ =3D 0; + } ; =20 simple_selector: - element_name maybe_space { + ns_element maybe_space { $$ =3D new CSSSelector(); $$->tag =3D $1; } - | element_name specifier_list maybe_space { + | ns_element specifier_list maybe_space { $$ =3D $2; $$->tag =3D $1; } | specifier_list maybe_space { $$ =3D $1; - $$->tag =3D -1; + $$->tag =3D 0xffff; } ; =20 +ns_element: + ns_selector element_name { $$ =3D ($1<<16) | $2; } + | element_name { $$ =3D $1; } +; + +ns_selector: + '|' { $$ =3D 0; } + | IDENT '|' { $$ =3D 1; } + | '*' '|' { $$ =3D 0xffff; }=20 +; + + element_name: IDENT { CSSParser *p =3D static_cast<CSSParser *>(parser); @@ -543,9 +586,7 @@ // assert($$ !=3D 0); } } - | '*' { - $$ =3D -1; - } + | '*' { $$ =3D 0xffff; } ; =20 specifier_list: @@ -559,6 +600,10 @@ $$->relation =3D CSSSelector::SubSelector; $$->tagHistory =3D $2; } + | specifier_list error { + delete $1; + $$ =3D 0; +} ; =20 specifier: @@ -582,7 +627,12 @@ } ; =20 -attrib_id: +ns_attrib_id: + ns_selector attrib_id { $$ =3D ($1<<16) | $2; } + | attrib_id { $$ =3D $1; } +; + +attrib_id:=20 IDENT maybe_space { CSSParser *p =3D static_cast<CSSParser *>(parser); DOM::DocumentImpl *doc =3D p->document(); @@ -603,12 +653,12 @@ ; =20 attrib: - '[' maybe_space attrib_id ']' { + '[' maybe_space ns_attrib_id ']' { $$ =3D new CSSSelector(); $$->attr =3D $3; $$->match =3D CSSSelector::Set; } - | '[' maybe_space attrib_id match maybe_space ident_or_string maybe_sp= ace ']' { + | '[' maybe_space ns_attrib_id match maybe_space ident_or_string maybe= _space ']' { $$ =3D new CSSSelector(); $$->attr =3D $3; $$->match =3D (CSSSelector::Match)$4; @@ -768,6 +818,10 @@ } $$->addValue( $3 ); } + | expr error { + delete $1; + $$ =3D 0; + } ; =20 operator: diff -urN css.cvsup/tokenizer.cpp css.030221/tokenizer.cpp --- css.cvsup/tokenizer.cpp 2003-01-22 04:03:48.000000000 -0600 +++ css.030221/tokenizer.cpp 2003-02-20 17:31:46.000000000 -0600 @@ -3,7 +3,7 @@ * * Copyright (C) 2003 Lars Knoll ([email protected]) * - * $Id: tokenizer.cpp,v 1.6 2003/01/22 10:03:48 knoll Exp $ + * $Id: tokenizer.cpp,v 1.7 2003/02/20 21:09:57 knoll Exp $ * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -41,44 +41,45 @@ =20 // --------- begin generated code ------------------- =20 -#define YY_NUM_RULES 47 -#define YY_END_OF_BUFFER 48 -static yyconst short int yy_accept[304] =3D +#define YY_NUM_RULES 48 +#define YY_END_OF_BUFFER 49 +static yyconst short int yy_accept[313] =3D { 0, - 0, 0, 48, 46, 2, 2, 46, 46, 46, 46, - 46, 46, 46, 46, 46, 40, 46, 46, 46, 46, - 11, 11, 46, 46, 2, 0, 0, 0, 10, 0, - 12, 0, 8, 0, 0, 9, 0, 40, 0, 39, - 0, 40, 0, 38, 38, 38, 38, 38, 38, 38, - 38, 38, 38, 38, 38, 35, 0, 0, 0, 0, - 0, 0, 0, 11, 11, 7, 43, 11, 0, 0, - 11, 6, 5, 0, 0, 0, 10, 0, 0, 12, - 12, 0, 0, 10, 0, 0, 4, 0, 0, 38, - 38, 38, 0, 38, 26, 38, 22, 24, 38, 36, - - 28, 38, 27, 34, 30, 29, 25, 38, 0, 0, - 0, 0, 0, 0, 0, 11, 11, 11, 44, 44, - 11, 0, 0, 0, 12, 0, 0, 0, 1, 38, - 38, 38, 38, 31, 38, 37, 32, 3, 0, 0, - 0, 0, 0, 0, 11, 11, 0, 44, 44, 44, - 43, 0, 0, 12, 0, 0, 0, 38, 38, 38, - 33, 0, 0, 0, 0, 0, 14, 11, 11, 45, - 44, 44, 44, 44, 0, 0, 0, 0, 42, 0, - 0, 0, 12, 0, 38, 38, 23, 0, 0, 0, - 0, 15, 11, 11, 45, 44, 44, 44, 44, 44, - - 0, 0, 0, 0, 0, 0, 0, 0, 0, 42, - 0, 0, 0, 0, 12, 0, 38, 38, 0, 0, - 0, 13, 11, 11, 45, 44, 44, 44, 44, 44, - 44, 0, 41, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 12, 0, 38, 38, - 0, 0, 0, 17, 0, 11, 45, 44, 44, 44, - 44, 44, 44, 44, 0, 41, 0, 0, 0, 41, - 0, 0, 0, 0, 38, 0, 0, 0, 0, 45, - 0, 0, 0, 21, 0, 0, 0, 16, 45, 0, - 0, 0, 0, 18, 0, 0, 0, 0, 19, 20, + 0, 0, 49, 47, 2, 2, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 41, 47, 47, 47, 47, + 11, 11, 47, 47, 2, 0, 0, 0, 10, 0, + 12, 0, 8, 0, 0, 9, 0, 41, 0, 40, + 0, 41, 0, 39, 39, 39, 39, 39, 39, 39, + 39, 39, 39, 39, 39, 36, 0, 0, 0, 0, + 0, 0, 0, 0, 11, 11, 7, 44, 11, 0, + 0, 11, 6, 5, 0, 0, 0, 10, 0, 0, + 12, 12, 0, 0, 10, 0, 0, 4, 0, 0, + 39, 39, 39, 0, 39, 27, 39, 23, 25, 39, + + 37, 29, 39, 28, 35, 31, 30, 26, 39, 0, + 0, 0, 0, 0, 0, 0, 0, 11, 11, 11, + 45, 45, 11, 0, 0, 0, 12, 0, 0, 0, + 1, 39, 39, 39, 39, 32, 39, 38, 33, 3, + 0, 0, 0, 0, 0, 0, 0, 11, 11, 0, + 45, 45, 45, 44, 0, 0, 12, 0, 0, 0, + 39, 39, 39, 34, 0, 0, 0, 0, 0, 0, + 14, 11, 11, 46, 45, 45, 45, 45, 0, 0, + 0, 0, 43, 0, 0, 0, 12, 0, 39, 39, + 24, 0, 0, 0, 0, 15, 0, 11, 11, 46, + + 45, 45, 45, 45, 45, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 43, 0, 0, 0, 0, 12, + 0, 39, 39, 0, 0, 0, 13, 0, 11, 11, + 46, 45, 45, 45, 45, 45, 45, 0, 42, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 12, 0, 39, 39, 0, 0, 0, 17, + 0, 0, 11, 46, 45, 45, 45, 45, 45, 45, + 45, 0, 42, 0, 0, 0, 42, 0, 0, 0, + 0, 39, 0, 0, 0, 0, 0, 46, 0, 0, + 0, 22, 0, 0, 0, 16, 18, 46, 0, 0, =20 - 0, 0, 0 + 0, 0, 19, 0, 0, 0, 0, 20, 21, 0, + 0, 0 } ; =20 static yyconst int yy_ec[256] =3D @@ -123,84 +124,86 @@ 8, 8, 8, 4, 4, 8 } ; =20 -static yyconst short int yy_base[330] =3D +static yyconst short int yy_base[339] =3D { 0, - 0, 0, 723, 1578, 55, 60, 65, 64, 694, 697, - 60, 696, 700, 683, 687, 93, 695, 57, 75, 678, - 63, 66, 677, 676, 113, 148, 656, 70, 1578, 185, - 670, 126, 1578, 61, 219, 1578, 659, 60, 666, 1578, - 658, 0, 134, 55, 651, 58, 67, 121, 135, 143, - 148, 49, 150, 151, 144, 650, 658, 622, 624, 597, - 598, 603, 606, 84, 253, 1578, 1578, 158, 204, 268, - 167, 1578, 1578, 590, 199, 168, 172, 302, 336, 607, - 370, 201, 184, 200, 404, 438, 1578, 609, 185, 596, - 472, 595, 321, 183, 594, 206, 593, 579, 214, 578, - - 564, 216, 555, 554, 553, 552, 551, 233, 559, 532, - 544, 530, 527, 538, 534, 423, 234, 506, 245, 544, - 248, 513, 237, 498, 513, 252, 521, 534, 1578, 528, - 508, 562, 244, 499, 249, 498, 497, 1578, 480, 475, - 472, 476, 480, 483, 554, 569, 577, 272, 491, 490, - 611, 467, 597, 612, 618, 484, 252, 633, 639, 250, - 471, 451, 448, 477, 440, 456, 1578, 654, 660, 675, - 291, 459, 458, 457, 709, 735, 286, 268, 1578, 761, - 432, 695, 721, 768, 776, 783, 453, 461, 433, 395, - 380, 1578, 791, 798, 806, 293, 402, 394, 369, 368, - - 343, 288, 375, 840, 299, 874, 908, 934, 960, 986, - 1012, 1046, 358, 825, 859, 894, 920, 946, 365, 338, - 335, 1578, 972, 1053, 1061, 296, 339, 337, 336, 335, - 334, 380, 1578, 316, 323, 418, 1095, 1129, 386, 401, - 1108, 1163, 1197, 1182, 287, 1204, 1212, 1219, 458, 1227, - 294, 277, 295, 1578, 290, 444, 1234, 302, 1578, 1578, - 1578, 1578, 1578, 1578, 486, 384, 388, 1242, 1276, 405, - 439, 1262, 1277, 268, 653, 259, 232, 206, 197, 1283, - 1298, 1304, 1319, 1578, 189, 175, 134, 1578, 1578, 1325, - 1340, 1346, 131, 1578, 87, 1361, 1367, 1382, 1578, 1578, - - 1388, 1403, 1578, 1437, 1440, 1447, 1452, 1456, 1463, 1468, - 1475, 1483, 1488, 1491, 1496, 1504, 1509, 1512, 1519, 1522, - 1528, 1531, 1537, 1544, 1551, 1554, 1560, 1567, 1570 + 0, 0, 747, 1578, 55, 60, 65, 64, 719, 722, + 60, 721, 717, 713, 717, 93, 725, 57, 75, 708, + 63, 66, 700, 698, 113, 148, 678, 70, 1578, 185, + 692, 126, 1578, 61, 219, 1578, 694, 60, 688, 1578, + 682, 0, 134, 55, 675, 59, 136, 149, 135, 58, + 151, 144, 150, 147, 145, 674, 682, 659, 661, 653, + 641, 648, 649, 648, 170, 253, 1578, 1578, 181, 204, + 268, 186, 1578, 1578, 632, 177, 175, 199, 302, 336, + 649, 370, 263, 201, 216, 404, 438, 1578, 646, 78, + 634, 472, 614, 321, 184, 613, 206, 610, 609, 214, + + 608, 607, 178, 598, 596, 595, 594, 593, 176, 588, + 561, 561, 539, 536, 547, 537, 542, 423, 233, 506, + 243, 552, 248, 532, 237, 498, 513, 250, 521, 558, + 1578, 528, 546, 562, 238, 545, 246, 544, 543, 1578, + 526, 510, 501, 491, 488, 491, 490, 554, 569, 577, + 253, 498, 497, 611, 474, 597, 612, 618, 504, 275, + 633, 639, 254, 491, 471, 468, 497, 467, 470, 450, + 1578, 654, 660, 675, 291, 472, 471, 470, 709, 735, + 284, 299, 1578, 761, 438, 695, 721, 768, 776, 783, + 457, 465, 448, 446, 431, 1578, 434, 791, 798, 806, + + 295, 405, 404, 402, 394, 343, 316, 375, 840, 301, + 874, 908, 934, 960, 986, 1012, 1046, 364, 825, 859, + 894, 920, 946, 365, 344, 358, 1578, 335, 972, 1053, + 1061, 297, 339, 337, 336, 335, 334, 380, 1578, 384, + 323, 418, 1095, 1129, 386, 401, 1108, 1163, 1197, 1182, + 287, 1204, 1212, 1219, 458, 1227, 293, 275, 291, 1578, + 287, 286, 444, 1234, 299, 1578, 1578, 1578, 1578, 1578, + 1578, 486, 388, 459, 1242, 1276, 405, 439, 1262, 1277, + 248, 653, 262, 241, 229, 235, 214, 1283, 1298, 1304, + 1319, 1578, 169, 139, 98, 1578, 1578, 1578, 1325, 1340, + + 1346, 73, 1578, 42, 1361, 1367, 1382, 1578, 1578, 1388, + 1403, 1578, 1437, 1440, 1447, 1452, 1456, 1463, 1468, 1475, + 1483, 1488, 1491, 1496, 1504, 1509, 1512, 1519, 1522, 1528, + 1531, 1537, 1544, 1551, 1554, 1560, 1567, 1570 } ; =20 -static yyconst short int yy_def[330] =3D +static yyconst short int yy_def[339] =3D { 0, - 303, 1, 303, 303, 303, 303, 303, 304, 305, 303, - 306, 303, 303, 303, 303, 303, 303, 303, 307, 303, - 308, 308, 303, 303, 303, 303, 303, 304, 303, 309, - 305, 310, 303, 306, 311, 303, 303, 16, 312, 303, - 303, 16, 313, 314, 314, 314, 314, 314, 314, 314, - 314, 314, 314, 314, 314, 314, 303, 303, 303, 303, - 303, 303, 303, 308, 308, 303, 303, 308, 315, 303, - 308, 303, 303, 303, 304, 304, 304, 304, 309, 305, - 305, 306, 306, 306, 306, 311, 303, 312, 316, 314, - 314, 314, 317, 314, 314, 314, 314, 314, 314, 314, - - 314, 314, 314, 314, 314, 314, 314, 314, 303, 303, - 303, 303, 303, 303, 303, 65, 308, 65, 318, 303, - 308, 303, 304, 78, 81, 306, 85, 319, 303, 91, - 314, 91, 314, 314, 314, 314, 314, 303, 303, 303, - 303, 303, 303, 303, 65, 118, 303, 320, 303, 303, - 321, 303, 78, 81, 85, 319, 316, 91, 132, 314, - 314, 303, 303, 303, 303, 303, 303, 65, 118, 303, - 322, 303, 303, 303, 321, 321, 323, 324, 303, 325, - 303, 78, 81, 85, 91, 132, 314, 303, 303, 303, - 303, 303, 65, 118, 303, 326, 303, 303, 303, 303, - - 303, 323, 303, 327, 324, 328, 321, 321, 321, 321, - 321, 325, 303, 78, 81, 85, 91, 132, 303, 303, - 303, 303, 65, 118, 303, 329, 303, 303, 303, 303, - 303, 303, 303, 323, 323, 323, 323, 327, 324, 324, - 324, 324, 328, 211, 303, 78, 81, 85, 314, 132, - 303, 303, 303, 303, 303, 223, 303, 303, 303, 303, - 303, 303, 303, 303, 323, 323, 323, 237, 324, 324, - 324, 242, 211, 303, 314, 303, 303, 303, 303, 303, - 237, 242, 211, 303, 303, 303, 303, 303, 303, 237, - 242, 211, 303, 303, 303, 237, 242, 211, 303, 303, - - 237, 242, 0, 303, 303, 303, 303, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303 + 312, 1, 312, 312, 312, 312, 312, 313, 314, 312, + 315, 312, 312, 312, 312, 312, 312, 312, 316, 312, + 317, 317, 312, 312, 312, 312, 312, 313, 312, 318, + 314, 319, 312, 315, 320, 312, 312, 16, 321, 312, + 312, 16, 322, 323, 323, 323, 323, 323, 323, 323, + 323, 323, 323, 323, 323, 323, 312, 312, 312, 312, + 312, 312, 312, 312, 317, 317, 312, 312, 317, 324, + 312, 317, 312, 312, 312, 313, 313, 313, 313, 318, + 314, 314, 315, 315, 315, 315, 320, 312, 321, 325, + 323, 323, 323, 326, 323, 323, 323, 323, 323, 323, + + 323, 323, 323, 323, 323, 323, 323, 323, 323, 312, + 312, 312, 312, 312, 312, 312, 312, 66, 317, 66, + 327, 312, 317, 312, 313, 79, 82, 315, 86, 328, + 312, 92, 323, 92, 323, 323, 323, 323, 323, 312, + 312, 312, 312, 312, 312, 312, 312, 66, 120, 312, + 329, 312, 312, 330, 312, 79, 82, 86, 328, 325, + 92, 134, 323, 323, 312, 312, 312, 312, 312, 312, + 312, 66, 120, 312, 331, 312, 312, 312, 330, 330, + 332, 333, 312, 334, 312, 79, 82, 86, 92, 134, + 323, 312, 312, 312, 312, 312, 312, 66, 120, 312, + + 335, 312, 312, 312, 312, 312, 332, 312, 336, 333, + 337, 330, 330, 330, 330, 330, 334, 312, 79, 82, + 86, 92, 134, 312, 312, 312, 312, 312, 66, 120, + 312, 338, 312, 312, 312, 312, 312, 312, 312, 332, + 332, 332, 332, 336, 333, 333, 333, 333, 337, 216, + 312, 79, 82, 86, 323, 134, 312, 312, 312, 312, + 312, 312, 229, 312, 312, 312, 312, 312, 312, 312, + 312, 332, 332, 332, 243, 333, 333, 333, 248, 216, + 312, 323, 312, 312, 312, 312, 312, 312, 243, 248, + 216, 312, 312, 312, 312, 312, 312, 312, 243, 248, + + 216, 312, 312, 312, 243, 248, 216, 312, 312, 243, + 248, 0, 312, 312, 312, 312, 312, 312, 312, 312, + 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, + 312, 312, 312, 312, 312, 312, 312, 312 } ; =20 static yyconst short int yy_nxt[1635] =3D @@ -212,179 +215,179 @@ 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 21, 21, 21, 23, 24, 21, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 26, 26, 26, 26, - 26, 29, 29, 29, 58, 93, 67, 29, 303, 67, - 38, 93, 70, 94, 93, 102, 35, 35, 59, 69, - 30, 60, 69, 93, 61, 65, 30, 67, 62, 95, - - 96, 63, 27, 40, 65, 65, 65, 65, 65, 65, - 69, 41, 71, 42, 25, 25, 25, 25, 25, 43, - 300, 44, 45, 45, 46, 47, 48, 45, 49, 50, + 26, 29, 29, 29, 58, 309, 68, 29, 312, 68, + 38, 94, 71, 95, 94, 94, 35, 35, 59, 70, + 30, 60, 70, 90, 61, 66, 30, 131, 62, 63, + + 96, 64, 27, 40, 66, 66, 66, 66, 66, 66, + 101, 41, 72, 42, 25, 25, 25, 25, 25, 43, + 308, 44, 45, 45, 46, 47, 48, 45, 49, 50, 51, 45, 52, 45, 53, 45, 45, 54, 45, 55, - 56, 45, 45, 45, 45, 45, 81, 93, 45, 26, - 26, 26, 26, 26, 91, 81, 81, 81, 81, 81, - 81, 93, 97, 91, 91, 91, 91, 91, 91, 93, - 93, 67, 98, 108, 93, 29, 93, 93, 299, 29, - 67, 99, 105, 295, 69, 27, 28, 28, 28, 75, - 101, 103, 77, 69, 30, 100, 29, 104, 30, 106, - - 89, 28, 107, 34, 129, 78, 29, 121, 294, 93, - 35, 79, 29, 29, 78, 78, 78, 78, 78, 78, - 34, 34, 34, 82, 118, 30, 35, 35, 133, 293, - 288, 84, 93, 118, 118, 118, 118, 118, 118, 85, - 93, 134, 93, 135, 29, 86, 287, 67, 85, 85, - 85, 85, 85, 85, 64, 64, 64, 64, 64, 93, - 69, 151, 147, 30, 29, 137, 67, 157, 136, 149, - 93, 129, 286, 116, 69, 93, 93, 160, 35, 69, - 203, 161, 116, 116, 116, 116, 116, 116, 119, 147, - 285, 187, 120, 203, 206, 203, 172, 119, 119, 119, - - 119, 119, 119, 76, 123, 123, 123, 76, 147, 29, - 147, 203, 204, 147, 204, 197, 284, 227, 202, 147, - 259, 279, 124, 203, 278, 206, 277, 276, 30, 274, - 203, 124, 124, 124, 124, 124, 124, 28, 28, 28, - 75, 132, 204, 77, 201, 201, 201, 201, 201, 204, - 132, 132, 132, 132, 132, 132, 78, 179, 264, 263, - 262, 261, 79, 260, 255, 78, 78, 78, 78, 78, - 78, 80, 80, 80, 80, 80, 232, 232, 232, 232, - 232, 232, 232, 232, 232, 232, 254, 245, 205, 233, - 125, 203, 231, 230, 233, 203, 32, 251, 203, 125, - - 125, 125, 125, 125, 125, 83, 126, 126, 126, 83, - 204, 252, 206, 203, 204, 253, 29, 203, 229, 265, - 232, 232, 232, 265, 127, 203, 228, 206, 222, 221, - 35, 206, 266, 127, 127, 127, 127, 127, 127, 34, - 34, 34, 82, 145, 204, 117, 117, 117, 117, 117, - 84, 203, 145, 145, 145, 145, 145, 145, 85, 90, - 90, 90, 90, 90, 86, 206, 220, 85, 85, 85, - 85, 85, 85, 90, 90, 90, 90, 90, 219, 93, - 213, 200, 199, 198, 93, 192, 191, 265, 232, 232, - 232, 265, 130, 203, 190, 189, 188, 93, 93, 157, - - 266, 130, 130, 130, 130, 130, 130, 117, 117, 117, - 117, 117, 204, 181, 174, 173, 167, 166, 153, 165, - 164, 163, 162, 93, 93, 93, 146, 153, 153, 153, - 153, 153, 153, 154, 93, 146, 146, 146, 146, 146, - 146, 155, 154, 154, 154, 154, 154, 154, 158, 157, - 155, 155, 155, 155, 155, 155, 152, 158, 158, 158, - 158, 158, 158, 131, 131, 131, 131, 131, 150, 144, - 143, 142, 141, 140, 168, 139, 138, 93, 93, 93, - 93, 93, 159, 168, 168, 168, 168, 168, 168, 169, - 93, 159, 159, 159, 159, 159, 159, 170, 169, 169, - - 169, 169, 169, 169, 93, 93, 170, 170, 170, 170, - 170, 170, 175, 175, 175, 175, 175, 182, 177, 93, - 93, 93, 93, 178, 89, 179, 182, 182, 182, 182, - 182, 182, 183, 32, 122, 115, 114, 180, 184, 113, - 112, 183, 183, 183, 183, 183, 183, 184, 184, 184, - 184, 184, 184, 185, 131, 131, 131, 131, 131, 186, - 111, 110, 185, 185, 185, 185, 185, 185, 186, 186, - 186, 186, 186, 186, 193, 109, 93, 93, 38, 93, - 194, 89, 87, 193, 193, 193, 193, 193, 193, 194, - 194, 194, 194, 194, 194, 195, 32, 74, 73, 72, - - 66, 57, 39, 38, 195, 195, 195, 195, 195, 195, - 175, 175, 175, 175, 175, 214, 177, 37, 36, 33, - 32, 178, 303, 179, 214, 214, 214, 214, 214, 214, - 303, 303, 303, 303, 303, 180, 201, 201, 201, 201, - 201, 215, 303, 303, 303, 303, 303, 303, 303, 179, - 215, 215, 215, 215, 215, 215, 303, 303, 303, 303, - 303, 180, 201, 201, 201, 201, 207, 303, 209, 303, - 303, 303, 303, 209, 209, 210, 303, 303, 303, 303, - 303, 211, 303, 303, 303, 303, 303, 212, 216, 303, - 211, 211, 211, 211, 211, 211, 217, 216, 216, 216, - - 216, 216, 216, 218, 303, 217, 217, 217, 217, 217, - 217, 223, 218, 218, 218, 218, 218, 218, 224, 303, - 223, 223, 223, 223, 223, 223, 225, 224, 224, 224, - 224, 224, 224, 303, 303, 225, 225, 225, 225, 225, - 225, 202, 202, 202, 234, 246, 303, 236, 303, 303, - 303, 303, 303, 303, 246, 246, 246, 246, 246, 246, - 237, 303, 303, 303, 303, 303, 238, 303, 303, 237, - 237, 237, 237, 237, 237, 205, 205, 205, 239, 247, - 303, 303, 303, 303, 303, 303, 241, 303, 247, 247, - 247, 247, 247, 247, 242, 303, 303, 303, 303, 303, - - 243, 303, 303, 242, 242, 242, 242, 242, 242, 201, - 201, 201, 201, 201, 248, 303, 303, 303, 303, 303, - 303, 303, 179, 248, 248, 248, 248, 248, 248, 303, - 303, 303, 303, 303, 180, 201, 201, 201, 201, 201, - 249, 303, 303, 303, 303, 303, 303, 303, 179, 249, - 249, 249, 249, 249, 249, 303, 303, 303, 303, 303, - 180, 201, 201, 201, 201, 201, 250, 303, 303, 303, - 303, 303, 303, 303, 179, 250, 250, 250, 250, 250, - 250, 303, 303, 303, 303, 303, 180, 201, 201, 201, - 201, 201, 68, 303, 303, 303, 303, 303, 303, 303, - - 179, 68, 68, 68, 68, 68, 68, 303, 303, 303, - 303, 303, 180, 207, 207, 207, 207, 207, 303, 303, - 303, 303, 303, 303, 303, 303, 179, 303, 303, 303, - 303, 303, 244, 303, 303, 303, 303, 303, 180, 303, - 303, 244, 244, 244, 244, 244, 244, 201, 201, 201, - 201, 207, 303, 209, 303, 303, 303, 303, 209, 209, - 210, 303, 303, 303, 303, 303, 211, 303, 303, 303, - 303, 303, 212, 256, 303, 211, 211, 211, 211, 211, - 211, 257, 256, 256, 256, 256, 256, 256, 303, 303, - 257, 257, 257, 257, 257, 257, 235, 267, 267, 267, - - 235, 303, 203, 303, 303, 303, 303, 303, 303, 269, - 232, 232, 232, 269, 303, 268, 303, 303, 303, 303, - 203, 204, 270, 303, 268, 268, 268, 268, 268, 268, - 202, 202, 202, 234, 206, 303, 236, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303, 237, - 303, 303, 303, 303, 303, 238, 303, 303, 237, 237, - 237, 237, 237, 237, 240, 271, 271, 271, 240, 303, - 303, 303, 303, 303, 303, 203, 303, 303, 303, 303, - 303, 303, 303, 272, 303, 303, 303, 303, 303, 206, - 303, 303, 272, 272, 272, 272, 272, 272, 205, 205, - - 205, 239, 273, 303, 303, 303, 303, 303, 303, 241, - 303, 273, 273, 273, 273, 273, 273, 242, 303, 303, - 303, 303, 303, 243, 28, 303, 242, 242, 242, 242, - 242, 242, 31, 28, 28, 28, 28, 28, 28, 34, - 303, 31, 31, 31, 31, 31, 31, 275, 34, 34, - 34, 34, 34, 34, 280, 303, 275, 275, 275, 275, - 275, 275, 281, 280, 280, 280, 280, 280, 280, 303, - 303, 281, 281, 281, 281, 281, 281, 269, 232, 232, - 232, 269, 282, 303, 303, 303, 303, 303, 203, 303, - 270, 282, 282, 282, 282, 282, 282, 283, 303, 303, - - 303, 303, 206, 289, 303, 303, 283, 283, 283, 283, - 283, 283, 289, 289, 289, 289, 289, 289, 290, 303, - 303, 303, 303, 303, 291, 303, 303, 290, 290, 290, - 290, 290, 290, 291, 291, 291, 291, 291, 291, 292, - 303, 303, 303, 303, 303, 296, 303, 303, 292, 292, - 292, 292, 292, 292, 296, 296, 296, 296, 296, 296, - 297, 303, 303, 303, 303, 303, 298, 303, 303, 297, - 297, 297, 297, 297, 297, 298, 298, 298, 298, 298, - 298, 301, 303, 303, 303, 303, 303, 302, 303, 303, - 301, 301, 301, 301, 301, 301, 302, 302, 302, 302, - - 302, 302, 176, 303, 303, 303, 303, 303, 202, 303, - 303, 176, 176, 176, 176, 176, 176, 202, 202, 202, - 202, 202, 202, 205, 303, 303, 303, 303, 303, 303, - 303, 303, 205, 205, 205, 205, 205, 205, 28, 303, - 28, 28, 28, 28, 28, 31, 303, 31, 34, 303, - 34, 34, 34, 34, 34, 64, 64, 64, 64, 64, - 68, 68, 303, 68, 76, 76, 76, 76, 76, 76, - 76, 80, 80, 80, 80, 80, 83, 83, 83, 83, - 83, 83, 83, 88, 88, 88, 88, 88, 88, 88, - 88, 90, 90, 90, 90, 90, 92, 303, 92, 117, - - 117, 117, 117, 117, 128, 128, 128, 128, 128, 128, - 128, 128, 131, 131, 131, 131, 131, 148, 148, 156, - 156, 156, 156, 156, 156, 156, 156, 171, 171, 176, - 176, 176, 303, 176, 176, 176, 196, 196, 202, 303, - 202, 202, 202, 202, 202, 205, 303, 205, 205, 205, - 205, 205, 208, 208, 208, 208, 208, 208, 208, 226, - 226, 235, 235, 235, 235, 235, 235, 235, 240, 240, - 240, 240, 240, 240, 240, 258, 258, 3, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - 303, 303, 303, 303 + 56, 45, 45, 45, 45, 45, 82, 304, 45, 26, + 26, 26, 26, 26, 92, 82, 82, 82, 82, 82, + 82, 94, 94, 92, 92, 92, 92, 92, 92, 97, + 94, 94, 303, 94, 109, 94, 94, 94, 106, 28, + 103, 100, 29, 68, 29, 27, 28, 28, 28, 76, + 98, 104, 78, 102, 68, 107, 70, 105, 108, 68, + + 99, 30, 94, 30, 94, 79, 29, 70, 139, 302, + 94, 80, 70, 29, 79, 79, 79, 79, 79, 79, + 34, 34, 34, 83, 120, 30, 123, 35, 29, 135, + 138, 85, 94, 120, 120, 120, 120, 120, 120, 86, + 94, 136, 35, 137, 29, 87, 68, 297, 86, 86, + 86, 86, 86, 86, 65, 65, 65, 65, 65, 70, + 150, 154, 29, 30, 94, 34, 68, 152, 296, 295, + 150, 163, 94, 118, 70, 29, 35, 176, 164, 70, + 94, 294, 118, 118, 118, 118, 118, 118, 121, 35, + 160, 208, 122, 293, 131, 191, 292, 121, 121, 121, + + 121, 121, 121, 77, 125, 125, 125, 77, 150, 29, + 209, 208, 150, 208, 150, 202, 150, 287, 286, 233, + 285, 266, 126, 208, 284, 211, 283, 211, 30, 281, + 208, 126, 126, 126, 126, 126, 126, 28, 28, 28, + 76, 134, 209, 78, 206, 206, 206, 206, 206, 209, + 134, 134, 134, 134, 134, 134, 79, 183, 271, 270, + 269, 268, 80, 267, 262, 79, 79, 79, 79, 79, + 79, 81, 81, 81, 81, 81, 238, 238, 238, 238, + 238, 238, 238, 238, 238, 238, 207, 261, 210, 239, + 127, 208, 260, 251, 239, 208, 32, 257, 208, 127, + + 127, 127, 127, 127, 127, 84, 128, 128, 128, 84, + 209, 258, 211, 208, 209, 259, 29, 208, 237, 272, + 238, 238, 238, 272, 129, 208, 236, 211, 235, 234, + 35, 211, 273, 129, 129, 129, 129, 129, 129, 34, + 34, 34, 83, 148, 209, 119, 119, 119, 119, 119, + 85, 208, 148, 148, 148, 148, 148, 148, 86, 91, + 91, 91, 91, 91, 87, 211, 208, 86, 86, 86, + 86, 86, 86, 91, 91, 91, 91, 91, 228, 227, + 226, 225, 224, 94, 94, 209, 218, 272, 238, 238, + 238, 272, 132, 208, 205, 204, 203, 197, 94, 196, + + 273, 132, 132, 132, 132, 132, 132, 119, 119, 119, + 119, 119, 209, 195, 194, 193, 192, 94, 156, 160, + 185, 178, 177, 171, 170, 169, 149, 156, 156, 156, + 156, 156, 156, 157, 168, 149, 149, 149, 149, 149, + 149, 158, 157, 157, 157, 157, 157, 157, 161, 167, + 158, 158, 158, 158, 158, 158, 166, 161, 161, 161, + 161, 161, 161, 133, 133, 133, 133, 133, 165, 94, + 94, 94, 94, 160, 172, 155, 153, 147, 146, 145, + 144, 143, 162, 172, 172, 172, 172, 172, 172, 173, + 142, 162, 162, 162, 162, 162, 162, 174, 173, 173, + + 173, 173, 173, 173, 141, 140, 174, 174, 174, 174, + 174, 174, 179, 179, 179, 179, 179, 186, 181, 94, + 94, 94, 94, 182, 94, 183, 186, 186, 186, 186, + 186, 186, 187, 94, 94, 94, 94, 184, 188, 94, + 94, 187, 187, 187, 187, 187, 187, 188, 188, 188, + 188, 188, 188, 189, 133, 133, 133, 133, 133, 190, + 94, 90, 189, 189, 189, 189, 189, 189, 190, 190, + 190, 190, 190, 190, 198, 32, 124, 117, 116, 94, + 199, 115, 114, 198, 198, 198, 198, 198, 198, 199, + 199, 199, 199, 199, 199, 200, 113, 112, 111, 110, + + 94, 94, 38, 90, 200, 200, 200, 200, 200, 200, + 179, 179, 179, 179, 179, 219, 181, 88, 32, 75, + 74, 182, 73, 183, 219, 219, 219, 219, 219, 219, + 67, 57, 39, 38, 37, 184, 206, 206, 206, 206, + 206, 220, 312, 36, 33, 32, 312, 312, 312, 183, + 220, 220, 220, 220, 220, 220, 312, 312, 312, 312, + 312, 184, 206, 206, 206, 206, 212, 312, 214, 312, + 312, 312, 312, 214, 214, 215, 312, 312, 312, 312, + 312, 216, 312, 312, 312, 312, 312, 217, 221, 312, + 216, 216, 216, 216, 216, 216, 222, 221, 221, 221, + + 221, 221, 221, 223, 312, 222, 222, 222, 222, 222, + 222, 229, 223, 223, 223, 223, 223, 223, 230, 312, + 229, 229, 229, 229, 229, 229, 231, 230, 230, 230, + 230, 230, 230, 312, 312, 231, 231, 231, 231, 231, + 231, 207, 207, 207, 240, 252, 312, 242, 312, 312, + 312, 312, 312, 312, 252, 252, 252, 252, 252, 252, + 243, 312, 312, 312, 312, 312, 244, 312, 312, 243, + 243, 243, 243, 243, 243, 210, 210, 210, 245, 253, + 312, 312, 312, 312, 312, 312, 247, 312, 253, 253, + 253, 253, 253, 253, 248, 312, 312, 312, 312, 312, + + 249, 312, 312, 248, 248, 248, 248, 248, 248, 206, + 206, 206, 206, 206, 254, 312, 312, 312, 312, 312, + 312, 312, 183, 254, 254, 254, 254, 254, 254, 312, + 312, 312, 312, 312, 184, 206, 206, 206, 206, 206, + 255, 312, 312, 312, 312, 312, 312, 312, 183, 255, + 255, 255, 255, 255, 255, 312, 312, 312, 312, 312, + 184, 206, 206, 206, 206, 206, 256, 312, 312, 312, + 312, 312, 312, 312, 183, 256, 256, 256, 256, 256, + 256, 312, 312, 312, 312, 312, 184, 206, 206, 206, + 206, 206, 69, 312, 312, 312, 312, 312, 312, 312, + + 183, 69, 69, 69, 69, 69, 69, 312, 312, 312, + 312, 312, 184, 212, 212, 212, 212, 212, 312, 312, + 312, 312, 312, 312, 312, 312, 183, 312, 312, 312, + 312, 312, 250, 312, 312, 312, 312, 312, 184, 312, + 312, 250, 250, 250, 250, 250, 250, 206, 206, 206, + 206, 212, 312, 214, 312, 312, 312, 312, 214, 214, + 215, 312, 312, 312, 312, 312, 216, 312, 312, 312, + 312, 312, 217, 263, 312, 216, 216, 216, 216, 216, + 216, 264, 263, 263, 263, 263, 263, 263, 312, 312, + 264, 264, 264, 264, 264, 264, 241, 274, 274, 274, + + 241, 312, 208, 312, 312, 312, 312, 312, 312, 276, + 238, 238, 238, 276, 312, 275, 312, 312, 312, 312, + 208, 209, 277, 312, 275, 275, 275, 275, 275, 275, + 207, 207, 207, 240, 211, 312, 242, 312, 312, 312, + 312, 312, 312, 312, 312, 312, 312, 312, 312, 243, + 312, 312, 312, 312, 312, 244, 312, 312, 243, 243, + 243, 243, 243, 243, 246, 278, 278, 278, 246, 312, + 312, 312, 312, 312, 312, 208, 312, 312, 312, 312, + 312, 312, 312, 279, 312, 312, 312, 312, 312, 211, + 312, 312, 279, 279, 279, 279, 279, 279, 210, 210, + + 210, 245, 280, 312, 312, 312, 312, 312, 312, 247, + 312, 280, 280, 280, 280, 280, 280, 248, 312, 312, + 312, 312, 312, 249, 28, 312, 248, 248, 248, 248, + 248, 248, 31, 28, 28, 28, 28, 28, 28, 34, + 312, 31, 31, 31, 31, 31, 31, 282, 34, 34, + 34, 34, 34, 34, 288, 312, 282, 282, 282, 282, + 282, 282, 289, 288, 288, 288, 288, 288, 288, 312, + 312, 289, 289, 289, 289, 289, 289, 276, 238, 238, + 238, 276, 290, 312, 312, 312, 312, 312, 208, 312, + 277, 290, 290, 290, 290, 290, 290, 291, 312, 312, + + 312, 312, 211, 298, 312, 312, 291, 291, 291, 291, + 291, 291, 298, 298, 298, 298, 298, 298, 299, 312, + 312, 312, 312, 312, 300, 312, 312, 299, 299, 299, + 299, 299, 299, 300, 300, 300, 300, 300, 300, 301, + 312, 312, 312, 312, 312, 305, 312, 312, 301, 301, + 301, 301, 301, 301, 305, 305, 305, 305, 305, 305, + 306, 312, 312, 312, 312, 312, 307, 312, 312, 306, + 306, 306, 306, 306, 306, 307, 307, 307, 307, 307, + 307, 310, 312, 312, 312, 312, 312, 311, 312, 312, + 310, 310, 310, 310, 310, 310, 311, 311, 311, 311, + + 311, 311, 180, 312, 312, 312, 312, 312, 207, 312, + 312, 180, 180, 180, 180, 180, 180, 207, 207, 207, + 207, 207, 207, 210, 312, 312, 312, 312, 312, 312, + 312, 312, 210, 210, 210, 210, 210, 210, 28, 312, + 28, 28, 28, 28, 28, 31, 312, 31, 34, 312, + 34, 34, 34, 34, 34, 65, 65, 65, 65, 65, + 69, 69, 312, 69, 77, 77, 77, 77, 77, 77, + 77, 81, 81, 81, 81, 81, 84, 84, 84, 84, + 84, 84, 84, 89, 89, 89, 89, 89, 89, 89, + 89, 91, 91, 91, 91, 91, 93, 312, 93, 119, + + 119, 119, 119, 119, 130, 130, 130, 130, 130, 130, + 130, 130, 133, 133, 133, 133, 133, 151, 151, 159, + 159, 159, 159, 159, 159, 159, 159, 175, 175, 180, + 180, 180, 312, 180, 180, 180, 201, 201, 207, 312, + 207, 207, 207, 207, 207, 210, 312, 210, 210, 210, + 210, 210, 213, 213, 213, 213, 213, 213, 213, 232, + 232, 241, 241, 241, 241, 241, 241, 241, 246, 246, + 246, 246, 246, 246, 246, 265, 265, 3, 312, 312, + 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, + 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, + + 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, + 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, + 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, + 312, 312, 312, 312 } ; =20 static yyconst short int yy_chk[1635] =3D @@ -396,179 +399,179 @@ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, - 7, 8, 11, 34, 18, 52, 21, 28, 38, 22, - 38, 44, 22, 44, 46, 52, 11, 34, 18, 21, - 8, 18, 22, 47, 18, 19, 28, 64, 18, 46, - - 47, 18, 7, 16, 19, 19, 19, 19, 19, 19, - 64, 16, 22, 16, 25, 25, 25, 25, 25, 16, - 295, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 7, 8, 11, 34, 18, 304, 21, 28, 38, 22, + 38, 44, 22, 44, 50, 46, 11, 34, 18, 21, + 8, 18, 22, 90, 18, 19, 28, 90, 18, 18, + + 46, 18, 7, 16, 19, 19, 19, 19, 19, 19, + 50, 16, 22, 16, 25, 25, 25, 25, 25, 16, + 302, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 32, 48, 16, 26, + 16, 16, 16, 16, 16, 16, 32, 295, 16, 26, 26, 26, 26, 26, 43, 32, 32, 32, 32, 32, - 32, 49, 48, 43, 43, 43, 43, 43, 43, 50, - 55, 68, 48, 55, 51, 76, 53, 54, 293, 77, - 71, 49, 54, 287, 68, 26, 30, 30, 30, 30, - 51, 53, 30, 71, 76, 50, 83, 53, 77, 54, - - 89, 75, 54, 82, 89, 30, 75, 71, 286, 94, - 83, 30, 84, 82, 30, 30, 30, 30, 30, 30, - 35, 35, 35, 35, 69, 75, 84, 82, 94, 285, - 279, 35, 96, 69, 69, 69, 69, 69, 69, 35, - 99, 96, 102, 99, 123, 35, 278, 117, 35, 35, - 35, 35, 35, 35, 65, 65, 65, 65, 65, 108, - 117, 121, 119, 123, 126, 108, 65, 157, 102, 119, - 133, 157, 277, 65, 121, 135, 160, 133, 126, 65, - 178, 135, 65, 65, 65, 65, 65, 65, 70, 148, - 276, 160, 70, 177, 178, 202, 148, 70, 70, 70, - - 70, 70, 70, 78, 78, 78, 78, 78, 171, 78, - 196, 205, 177, 226, 202, 171, 274, 196, 234, 258, - 226, 255, 78, 234, 253, 205, 252, 251, 78, 245, - 235, 78, 78, 78, 78, 78, 78, 79, 79, 79, - 79, 93, 234, 79, 201, 201, 201, 201, 201, 235, - 93, 93, 93, 93, 93, 93, 79, 201, 231, 230, - 229, 228, 79, 227, 221, 79, 79, 79, 79, 79, - 79, 81, 81, 81, 81, 81, 203, 203, 203, 203, - 203, 232, 232, 232, 232, 232, 220, 213, 239, 203, - 81, 266, 200, 199, 232, 267, 81, 219, 239, 81, - - 81, 81, 81, 81, 81, 85, 85, 85, 85, 85, - 266, 219, 239, 240, 267, 219, 85, 270, 198, 236, - 236, 236, 236, 236, 85, 236, 197, 240, 191, 190, - 85, 270, 236, 85, 85, 85, 85, 85, 85, 86, - 86, 86, 86, 116, 236, 256, 256, 256, 256, 256, - 86, 271, 116, 116, 116, 116, 116, 116, 86, 249, - 249, 249, 249, 249, 86, 271, 189, 86, 86, 86, - 86, 86, 86, 91, 91, 91, 91, 91, 188, 187, - 181, 174, 173, 172, 249, 166, 165, 265, 265, 265, - 265, 265, 91, 265, 164, 163, 162, 161, 91, 156, - - 265, 91, 91, 91, 91, 91, 91, 118, 118, 118, - 118, 118, 265, 152, 150, 149, 144, 143, 124, 142, - 141, 140, 139, 137, 136, 134, 118, 124, 124, 124, - 124, 124, 124, 125, 131, 118, 118, 118, 118, 118, - 118, 127, 125, 125, 125, 125, 125, 125, 130, 128, - 127, 127, 127, 127, 127, 127, 122, 130, 130, 130, - 130, 130, 130, 132, 132, 132, 132, 132, 120, 115, - 114, 113, 112, 111, 145, 110, 109, 107, 106, 105, - 104, 103, 132, 145, 145, 145, 145, 145, 145, 146, - 101, 132, 132, 132, 132, 132, 132, 147, 146, 146, - - 146, 146, 146, 146, 100, 98, 147, 147, 147, 147, - 147, 147, 151, 151, 151, 151, 151, 153, 151, 97, - 95, 92, 90, 151, 88, 151, 153, 153, 153, 153, - 153, 153, 154, 80, 74, 63, 62, 151, 155, 61, - 60, 154, 154, 154, 154, 154, 154, 155, 155, 155, - 155, 155, 155, 158, 275, 275, 275, 275, 275, 159, - 59, 58, 158, 158, 158, 158, 158, 158, 159, 159, - 159, 159, 159, 159, 168, 57, 56, 45, 41, 275, - 169, 39, 37, 168, 168, 168, 168, 168, 168, 169, - 169, 169, 169, 169, 169, 170, 31, 27, 24, 23, - - 20, 17, 15, 14, 170, 170, 170, 170, 170, 170, - 175, 175, 175, 175, 175, 182, 175, 13, 12, 10, - 9, 175, 3, 175, 182, 182, 182, 182, 182, 182, - 0, 0, 0, 0, 0, 175, 176, 176, 176, 176, - 176, 183, 176, 0, 0, 0, 0, 176, 0, 176, - 183, 183, 183, 183, 183, 183, 0, 0, 0, 0, - 0, 176, 180, 180, 180, 180, 180, 0, 180, 0, - 0, 0, 0, 180, 180, 180, 0, 0, 0, 0, - 0, 180, 0, 0, 0, 0, 0, 180, 184, 0, - 180, 180, 180, 180, 180, 180, 185, 184, 184, 184, - - 184, 184, 184, 186, 0, 185, 185, 185, 185, 185, - 185, 193, 186, 186, 186, 186, 186, 186, 194, 0, - 193, 193, 193, 193, 193, 193, 195, 194, 194, 194, - 194, 194, 194, 0, 0, 195, 195, 195, 195, 195, - 195, 204, 204, 204, 204, 214, 0, 204, 0, 0, - 0, 0, 0, 0, 214, 214, 214, 214, 214, 214, - 204, 0, 0, 0, 0, 0, 204, 0, 0, 204, - 204, 204, 204, 204, 204, 206, 206, 206, 206, 215, - 0, 0, 0, 0, 0, 0, 206, 0, 215, 215, - 215, 215, 215, 215, 206, 0, 0, 0, 0, 0, - - 206, 0, 0, 206, 206, 206, 206, 206, 206, 207, - 207, 207, 207, 207, 216, 207, 0, 0, 0, 0, - 207, 0, 207, 216, 216, 216, 216, 216, 216, 0, - 0, 0, 0, 0, 207, 208, 208, 208, 208, 208, - 217, 208, 0, 0, 0, 0, 208, 0, 208, 217, - 217, 217, 217, 217, 217, 0, 0, 0, 0, 0, - 208, 209, 209, 209, 209, 209, 218, 209, 0, 0, - 0, 0, 209, 0, 209, 218, 218, 218, 218, 218, - 218, 0, 0, 0, 0, 0, 209, 210, 210, 210, - 210, 210, 223, 210, 0, 0, 0, 0, 210, 0, - - 210, 223, 223, 223, 223, 223, 223, 0, 0, 0, - 0, 0, 210, 211, 211, 211, 211, 211, 0, 211, - 0, 0, 0, 0, 211, 0, 211, 0, 0, 0, - 0, 0, 211, 0, 0, 0, 0, 0, 211, 0, - 0, 211, 211, 211, 211, 211, 211, 212, 212, 212, - 212, 212, 0, 212, 0, 0, 0, 0, 212, 212, - 212, 0, 0, 0, 0, 0, 212, 0, 0, 0, - 0, 0, 212, 224, 0, 212, 212, 212, 212, 212, - 212, 225, 224, 224, 224, 224, 224, 224, 0, 0, - 225, 225, 225, 225, 225, 225, 237, 237, 237, 237, - - 237, 0, 237, 0, 0, 0, 0, 0, 0, 241, - 241, 241, 241, 241, 0, 237, 0, 0, 0, 0, - 241, 237, 241, 0, 237, 237, 237, 237, 237, 237, - 238, 238, 238, 238, 241, 0, 238, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 238, - 0, 0, 0, 0, 0, 238, 0, 0, 238, 238, - 238, 238, 238, 238, 242, 242, 242, 242, 242, 0, - 0, 0, 0, 0, 0, 242, 0, 0, 0, 0, - 0, 0, 0, 242, 0, 0, 0, 0, 0, 242, - 0, 0, 242, 242, 242, 242, 242, 242, 243, 243, - - 243, 243, 244, 0, 0, 0, 0, 0, 0, 243, - 0, 244, 244, 244, 244, 244, 244, 243, 0, 0, - 0, 0, 0, 243, 246, 0, 243, 243, 243, 243, - 243, 243, 247, 246, 246, 246, 246, 246, 246, 248, - 0, 247, 247, 247, 247, 247, 247, 250, 248, 248, - 248, 248, 248, 248, 257, 0, 250, 250, 250, 250, - 250, 250, 268, 257, 257, 257, 257, 257, 257, 0, - 0, 268, 268, 268, 268, 268, 268, 269, 269, 269, - 269, 269, 272, 0, 0, 0, 0, 0, 269, 0, - 269, 272, 272, 272, 272, 272, 272, 273, 0, 0, - - 0, 0, 269, 280, 0, 0, 273, 273, 273, 273, - 273, 273, 280, 280, 280, 280, 280, 280, 281, 0, - 0, 0, 0, 0, 282, 0, 0, 281, 281, 281, - 281, 281, 281, 282, 282, 282, 282, 282, 282, 283, - 0, 0, 0, 0, 0, 290, 0, 0, 283, 283, - 283, 283, 283, 283, 290, 290, 290, 290, 290, 290, - 291, 0, 0, 0, 0, 0, 292, 0, 0, 291, - 291, 291, 291, 291, 291, 292, 292, 292, 292, 292, - 292, 296, 0, 0, 0, 0, 0, 297, 0, 0, - 296, 296, 296, 296, 296, 296, 297, 297, 297, 297, - - 297, 297, 298, 0, 0, 0, 0, 0, 301, 0, - 0, 298, 298, 298, 298, 298, 298, 301, 301, 301, - 301, 301, 301, 302, 0, 0, 0, 0, 0, 0, - 0, 0, 302, 302, 302, 302, 302, 302, 304, 0, - 304, 304, 304, 304, 304, 305, 0, 305, 306, 0, - 306, 306, 306, 306, 306, 307, 307, 307, 307, 307, - 308, 308, 0, 308, 309, 309, 309, 309, 309, 309, - 309, 310, 310, 310, 310, 310, 311, 311, 311, 311, - 311, 311, 311, 312, 312, 312, 312, 312, 312, 312, - 312, 313, 313, 313, 313, 313, 314, 0, 314, 315, - - 315, 315, 315, 315, 316, 316, 316, 316, 316, 316, - 316, 316, 317, 317, 317, 317, 317, 318, 318, 319, - 319, 319, 319, 319, 319, 319, 319, 320, 320, 321, - 321, 321, 0, 321, 321, 321, 322, 322, 323, 0, - 323, 323, 323, 323, 323, 324, 0, 324, 324, 324, - 324, 324, 325, 325, 325, 325, 325, 325, 325, 326, - 326, 327, 327, 327, 327, 327, 327, 327, 328, 328, - 328, 328, 328, 328, 328, 329, 329, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, - 303, 303, 303, 303 + 32, 49, 47, 43, 43, 43, 43, 43, 43, 47, + 52, 55, 294, 54, 55, 48, 53, 51, 54, 76, + 52, 49, 77, 65, 76, 26, 30, 30, 30, 30, + 48, 53, 30, 51, 69, 54, 65, 53, 54, 72, + + 48, 77, 109, 76, 103, 30, 78, 69, 109, 293, + 95, 30, 72, 84, 30, 30, 30, 30, 30, 30, + 35, 35, 35, 35, 70, 78, 72, 84, 85, 95, + 103, 35, 97, 70, 70, 70, 70, 70, 70, 35, + 100, 97, 85, 100, 125, 35, 119, 287, 35, 35, + 35, 35, 35, 35, 66, 66, 66, 66, 66, 119, + 121, 123, 128, 125, 135, 83, 66, 121, 286, 285, + 151, 135, 137, 66, 123, 83, 128, 151, 137, 66, + 163, 284, 66, 66, 66, 66, 66, 66, 71, 83, + 160, 181, 71, 283, 160, 163, 281, 71, 71, 71, + + 71, 71, 71, 79, 79, 79, 79, 79, 175, 79, + 181, 182, 201, 210, 232, 175, 265, 262, 261, 201, + 259, 232, 79, 207, 258, 182, 257, 210, 79, 251, + 241, 79, 79, 79, 79, 79, 79, 80, 80, 80, + 80, 94, 207, 80, 206, 206, 206, 206, 206, 241, + 94, 94, 94, 94, 94, 94, 80, 206, 237, 236, + 235, 234, 80, 233, 228, 80, 80, 80, 80, 80, + 80, 82, 82, 82, 82, 82, 208, 208, 208, 208, + 208, 238, 238, 238, 238, 238, 240, 226, 245, 208, + 82, 240, 225, 218, 238, 273, 82, 224, 245, 82, + + 82, 82, 82, 82, 82, 86, 86, 86, 86, 86, + 240, 224, 245, 246, 273, 224, 86, 277, 205, 242, + 242, 242, 242, 242, 86, 242, 204, 246, 203, 202, + 86, 277, 242, 86, 86, 86, 86, 86, 86, 87, + 87, 87, 87, 118, 242, 263, 263, 263, 263, 263, + 87, 278, 118, 118, 118, 118, 118, 118, 87, 255, + 255, 255, 255, 255, 87, 278, 274, 87, 87, 87, + 87, 87, 87, 92, 92, 92, 92, 92, 197, 195, + 194, 193, 192, 191, 255, 274, 185, 272, 272, 272, + 272, 272, 92, 272, 178, 177, 176, 170, 92, 169, + + 272, 92, 92, 92, 92, 92, 92, 120, 120, 120, + 120, 120, 272, 168, 167, 166, 165, 164, 126, 159, + 155, 153, 152, 147, 146, 145, 120, 126, 126, 126, + 126, 126, 126, 127, 144, 120, 120, 120, 120, 120, + 120, 129, 127, 127, 127, 127, 127, 127, 132, 143, + 129, 129, 129, 129, 129, 129, 142, 132, 132, 132, + 132, 132, 132, 134, 134, 134, 134, 134, 141, 139, + 138, 136, 133, 130, 148, 124, 122, 117, 116, 115, + 114, 113, 134, 148, 148, 148, 148, 148, 148, 149, + 112, 134, 134, 134, 134, 134, 134, 150, 149, 149, + + 149, 149, 149, 149, 111, 110, 150, 150, 150, 150, + 150, 150, 154, 154, 154, 154, 154, 156, 154, 108, + 107, 106, 105, 154, 104, 154, 156, 156, 156, 156, + 156, 156, 157, 102, 101, 99, 98, 154, 158, 96, + 93, 157, 157, 157, 157, 157, 157, 158, 158, 158, + 158, 158, 158, 161, 282, 282, 282, 282, 282, 162, + 91, 89, 161, 161, 161, 161, 161, 161, 162, 162, + 162, 162, 162, 162, 172, 81, 75, 64, 63, 282, + 173, 62, 61, 172, 172, 172, 172, 172, 172, 173, + 173, 173, 173, 173, 173, 174, 60, 59, 58, 57, + + 56, 45, 41, 39, 174, 174, 174, 174, 174, 174, + 179, 179, 179, 179, 179, 186, 179, 37, 31, 27, + 24, 179, 23, 179, 186, 186, 186, 186, 186, 186, + 20, 17, 15, 14, 13, 179, 180, 180, 180, 180, + 180, 187, 180, 12, 10, 9, 3, 180, 0, 180, + 187, 187, 187, 187, 187, 187, 0, 0, 0, 0, + 0, 180, 184, 184, 184, 184, 184, 0, 184, 0, + 0, 0, 0, 184, 184, 184, 0, 0, 0, 0, + 0, 184, 0, 0, 0, 0, 0, 184, 188, 0, + 184, 184, 184, 184, 184, 184, 189, 188, 188, 188, + + 188, 188, 188, 190, 0, 189, 189, 189, 189, 189, + 189, 198, 190, 190, 190, 190, 190, 190, 199, 0, + 198, 198, 198, 198, 198, 198, 200, 199, 199, 199, + 199, 199, 199, 0, 0, 200, 200, 200, 200, 200, + 200, 209, 209, 209, 209, 219, 0, 209, 0, 0, + 0, 0, 0, 0, 219, 219, 219, 219, 219, 219, + 209, 0, 0, 0, 0, 0, 209, 0, 0, 209, + 209, 209, 209, 209, 209, 211, 211, 211, 211, 220, + 0, 0, 0, 0, 0, 0, 211, 0, 220, 220, + 220, 220, 220, 220, 211, 0, 0, 0, 0, 0, + + 211, 0, 0, 211, 211, 211, 211, 211, 211, 212, + 212, 212, 212, 212, 221, 212, 0, 0, 0, 0, + 212, 0, 212, 221, 221, 221, 221, 221, 221, 0, + 0, 0, 0, 0, 212, 213, 213, 213, 213, 213, + 222, 213, 0, 0, 0, 0, 213, 0, 213, 222, + 222, 222, 222, 222, 222, 0, 0, 0, 0, 0, + 213, 214, 214, 214, 214, 214, 223, 214, 0, 0, + 0, 0, 214, 0, 214, 223, 223, 223, 223, 223, + 223, 0, 0, 0, 0, 0, 214, 215, 215, 215, + 215, 215, 229, 215, 0, 0, 0, 0, 215, 0, + + 215, 229, 229, 229, 229, 229, 229, 0, 0, 0, + 0, 0, 215, 216, 216, 216, 216, 216, 0, 216, + 0, 0, 0, 0, 216, 0, 216, 0, 0, 0, + 0, 0, 216, 0, 0, 0, 0, 0, 216, 0, + 0, 216, 216, 216, 216, 216, 216, 217, 217, 217, + 217, 217, 0, 217, 0, 0, 0, 0, 217, 217, + 217, 0, 0, 0, 0, 0, 217, 0, 0, 0, + 0, 0, 217, 230, 0, 217, 217, 217, 217, 217, + 217, 231, 230, 230, 230, 230, 230, 230, 0, 0, + 231, 231, 231, 231, 231, 231, 243, 243, 243, 243, + + 243, 0, 243, 0, 0, 0, 0, 0, 0, 247, + 247, 247, 247, 247, 0, 243, 0, 0, 0, 0, + 247, 243, 247, 0, 243, 243, 243, 243, 243, 243, + 244, 244, 244, 244, 247, 0, 244, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 244, + 0, 0, 0, 0, 0, 244, 0, 0, 244, 244, + 244, 244, 244, 244, 248, 248, 248, 248, 248, 0, + 0, 0, 0, 0, 0, 248, 0, 0, 0, 0, + 0, 0, 0, 248, 0, 0, 0, 0, 0, 248, + 0, 0, 248, 248, 248, 248, 248, 248, 249, 249, + + 249, 249, 250, 0, 0, 0, 0, 0, 0, 249, + 0, 250, 250, 250, 250, 250, 250, 249, 0, 0, + 0, 0, 0, 249, 252, 0, 249, 249, 249, 249, + 249, 249, 253, 252, 252, 252, 252, 252, 252, 254, + 0, 253, 253, 253, 253, 253, 253, 256, 254, 254, + 254, 254, 254, 254, 264, 0, 256, 256, 256, 256, + 256, 256, 275, 264, 264, 264, 264, 264, 264, 0, + 0, 275, 275, 275, 275, 275, 275, 276, 276, 276, + 276, 276, 279, 0, 0, 0, 0, 0, 276, 0, + 276, 279, 279, 279, 279, 279, 279, 280, 0, 0, + + 0, 0, 276, 288, 0, 0, 280, 280, 280, 280, + 280, 280, 288, 288, 288, 288, 288, 288, 289, 0, + 0, 0, 0, 0, 290, 0, 0, 289, 289, 289, + 289, 289, 289, 290, 290, 290, 290, 290, 290, 291, + 0, 0, 0, 0, 0, 299, 0, 0, 291, 291, + 291, 291, 291, 291, 299, 299, 299, 299, 299, 299, + 300, 0, 0, 0, 0, 0, 301, 0, 0, 300, + 300, 300, 300, 300, 300, 301, 301, 301, 301, 301, + 301, 305, 0, 0, 0, 0, 0, 306, 0, 0, + 305, 305, 305, 305, 305, 305, 306, 306, 306, 306, + + 306, 306, 307, 0, 0, 0, 0, 0, 310, 0, + 0, 307, 307, 307, 307, 307, 307, 310, 310, 310, + 310, 310, 310, 311, 0, 0, 0, 0, 0, 0, + 0, 0, 311, 311, 311, 311, 311, 311, 313, 0, + 313, 313, 313, 313, 313, 314, 0, 314, 315, 0, + 315, 315, 315, 315, 315, 316, 316, 316, 316, 316, + 317, 317, 0, 317, 318, 318, 318, 318, 318, 318, + 318, 319, 319, 319, 319, 319, 320, 320, 320, 320, + 320, 320, 320, 321, 321, 321, 321, 321, 321, 321, + 321, 322, 322, 322, 322, 322, 323, 0, 323, 324, + + 324, 324, 324, 324, 325, 325, 325, 325, 325, 325, + 325, 325, 326, 326, 326, 326, 326, 327, 327, 328, + 328, 328, 328, 328, 328, 328, 328, 329, 329, 330, + 330, 330, 0, 330, 330, 330, 331, 331, 332, 0, + 332, 332, 332, 332, 332, 333, 0, 333, 333, 333, + 333, 333, 334, 334, 334, 334, 334, 334, 334, 335, + 335, 336, 336, 336, 336, 336, 336, 336, 337, 337, + 337, 337, 337, 337, 337, 338, 338, 312, 312, 312, + 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, + 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, + + 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, + 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, + 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, + 312, 312, 312, 312 } ; =20 =20 @@ -577,6 +580,13 @@ register yy_state_type yy_current_state; register unsigned short *yy_cp, *yy_bp; register int yy_act; + +#line 23 "tokenizer.flex" + + +#line 989 "lex.yy.c" + + while ( 1 ) /* loops until end-of-file is reached */ { yy_cp =3D yy_c_buf_p; @@ -590,6 +600,7 @@ yy_bp =3D yy_cp; =20 yy_current_state =3D yy_start; +yy_match: do { register YY_CHAR yy_c =3D yy_ec[YY_SC_TO_UI(*yy_cp)]; @@ -601,7 +612,7 @@ while ( yy_chk[yy_base[yy_current_state] + yy_c] !=3D yy_current_state = ) { yy_current_state =3D (int) yy_def[yy_current_state]; - if ( yy_current_state >=3D 304 ) + if ( yy_current_state >=3D 313 ) yy_c =3D yy_meta[(unsigned int) yy_c]; } yy_current_state =3D yy_nxt[yy_base[yy_current_state] + (unsigned int) = yy_c]; @@ -621,6 +632,9 @@ YY_DO_BEFORE_ACTION; =20 =20 +do_action: /* This label is used only to access EOF actions. */ + + switch ( yy_act ) { /* beginning of action switch */ case 0: /* must back up */ @@ -718,122 +732,122 @@ case 18: YY_RULE_SETUP #line 48 "tokenizer.flex" -{yyTok =3D KONQ_RULE_SYM; return yyTok; } +{yyTok =3D NAMESPACE_SYM; return yyTok; } YY_BREAK case 19: YY_RULE_SETUP #line 49 "tokenizer.flex" -{yyTok =3D KONQ_DECLS_SYM; return yyTok; } +{yyTok =3D KONQ_RULE_SYM; return yyTok; } YY_BREAK case 20: YY_RULE_SETUP #line 50 "tokenizer.flex" -{yyTok =3D KONQ_VALUE_SYM; return yyTok; } +{yyTok =3D KONQ_DECLS_SYM; return yyTok; } YY_BREAK case 21: YY_RULE_SETUP -#line 52 "tokenizer.flex" -{yyTok =3D IMPORTANT_SYM; return yyTok;} +#line 51 "tokenizer.flex" +{yyTok =3D KONQ_VALUE_SYM; return yyTok; } YY_BREAK case 22: YY_RULE_SETUP -#line 54 "tokenizer.flex" -{yyTok =3D EMS; return yyTok;} +#line 53 "tokenizer.flex" +{yyTok =3D IMPORTANT_SYM; return yyTok;} YY_BREAK case 23: YY_RULE_SETUP #line 55 "tokenizer.flex" -{yyTok =3D QEMS; return yyTok;} /* quirky ems */ +{yyTok =3D EMS; return yyTok;} YY_BREAK case 24: YY_RULE_SETUP #line 56 "tokenizer.flex" -{yyTok =3D EXS; return yyTok;} +{yyTok =3D QEMS; return yyTok;} /* quirky ems */ YY_BREAK case 25: YY_RULE_SETUP #line 57 "tokenizer.flex" -{yyTok =3D PXS; return yyTok;} +{yyTok =3D EXS; return yyTok;} YY_BREAK case 26: YY_RULE_SETUP #line 58 "tokenizer.flex" -{yyTok =3D CMS; return yyTok;} +{yyTok =3D PXS; return yyTok;} YY_BREAK case 27: YY_RULE_SETUP #line 59 "tokenizer.flex" -{yyTok =3D MMS; return yyTok;} +{yyTok =3D CMS; return yyTok;} YY_BREAK case 28: YY_RULE_SETUP #line 60 "tokenizer.flex" -{yyTok =3D INS; return yyTok;} +{yyTok =3D MMS; return yyTok;} YY_BREAK case 29: YY_RULE_SETUP #line 61 "tokenizer.flex" -{yyTok =3D PTS; return yyTok;} +{yyTok =3D INS; return yyTok;} YY_BREAK case 30: YY_RULE_SETUP #line 62 "tokenizer.flex" -{yyTok =3D PCS; return yyTok;} +{yyTok =3D PTS; return yyTok;} YY_BREAK case 31: YY_RULE_SETUP #line 63 "tokenizer.flex" -{yyTok =3D DEGS; return yyTok;} +{yyTok =3D PCS; return yyTok;} YY_BREAK case 32: YY_RULE_SETUP #line 64 "tokenizer.flex" -{yyTok =3D RADS; return yyTok;} +{yyTok =3D DEGS; return yyTok;} YY_BREAK case 33: YY_RULE_SETUP #line 65 "tokenizer.flex" -{yyTok =3D GRADS; return yyTok;} +{yyTok =3D RADS; return yyTok;} YY_BREAK case 34: YY_RULE_SETUP #line 66 "tokenizer.flex" -{yyTok =3D MSECS; return yyTok;} +{yyTok =3D GRADS; return yyTok;} YY_BREAK case 35: YY_RULE_SETUP #line 67 "tokenizer.flex" -{yyTok =3D SECS; return yyTok;} +{yyTok =3D MSECS; return yyTok;} YY_BREAK case 36: YY_RULE_SETUP #line 68 "tokenizer.flex" -{yyTok =3D HERZ; return yyTok;} +{yyTok =3D SECS; return yyTok;} YY_BREAK case 37: YY_RULE_SETUP #line 69 "tokenizer.flex" -{yyTok =3D KHERZ; return yyTok;} +{yyTok =3D HERZ; return yyTok;} YY_BREAK case 38: YY_RULE_SETUP #line 70 "tokenizer.flex" -{yyTok =3D DIMEN; return yyTok;} +{yyTok =3D KHERZ; return yyTok;} YY_BREAK case 39: YY_RULE_SETUP #line 71 "tokenizer.flex" -{yyTok =3D PERCENTAGE; return yyTok;} +{yyTok =3D DIMEN; return yyTok;} YY_BREAK case 40: YY_RULE_SETUP #line 72 "tokenizer.flex" -{yyTok =3D NUMBER; return yyTok;} +{yyTok =3D PERCENTAGE; return yyTok;} YY_BREAK case 41: YY_RULE_SETUP -#line 74 "tokenizer.flex" -{yyTok =3D URI; return yyTok;} +#line 73 "tokenizer.flex" +{yyTok =3D NUMBER; return yyTok;} YY_BREAK case 42: YY_RULE_SETUP @@ -843,12 +857,12 @@ case 43: YY_RULE_SETUP #line 76 "tokenizer.flex" -{yyTok =3D FUNCTION; return yyTok;} +{yyTok =3D URI; return yyTok;} YY_BREAK case 44: YY_RULE_SETUP -#line 78 "tokenizer.flex" -{yyTok =3D UNICODERANGE; return yyTok;} +#line 77 "tokenizer.flex" +{yyTok =3D FUNCTION; return yyTok;} YY_BREAK case 45: YY_RULE_SETUP @@ -857,15 +871,20 @@ YY_BREAK case 46: YY_RULE_SETUP -#line 81 "tokenizer.flex" -{yyTok =3D *yytext; return yyTok;} +#line 80 "tokenizer.flex" +{yyTok =3D UNICODERANGE; return yyTok;} YY_BREAK case 47: YY_RULE_SETUP -#line 83 "tokenizer.flex" +#line 82 "tokenizer.flex" +{yyTok =3D *yytext; return yyTok;} + YY_BREAK +case 48: +YY_RULE_SETUP +#line 84 "tokenizer.flex" ECHO; YY_BREAK -#line 1304 "lex.yy.c" +#line 1312 "lex.yy.c" case YY_STATE_EOF(INITIAL): case YY_END_OF_BUFFER: yyterminate(); @@ -876,5 +895,3 @@ } /* end of action switch */ } /* end of scanning one token */ } /* end of yylex */ - - diff -urN css.cvsup/tokenizer.flex css.030221/tokenizer.flex --- css.cvsup/tokenizer.flex 2003-01-22 04:03:48.000000000 -0600 +++ css.030221/tokenizer.flex 2003-02-20 17:31:46.000000000 -0600 @@ -45,6 +45,7 @@ "@media" {yyTok =3D MEDIA_SYM; return yyTok;} "@font-face" {yyTok =3D FONT_FACE_SYM; return yyTok;} "@charset" {yyTok =3D CHARSET_SYM; return yyTok;} +"@namespace" {yyTok =3D NAMESPACE_SYM; return yyTok; } "@-konq-rule" {yyTok =3D KONQ_RULE_SYM; return yyTok; } "@-konq-decls" {yyTok =3D KONQ_DECLS_SYM; return yyTok; } "@-konq-value" {yyTok =3D KONQ_VALUE_SYM; return yyTok; } --=-EGFmxr10r4V2OzkcVIHd--