source: trunk/dports/www/webkit-gtk/files/bison-2.6.patch @ 97402

Last change on this file since 97402 was 96891, checked in by jeremyhu@…, 8 years ago

webkit-gtk: Add additional notes for other patches and bugs. Add myself to maintainers. Add media stream and media statistics.

File size: 15.6 KB
RevLine 
[96891]1diff -Naurp Source/WebCore/css/CSSGrammar.y Source/WebCore/css/CSSGrammar.y
2--- Source/WebCore/css/CSSGrammar.y     2012-08-20 15:32:20.000000000 -0700
3+++ Source/WebCore/css/CSSGrammar.y     2012-08-20 15:31:20.000000000 -0700
4@@ -53,14 +53,13 @@ using namespace HTMLNames;
5 #define YYMAXDEPTH 10000
6 #define YYDEBUG 0
7 
8-// FIXME: Replace with %parse-param { CSSParser* parser } once we can depend on bison 2.x
9-#define YYPARSE_PARAM parser
10-#define YYLEX_PARAM parser
11-
12 %}
13 
14 %pure_parser
15 
16+%parse-param { CSSParser* parser }
17+%lex-param { CSSParser* parser }
18+
19 %union {
20     bool boolean;
21     char character;
22@@ -88,7 +87,7 @@ using namespace HTMLNames;
23 
24 %{
25 
26-static inline int cssyyerror(const char*)
27+static inline int cssyyerror(void*, const char*)
28 {
29     return 1;
30 }
31diff -Naurp Source/WebCore/css/CSSParser.cpp Source/WebCore/css/CSSParser.cpp
32--- Source/WebCore/css/CSSParser.cpp    2012-08-20 15:32:20.000000000 -0700
33+++ Source/WebCore/css/CSSParser.cpp    2012-08-20 15:31:20.000000000 -0700
34@@ -101,7 +101,7 @@
35 extern int cssyydebug;
36 #endif
37 
38-extern int cssyyparse(void* parser);
39+extern int cssyyparse(WebCore::CSSParser*);
40 
41 using namespace std;
42 using namespace WTF;
43diff -Naurp Source/WebCore/xml/XPathGrammar.y Source/WebCore/xml/XPathGrammar.y
44--- Source/WebCore/xml/XPathGrammar.y   2012-08-20 15:32:20.000000000 -0700
45+++ Source/WebCore/xml/XPathGrammar.y   2012-08-20 15:31:20.000000000 -0700
46@@ -34,6 +34,7 @@
47 #include "XPathParser.h"
48 #include "XPathPath.h"
49 #include "XPathPredicate.h"
50+#include "XPathStep.h"
51 #include "XPathVariableReference.h"
52 #include <wtf/FastMalloc.h>
53 
54@@ -44,8 +45,6 @@
55 #define YYLTYPE_IS_TRIVIAL 1
56 #define YYDEBUG 0
57 #define YYMAXDEPTH 10000
58-#define YYPARSE_PARAM parserParameter
59-#define PARSER static_cast<Parser*>(parserParameter)
60 
61 using namespace WebCore;
62 using namespace XPath;
63@@ -53,6 +52,7 @@ using namespace XPath;
64 %}
65 
66 %pure_parser
67+%parse-param { WebCore::XPath::Parser* parser }
68 
69 %union
70 {
71@@ -71,7 +71,7 @@ using namespace XPath;
72 %{
73 
74 static int xpathyylex(YYSTYPE* yylval) { return Parser::current()->lex(yylval); }
75-static void xpathyyerror(const char*) { }
76+static void xpathyyerror(void*, const char*) { }
77     
78 %}
79 
80@@ -118,7 +118,7 @@ static void xpathyyerror(const char*) {
81 Expr:
82     OrExpr
83     {
84-        PARSER->m_topExpr = $1;
85+        parser->m_topExpr = $1;
86     }
87     ;
88 
89@@ -138,7 +138,7 @@ AbsoluteLocationPath:
90     '/'
91     {
92         $$ = new LocationPath;
93-        PARSER->registerParseNode($$);
94+        parser->registerParseNode($$);
95     }
96     |
97     '/' RelativeLocationPath
98@@ -150,7 +150,7 @@ AbsoluteLocationPath:
99     {
100         $$ = $2;
101         $$->insertFirstStep($1);
102-        PARSER->unregisterParseNode($1);
103+        parser->unregisterParseNode($1);
104     }
105     ;
106 
107@@ -159,22 +159,22 @@ RelativeLocationPath:
108     {
109         $$ = new LocationPath;
110         $$->appendStep($1);
111-        PARSER->unregisterParseNode($1);
112-        PARSER->registerParseNode($$);
113+        parser->unregisterParseNode($1);
114+        parser->registerParseNode($$);
115     }
116     |
117     RelativeLocationPath '/' Step
118     {
119         $$->appendStep($3);
120-        PARSER->unregisterParseNode($3);
121+        parser->unregisterParseNode($3);
122     }
123     |
124     RelativeLocationPath DescendantOrSelf Step
125     {
126         $$->appendStep($2);
127         $$->appendStep($3);
128-        PARSER->unregisterParseNode($2);
129-        PARSER->unregisterParseNode($3);
130+        parser->unregisterParseNode($2);
131+        parser->unregisterParseNode($3);
132     }
133     ;
134 
135@@ -183,58 +183,58 @@ Step:
136     {
137         if ($2) {
138             $$ = new Step(Step::ChildAxis, *$1, *$2);
139-            PARSER->deletePredicateVector($2);
140+            parser->deletePredicateVector($2);
141         } else
142             $$ = new Step(Step::ChildAxis, *$1);
143-        PARSER->deleteNodeTest($1);
144-        PARSER->registerParseNode($$);
145+        parser->deleteNodeTest($1);
146+        parser->registerParseNode($$);
147     }
148     |
149     NAMETEST OptionalPredicateList
150     {
151         String localName;
152         String namespaceURI;
153-        if (!PARSER->expandQName(*$1, localName, namespaceURI)) {
154-            PARSER->m_gotNamespaceError = true;
155+        if (!parser->expandQName(*$1, localName, namespaceURI)) {
156+            parser->m_gotNamespaceError = true;
157             YYABORT;
158         }
159         
160         if ($2) {
161             $$ = new Step(Step::ChildAxis, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI), *$2);
162-            PARSER->deletePredicateVector($2);
163+            parser->deletePredicateVector($2);
164         } else
165             $$ = new Step(Step::ChildAxis, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI));
166-        PARSER->deleteString($1);
167-        PARSER->registerParseNode($$);
168+        parser->deleteString($1);
169+        parser->registerParseNode($$);
170     }
171     |
172     AxisSpecifier NodeTest OptionalPredicateList
173     {
174         if ($3) {
175             $$ = new Step($1, *$2, *$3);
176-            PARSER->deletePredicateVector($3);
177+            parser->deletePredicateVector($3);
178         } else
179             $$ = new Step($1, *$2);
180-        PARSER->deleteNodeTest($2);
181-        PARSER->registerParseNode($$);
182+        parser->deleteNodeTest($2);
183+        parser->registerParseNode($$);
184     }
185     |
186     AxisSpecifier NAMETEST OptionalPredicateList
187     {
188         String localName;
189         String namespaceURI;
190-        if (!PARSER->expandQName(*$2, localName, namespaceURI)) {
191-            PARSER->m_gotNamespaceError = true;
192+        if (!parser->expandQName(*$2, localName, namespaceURI)) {
193+            parser->m_gotNamespaceError = true;
194             YYABORT;
195         }
196 
197         if ($3) {
198             $$ = new Step($1, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI), *$3);
199-            PARSER->deletePredicateVector($3);
200+            parser->deletePredicateVector($3);
201         } else
202             $$ = new Step($1, Step::NodeTest(Step::NodeTest::NameTest, localName, namespaceURI));
203-        PARSER->deleteString($2);
204-        PARSER->registerParseNode($$);
205+        parser->deleteString($2);
206+        parser->registerParseNode($$);
207     }
208     |
209     AbbreviatedStep
210@@ -259,23 +259,23 @@ NodeTest:
211         else if (*$1 == "comment")
212             $$ = new Step::NodeTest(Step::NodeTest::CommentNodeTest);
213 
214-        PARSER->deleteString($1);
215-        PARSER->registerNodeTest($$);
216+        parser->deleteString($1);
217+        parser->registerNodeTest($$);
218     }
219     |
220     PI '(' ')'
221     {
222         $$ = new Step::NodeTest(Step::NodeTest::ProcessingInstructionNodeTest);
223-        PARSER->deleteString($1);       
224-        PARSER->registerNodeTest($$);
225+        parser->deleteString($1);
226+        parser->registerNodeTest($$);
227     }
228     |
229     PI '(' LITERAL ')'
230     {
231         $$ = new Step::NodeTest(Step::NodeTest::ProcessingInstructionNodeTest, $3->stripWhiteSpace());
232-        PARSER->deleteString($1);       
233-        PARSER->deleteString($3);
234-        PARSER->registerNodeTest($$);
235+        parser->deleteString($1);
236+        parser->deleteString($3);
237+        parser->registerNodeTest($$);
238     }
239     ;
240 
241@@ -293,14 +293,14 @@ PredicateList:
242     {
243         $$ = new Vector<Predicate*>;
244         $$->append(new Predicate($1));
245-        PARSER->unregisterParseNode($1);
246-        PARSER->registerPredicateVector($$);
247+        parser->unregisterParseNode($1);
248+        parser->registerPredicateVector($$);
249     }
250     |
251     PredicateList Predicate
252     {
253         $$->append(new Predicate($2));
254-        PARSER->unregisterParseNode($2);
255+        parser->unregisterParseNode($2);
256     }
257     ;
258 
259@@ -315,7 +315,7 @@ DescendantOrSelf:
260     SLASHSLASH
261     {
262         $$ = new Step(Step::DescendantOrSelfAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest));
263-        PARSER->registerParseNode($$);
264+        parser->registerParseNode($$);
265     }
266     ;
267 
268@@ -323,13 +323,13 @@ AbbreviatedStep:
269     '.'
270     {
271         $$ = new Step(Step::SelfAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest));
272-        PARSER->registerParseNode($$);
273+        parser->registerParseNode($$);
274     }
275     |
276     DOTDOT
277     {
278         $$ = new Step(Step::ParentAxis, Step::NodeTest(Step::NodeTest::AnyNodeTest));
279-        PARSER->registerParseNode($$);
280+        parser->registerParseNode($$);
281     }
282     ;
283 
284@@ -337,8 +337,8 @@ PrimaryExpr:
285     VARIABLEREFERENCE
286     {
287         $$ = new VariableReference(*$1);
288-        PARSER->deleteString($1);
289-        PARSER->registerParseNode($$);
290+        parser->deleteString($1);
291+        parser->registerParseNode($$);
292     }
293     |
294     '(' Expr ')'
295@@ -349,15 +349,15 @@ PrimaryExpr:
296     LITERAL
297     {
298         $$ = new StringExpression(*$1);
299-        PARSER->deleteString($1);
300-        PARSER->registerParseNode($$);
301+        parser->deleteString($1);
302+        parser->registerParseNode($$);
303     }
304     |
305     NUMBER
306     {
307         $$ = new Number($1->toDouble());
308-        PARSER->deleteString($1);
309-        PARSER->registerParseNode($$);
310+        parser->deleteString($1);
311+        parser->registerParseNode($$);
312     }
313     |
314     FunctionCall
315@@ -369,8 +369,8 @@ FunctionCall:
316         $$ = createFunction(*$1);
317         if (!$$)
318             YYABORT;
319-        PARSER->deleteString($1);
320-        PARSER->registerParseNode($$);
321+        parser->deleteString($1);
322+        parser->registerParseNode($$);
323     }
324     |
325     FUNCTIONNAME '(' ArgumentList ')'
326@@ -378,9 +378,9 @@ FunctionCall:
327         $$ = createFunction(*$1, *$3);
328         if (!$$)
329             YYABORT;
330-        PARSER->deleteString($1);
331-        PARSER->deleteExpressionVector($3);
332-        PARSER->registerParseNode($$);
333+        parser->deleteString($1);
334+        parser->deleteExpressionVector($3);
335+        parser->registerParseNode($$);
336     }
337     ;
338 
339@@ -389,14 +389,14 @@ ArgumentList:
340     {
341         $$ = new Vector<Expression*>;
342         $$->append($1);
343-        PARSER->unregisterParseNode($1);
344-        PARSER->registerExpressionVector($$);
345+        parser->unregisterParseNode($1);
346+        parser->registerExpressionVector($$);
347     }
348     |
349     ArgumentList ',' Argument
350     {
351         $$->append($3);
352-        PARSER->unregisterParseNode($3);
353+        parser->unregisterParseNode($3);
354     }
355     ;
356 
357@@ -412,9 +412,9 @@ UnionExpr:
358         $$ = new Union;
359         $$->addSubExpression($1);
360         $$->addSubExpression($3);
361-        PARSER->unregisterParseNode($1);
362-        PARSER->unregisterParseNode($3);
363-        PARSER->registerParseNode($$);
364+        parser->unregisterParseNode($1);
365+        parser->unregisterParseNode($3);
366+        parser->registerParseNode($$);
367     }
368     ;
369 
370@@ -430,9 +430,9 @@ PathExpr:
371     {
372         $3->setAbsolute(true);
373         $$ = new Path(static_cast<Filter*>($1), $3);
374-        PARSER->unregisterParseNode($1);
375-        PARSER->unregisterParseNode($3);
376-        PARSER->registerParseNode($$);
377+        parser->unregisterParseNode($1);
378+        parser->unregisterParseNode($3);
379+        parser->registerParseNode($$);
380     }
381     |
382     FilterExpr DescendantOrSelf RelativeLocationPath
383@@ -440,10 +440,10 @@ PathExpr:
384         $3->insertFirstStep($2);
385         $3->setAbsolute(true);
386         $$ = new Path(static_cast<Filter*>($1), $3);
387-        PARSER->unregisterParseNode($1);
388-        PARSER->unregisterParseNode($2);
389-        PARSER->unregisterParseNode($3);
390-        PARSER->registerParseNode($$);
391+        parser->unregisterParseNode($1);
392+        parser->unregisterParseNode($2);
393+        parser->unregisterParseNode($3);
394+        parser->registerParseNode($$);
395     }
396     ;
397 
398@@ -453,9 +453,9 @@ FilterExpr:
399     PrimaryExpr PredicateList
400     {
401         $$ = new Filter($1, *$2);
402-        PARSER->unregisterParseNode($1);
403-        PARSER->deletePredicateVector($2);
404-        PARSER->registerParseNode($$);
405+        parser->unregisterParseNode($1);
406+        parser->deletePredicateVector($2);
407+        parser->registerParseNode($$);
408     }
409     ;
410 
411@@ -465,9 +465,9 @@ OrExpr:
412     OrExpr OR AndExpr
413     {
414         $$ = new LogicalOp(LogicalOp::OP_Or, $1, $3);
415-        PARSER->unregisterParseNode($1);
416-        PARSER->unregisterParseNode($3);
417-        PARSER->registerParseNode($$);
418+        parser->unregisterParseNode($1);
419+        parser->unregisterParseNode($3);
420+        parser->registerParseNode($$);
421     }
422     ;
423 
424@@ -477,9 +477,9 @@ AndExpr:
425     AndExpr AND EqualityExpr
426     {
427         $$ = new LogicalOp(LogicalOp::OP_And, $1, $3);
428-        PARSER->unregisterParseNode($1);
429-        PARSER->unregisterParseNode($3);
430-        PARSER->registerParseNode($$);
431+        parser->unregisterParseNode($1);
432+        parser->unregisterParseNode($3);
433+        parser->registerParseNode($$);
434     }
435     ;
436 
437@@ -489,9 +489,9 @@ EqualityExpr:
438     EqualityExpr EQOP RelationalExpr
439     {
440         $$ = new EqTestOp($2, $1, $3);
441-        PARSER->unregisterParseNode($1);
442-        PARSER->unregisterParseNode($3);
443-        PARSER->registerParseNode($$);
444+        parser->unregisterParseNode($1);
445+        parser->unregisterParseNode($3);
446+        parser->registerParseNode($$);
447     }
448     ;
449 
450@@ -501,9 +501,9 @@ RelationalExpr:
451     RelationalExpr RELOP AdditiveExpr
452     {
453         $$ = new EqTestOp($2, $1, $3);
454-        PARSER->unregisterParseNode($1);
455-        PARSER->unregisterParseNode($3);
456-        PARSER->registerParseNode($$);
457+        parser->unregisterParseNode($1);
458+        parser->unregisterParseNode($3);
459+        parser->registerParseNode($$);
460     }
461     ;
462 
463@@ -513,17 +513,17 @@ AdditiveExpr:
464     AdditiveExpr PLUS MultiplicativeExpr
465     {
466         $$ = new NumericOp(NumericOp::OP_Add, $1, $3);
467-        PARSER->unregisterParseNode($1);
468-        PARSER->unregisterParseNode($3);
469-        PARSER->registerParseNode($$);
470+        parser->unregisterParseNode($1);
471+        parser->unregisterParseNode($3);
472+        parser->registerParseNode($$);
473     }
474     |
475     AdditiveExpr MINUS MultiplicativeExpr
476     {
477         $$ = new NumericOp(NumericOp::OP_Sub, $1, $3);
478-        PARSER->unregisterParseNode($1);
479-        PARSER->unregisterParseNode($3);
480-        PARSER->registerParseNode($$);
481+        parser->unregisterParseNode($1);
482+        parser->unregisterParseNode($3);
483+        parser->registerParseNode($$);
484     }
485     ;
486 
487@@ -533,9 +533,9 @@ MultiplicativeExpr:
488     MultiplicativeExpr MULOP UnaryExpr
489     {
490         $$ = new NumericOp($2, $1, $3);
491-        PARSER->unregisterParseNode($1);
492-        PARSER->unregisterParseNode($3);
493-        PARSER->registerParseNode($$);
494+        parser->unregisterParseNode($1);
495+        parser->unregisterParseNode($3);
496+        parser->registerParseNode($$);
497     }
498     ;
499 
500@@ -546,8 +546,8 @@ UnaryExpr:
501     {
502         $$ = new Negative;
503         $$->addSubExpression($2);
504-        PARSER->unregisterParseNode($2);
505-        PARSER->registerParseNode($$);
506+        parser->unregisterParseNode($2);
507+        parser->registerParseNode($$);
508     }
509     ;
510 
511diff -Naurp Source/WebCore/xml/XPathParser.cpp Source/WebCore/xml/XPathParser.cpp
512--- Source/WebCore/xml/XPathParser.cpp  2012-08-20 15:32:20.000000000 -0700
513+++ Source/WebCore/xml/XPathParser.cpp  2012-08-20 15:31:20.000000000 -0700
514@@ -32,24 +32,21 @@
515 #include "XPathEvaluator.h"
516 #include "XPathException.h"
517 #include "XPathNSResolver.h"
518+#include "XPathPath.h"
519 #include "XPathStep.h"
520 #include <wtf/StdLibExtras.h>
521 #include <wtf/text/StringHash.h>
522 
523-int xpathyyparse(void*);
524-
525+using namespace WebCore;
526 using namespace WTF;
527 using namespace Unicode;
528+using namespace XPath;
529 
530-namespace WebCore {
531-namespace XPath {
532-
533-class LocationPath;
534-
535-#include "XPathGrammar.h"   
536+extern int xpathyyparse(WebCore::XPath::Parser*);
537+#include "XPathGrammar.h"
538 
539 Parser* Parser::currentParser = 0;
540-   
541+
542 enum XMLCat { NameStart, NameCont, NotPartOfName };
543 
544 typedef HashMap<String, Step::Axis> AxisNamesMap;
545@@ -630,5 +627,3 @@ void Parser::deleteNodeTest(Step::NodeTe
546     delete t;
547 }
548 
549-}
550-}
Note: See TracBrowser for help on using the repository browser.