dep-selector-libgecode 1.0.0.alpha.1 → 1.0.0.alpha.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,24 +1,22 @@
1
- /* A Bison parser, made by GNU Bison 2.3. */
1
+ /* A Bison parser, made by GNU Bison 2.4.2. */
2
2
 
3
3
  /* Skeleton implementation for Bison's Yacc-like parsers in C
4
-
5
- Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
6
- Free Software Foundation, Inc.
7
-
8
- This program is free software; you can redistribute it and/or modify
4
+
5
+ Copyright (C) 1984, 1989-1990, 2000-2006, 2009-2010 Free Software
6
+ Foundation, Inc.
7
+
8
+ This program is free software: you can redistribute it and/or modify
9
9
  it under the terms of the GNU General Public License as published by
10
- the Free Software Foundation; either version 2, or (at your option)
11
- any later version.
12
-
10
+ the Free Software Foundation, either version 3 of the License, or
11
+ (at your option) any later version.
12
+
13
13
  This program is distributed in the hope that it will be useful,
14
14
  but WITHOUT ANY WARRANTY; without even the implied warranty of
15
15
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
16
  GNU General Public License for more details.
17
-
17
+
18
18
  You should have received a copy of the GNU General Public License
19
- along with this program; if not, write to the Free Software
20
- Foundation, Inc., 51 Franklin Street, Fifth Floor,
21
- Boston, MA 02110-1301, USA. */
19
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
22
20
 
23
21
  /* As a special exception, you may create a larger work that contains
24
22
  part or all of the Bison parser skeleton and distribute that work
@@ -29,7 +27,7 @@
29
27
  special exception, which will cause the skeleton and the resulting
30
28
  Bison output files to be licensed under the GNU General Public
31
29
  License without this special exception.
32
-
30
+
33
31
  This special exception was added by the Free Software Foundation in
34
32
  version 2.2 of Bison. */
35
33
 
@@ -47,7 +45,7 @@
47
45
  #define YYBISON 1
48
46
 
49
47
  /* Bison version. */
50
- #define YYBISON_VERSION "2.3"
48
+ #define YYBISON_VERSION "2.4.2"
51
49
 
52
50
  /* Skeleton name. */
53
51
  #define YYSKELETON_NAME "yacc.c"
@@ -55,115 +53,20 @@
55
53
  /* Pure parsers. */
56
54
  #define YYPURE 1
57
55
 
58
- /* Using locations. */
59
- #define YYLSP_NEEDED 0
60
-
56
+ /* Push parsers. */
57
+ #define YYPUSH 0
61
58
 
59
+ /* Pull parsers. */
60
+ #define YYPULL 1
62
61
 
63
- /* Tokens. */
64
- #ifndef YYTOKENTYPE
65
- # define YYTOKENTYPE
66
- /* Put the tokens into the symbol table, so that GDB and other debuggers
67
- know about them. */
68
- enum yytokentype {
69
- FZ_INT_LIT = 258,
70
- FZ_BOOL_LIT = 259,
71
- FZ_FLOAT_LIT = 260,
72
- FZ_ID = 261,
73
- FZ_U_ID = 262,
74
- FZ_STRING_LIT = 263,
75
- FZ_VAR = 264,
76
- FZ_PAR = 265,
77
- FZ_ANNOTATION = 266,
78
- FZ_ANY = 267,
79
- FZ_ARRAY = 268,
80
- FZ_BOOL = 269,
81
- FZ_CASE = 270,
82
- FZ_COLONCOLON = 271,
83
- FZ_CONSTRAINT = 272,
84
- FZ_DEFAULT = 273,
85
- FZ_DOTDOT = 274,
86
- FZ_ELSE = 275,
87
- FZ_ELSEIF = 276,
88
- FZ_ENDIF = 277,
89
- FZ_ENUM = 278,
90
- FZ_FLOAT = 279,
91
- FZ_FUNCTION = 280,
92
- FZ_IF = 281,
93
- FZ_INCLUDE = 282,
94
- FZ_INT = 283,
95
- FZ_LET = 284,
96
- FZ_MAXIMIZE = 285,
97
- FZ_MINIMIZE = 286,
98
- FZ_OF = 287,
99
- FZ_SATISFY = 288,
100
- FZ_OUTPUT = 289,
101
- FZ_PREDICATE = 290,
102
- FZ_RECORD = 291,
103
- FZ_SET = 292,
104
- FZ_SHOW = 293,
105
- FZ_SHOWCOND = 294,
106
- FZ_SOLVE = 295,
107
- FZ_STRING = 296,
108
- FZ_TEST = 297,
109
- FZ_THEN = 298,
110
- FZ_TUPLE = 299,
111
- FZ_TYPE = 300,
112
- FZ_VARIANT_RECORD = 301,
113
- FZ_WHERE = 302
114
- };
115
- #endif
116
- /* Tokens. */
117
- #define FZ_INT_LIT 258
118
- #define FZ_BOOL_LIT 259
119
- #define FZ_FLOAT_LIT 260
120
- #define FZ_ID 261
121
- #define FZ_U_ID 262
122
- #define FZ_STRING_LIT 263
123
- #define FZ_VAR 264
124
- #define FZ_PAR 265
125
- #define FZ_ANNOTATION 266
126
- #define FZ_ANY 267
127
- #define FZ_ARRAY 268
128
- #define FZ_BOOL 269
129
- #define FZ_CASE 270
130
- #define FZ_COLONCOLON 271
131
- #define FZ_CONSTRAINT 272
132
- #define FZ_DEFAULT 273
133
- #define FZ_DOTDOT 274
134
- #define FZ_ELSE 275
135
- #define FZ_ELSEIF 276
136
- #define FZ_ENDIF 277
137
- #define FZ_ENUM 278
138
- #define FZ_FLOAT 279
139
- #define FZ_FUNCTION 280
140
- #define FZ_IF 281
141
- #define FZ_INCLUDE 282
142
- #define FZ_INT 283
143
- #define FZ_LET 284
144
- #define FZ_MAXIMIZE 285
145
- #define FZ_MINIMIZE 286
146
- #define FZ_OF 287
147
- #define FZ_SATISFY 288
148
- #define FZ_OUTPUT 289
149
- #define FZ_PREDICATE 290
150
- #define FZ_RECORD 291
151
- #define FZ_SET 292
152
- #define FZ_SHOW 293
153
- #define FZ_SHOWCOND 294
154
- #define FZ_SOLVE 295
155
- #define FZ_STRING 296
156
- #define FZ_TEST 297
157
- #define FZ_THEN 298
158
- #define FZ_TUPLE 299
159
- #define FZ_TYPE 300
160
- #define FZ_VARIANT_RECORD 301
161
- #define FZ_WHERE 302
162
-
62
+ /* Using locations. */
63
+ #define YYLSP_NEEDED 0
163
64
 
164
65
 
165
66
 
166
67
  /* Copy the first part of user declarations. */
68
+
69
+ /* Line 189 of yacc.c */
167
70
  #line 40 "gecode/flatzinc/parser.yxx"
168
71
 
169
72
  #define YYPARSE_PARAM parm
@@ -472,6 +375,9 @@ namespace Gecode { namespace FlatZinc {
472
375
 
473
376
 
474
377
 
378
+ /* Line 189 of yacc.c */
379
+ #line 380 "gecode/flatzinc/parser.tab.cpp"
380
+
475
381
  /* Enabling traces. */
476
382
  #ifndef YYDEBUG
477
383
  # define YYDEBUG 1
@@ -490,10 +396,70 @@ namespace Gecode { namespace FlatZinc {
490
396
  # define YYTOKEN_TABLE 0
491
397
  #endif
492
398
 
399
+
400
+ /* Tokens. */
401
+ #ifndef YYTOKENTYPE
402
+ # define YYTOKENTYPE
403
+ /* Put the tokens into the symbol table, so that GDB and other debuggers
404
+ know about them. */
405
+ enum yytokentype {
406
+ FZ_INT_LIT = 258,
407
+ FZ_BOOL_LIT = 259,
408
+ FZ_FLOAT_LIT = 260,
409
+ FZ_ID = 261,
410
+ FZ_U_ID = 262,
411
+ FZ_STRING_LIT = 263,
412
+ FZ_VAR = 264,
413
+ FZ_PAR = 265,
414
+ FZ_ANNOTATION = 266,
415
+ FZ_ANY = 267,
416
+ FZ_ARRAY = 268,
417
+ FZ_BOOL = 269,
418
+ FZ_CASE = 270,
419
+ FZ_COLONCOLON = 271,
420
+ FZ_CONSTRAINT = 272,
421
+ FZ_DEFAULT = 273,
422
+ FZ_DOTDOT = 274,
423
+ FZ_ELSE = 275,
424
+ FZ_ELSEIF = 276,
425
+ FZ_ENDIF = 277,
426
+ FZ_ENUM = 278,
427
+ FZ_FLOAT = 279,
428
+ FZ_FUNCTION = 280,
429
+ FZ_IF = 281,
430
+ FZ_INCLUDE = 282,
431
+ FZ_INT = 283,
432
+ FZ_LET = 284,
433
+ FZ_MAXIMIZE = 285,
434
+ FZ_MINIMIZE = 286,
435
+ FZ_OF = 287,
436
+ FZ_SATISFY = 288,
437
+ FZ_OUTPUT = 289,
438
+ FZ_PREDICATE = 290,
439
+ FZ_RECORD = 291,
440
+ FZ_SET = 292,
441
+ FZ_SHOW = 293,
442
+ FZ_SHOWCOND = 294,
443
+ FZ_SOLVE = 295,
444
+ FZ_STRING = 296,
445
+ FZ_TEST = 297,
446
+ FZ_THEN = 298,
447
+ FZ_TUPLE = 299,
448
+ FZ_TYPE = 300,
449
+ FZ_VARIANT_RECORD = 301,
450
+ FZ_WHERE = 302
451
+ };
452
+ #endif
453
+
454
+
455
+
493
456
  #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
494
457
  typedef union YYSTYPE
458
+ {
459
+
460
+ /* Line 214 of yacc.c */
495
461
  #line 347 "gecode/flatzinc/parser.yxx"
496
- { int iValue; char* sValue; bool bValue; double dValue;
462
+ int iValue; char* sValue; bool bValue; double dValue;
497
463
  std::vector<int>* setValue;
498
464
  Gecode::FlatZinc::AST::SetLit* setLit;
499
465
  std::vector<double>* floatSetValue;
@@ -505,22 +471,23 @@ typedef union YYSTYPE
505
471
  Gecode::FlatZinc::Option<std::vector<Gecode::FlatZinc::VarSpec*>* > oVarSpecVec;
506
472
  Gecode::FlatZinc::AST::Node* arg;
507
473
  Gecode::FlatZinc::AST::Array* argVec;
508
- }
509
- /* Line 193 of yacc.c. */
510
- #line 511 "gecode/flatzinc/parser.tab.cpp"
511
- YYSTYPE;
474
+
475
+
476
+
477
+ /* Line 214 of yacc.c */
478
+ #line 479 "gecode/flatzinc/parser.tab.cpp"
479
+ } YYSTYPE;
480
+ # define YYSTYPE_IS_TRIVIAL 1
512
481
  # define yystype YYSTYPE /* obsolescent; will be withdrawn */
513
482
  # define YYSTYPE_IS_DECLARED 1
514
- # define YYSTYPE_IS_TRIVIAL 1
515
483
  #endif
516
484
 
517
485
 
518
-
519
486
  /* Copy the second part of user declarations. */
520
487
 
521
488
 
522
- /* Line 216 of yacc.c. */
523
- #line 524 "gecode/flatzinc/parser.tab.cpp"
489
+ /* Line 264 of yacc.c */
490
+ #line 491 "gecode/flatzinc/parser.tab.cpp"
524
491
 
525
492
  #ifdef short
526
493
  # undef short
@@ -595,14 +562,14 @@ typedef short int yytype_int16;
595
562
  #if (defined __STDC__ || defined __C99__FUNC__ \
596
563
  || defined __cplusplus || defined _MSC_VER)
597
564
  static int
598
- YYID (int i)
565
+ YYID (int yyi)
599
566
  #else
600
567
  static int
601
- YYID (i)
602
- int i;
568
+ YYID (yyi)
569
+ int yyi;
603
570
  #endif
604
571
  {
605
- return i;
572
+ return yyi;
606
573
  }
607
574
  #endif
608
575
 
@@ -683,9 +650,9 @@ void free (void *); /* INFRINGES ON USER NAME SPACE */
683
650
  /* A type that is properly aligned for any stack member. */
684
651
  union yyalloc
685
652
  {
686
- yytype_int16 yyss;
687
- YYSTYPE yyvs;
688
- };
653
+ yytype_int16 yyss_alloc;
654
+ YYSTYPE yyvs_alloc;
655
+ };
689
656
 
690
657
  /* The size of the maximum gap between one aligned stack and the next. */
691
658
  # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
@@ -719,12 +686,12 @@ union yyalloc
719
686
  elements in the stack, and YYPTR gives the new location of the
720
687
  stack. Advance YYPTR to a properly aligned location for the next
721
688
  stack. */
722
- # define YYSTACK_RELOCATE(Stack) \
689
+ # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
723
690
  do \
724
691
  { \
725
692
  YYSIZE_T yynewbytes; \
726
- YYCOPY (&yyptr->Stack, Stack, yysize); \
727
- Stack = &yyptr->Stack; \
693
+ YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
694
+ Stack = &yyptr->Stack_alloc; \
728
695
  yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
729
696
  yyptr += yynewbytes / sizeof (*yyptr); \
730
697
  } \
@@ -1231,9 +1198,18 @@ static const yytype_uint8 yystos[] =
1231
1198
 
1232
1199
  /* Like YYERROR except do call yyerror. This remains here temporarily
1233
1200
  to ease the transition to the new meaning of YYERROR, for GCC.
1234
- Once GCC version 2 has supplanted version 1, this can go. */
1201
+ Once GCC version 2 has supplanted version 1, this can go. However,
1202
+ YYFAIL appears to be in use. Nevertheless, it is formally deprecated
1203
+ in Bison 2.4.2's NEWS entry, where a plan to phase it out is
1204
+ discussed. */
1235
1205
 
1236
1206
  #define YYFAIL goto yyerrlab
1207
+ #if defined YYFAIL
1208
+ /* This is here to suppress warnings from the GCC cpp's
1209
+ -Wunused-macros. Normally we don't worry about that warning, but
1210
+ some users do, and we want to make it easy for users to remove
1211
+ YYFAIL uses, which will produce warnings from Bison 2.5. */
1212
+ #endif
1237
1213
 
1238
1214
  #define YYRECOVERING() (!!yyerrstatus)
1239
1215
 
@@ -1404,17 +1380,20 @@ yy_symbol_print (yyoutput, yytype, yyvaluep, parm)
1404
1380
  #if (defined __STDC__ || defined __C99__FUNC__ \
1405
1381
  || defined __cplusplus || defined _MSC_VER)
1406
1382
  static void
1407
- yy_stack_print (yytype_int16 *bottom, yytype_int16 *top)
1383
+ yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
1408
1384
  #else
1409
1385
  static void
1410
- yy_stack_print (bottom, top)
1411
- yytype_int16 *bottom;
1412
- yytype_int16 *top;
1386
+ yy_stack_print (yybottom, yytop)
1387
+ yytype_int16 *yybottom;
1388
+ yytype_int16 *yytop;
1413
1389
  #endif
1414
1390
  {
1415
1391
  YYFPRINTF (stderr, "Stack now");
1416
- for (; bottom <= top; ++bottom)
1417
- YYFPRINTF (stderr, " %d", *bottom);
1392
+ for (; yybottom <= yytop; yybottom++)
1393
+ {
1394
+ int yybot = *yybottom;
1395
+ YYFPRINTF (stderr, " %d", yybot);
1396
+ }
1418
1397
  YYFPRINTF (stderr, "\n");
1419
1398
  }
1420
1399
 
@@ -1449,11 +1428,11 @@ yy_reduce_print (yyvsp, yyrule, parm)
1449
1428
  /* The symbols being reduced. */
1450
1429
  for (yyi = 0; yyi < yynrhs; yyi++)
1451
1430
  {
1452
- fprintf (stderr, " $%d = ", yyi + 1);
1431
+ YYFPRINTF (stderr, " $%d = ", yyi + 1);
1453
1432
  yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
1454
1433
  &(yyvsp[(yyi + 1) - (yynrhs)])
1455
1434
  , parm);
1456
- fprintf (stderr, "\n");
1435
+ YYFPRINTF (stderr, "\n");
1457
1436
  }
1458
1437
  }
1459
1438
 
@@ -1735,10 +1714,8 @@ yydestruct (yymsg, yytype, yyvaluep, parm)
1735
1714
  break;
1736
1715
  }
1737
1716
  }
1738
-
1739
1717
 
1740
1718
  /* Prevent warnings from -Wmissing-prototypes. */
1741
-
1742
1719
  #ifdef YYPARSE_PARAM
1743
1720
  #if defined __STDC__ || defined __cplusplus
1744
1721
  int yyparse (void *YYPARSE_PARAM);
@@ -1757,10 +1734,9 @@ int yyparse ();
1757
1734
 
1758
1735
 
1759
1736
 
1760
-
1761
- /*----------.
1762
- | yyparse. |
1763
- `----------*/
1737
+ /*-------------------------.
1738
+ | yyparse or yypush_parse. |
1739
+ `-------------------------*/
1764
1740
 
1765
1741
  #ifdef YYPARSE_PARAM
1766
1742
  #if (defined __STDC__ || defined __C99__FUNC__ \
@@ -1784,74 +1760,75 @@ yyparse (parm)
1784
1760
  #endif
1785
1761
  #endif
1786
1762
  {
1787
- /* The look-ahead symbol. */
1763
+ /* The lookahead symbol. */
1788
1764
  int yychar;
1789
1765
 
1790
- /* The semantic value of the look-ahead symbol. */
1766
+ /* The semantic value of the lookahead symbol. */
1791
1767
  YYSTYPE yylval;
1792
1768
 
1793
- /* Number of syntax errors so far. */
1794
- int yynerrs;
1795
-
1796
- int yystate;
1797
- int yyn;
1798
- int yyresult;
1799
- /* Number of tokens to shift before error messages enabled. */
1800
- int yyerrstatus;
1801
- /* Look-ahead token as an internal (translated) token number. */
1802
- int yytoken = 0;
1803
- #if YYERROR_VERBOSE
1804
- /* Buffer for error messages, and its allocated size. */
1805
- char yymsgbuf[128];
1806
- char *yymsg = yymsgbuf;
1807
- YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
1808
- #endif
1809
-
1810
- /* Three stacks and their tools:
1811
- `yyss': related to states,
1812
- `yyvs': related to semantic values,
1813
- `yyls': related to locations.
1814
-
1815
- Refer to the stacks thru separate pointers, to allow yyoverflow
1816
- to reallocate them elsewhere. */
1769
+ /* Number of syntax errors so far. */
1770
+ int yynerrs;
1817
1771
 
1818
- /* The state stack. */
1819
- yytype_int16 yyssa[YYINITDEPTH];
1820
- yytype_int16 *yyss = yyssa;
1821
- yytype_int16 *yyssp;
1772
+ int yystate;
1773
+ /* Number of tokens to shift before error messages enabled. */
1774
+ int yyerrstatus;
1822
1775
 
1823
- /* The semantic value stack. */
1824
- YYSTYPE yyvsa[YYINITDEPTH];
1825
- YYSTYPE *yyvs = yyvsa;
1826
- YYSTYPE *yyvsp;
1776
+ /* The stacks and their tools:
1777
+ `yyss': related to states.
1778
+ `yyvs': related to semantic values.
1827
1779
 
1780
+ Refer to the stacks thru separate pointers, to allow yyoverflow
1781
+ to reallocate them elsewhere. */
1828
1782
 
1783
+ /* The state stack. */
1784
+ yytype_int16 yyssa[YYINITDEPTH];
1785
+ yytype_int16 *yyss;
1786
+ yytype_int16 *yyssp;
1829
1787
 
1830
- #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
1788
+ /* The semantic value stack. */
1789
+ YYSTYPE yyvsa[YYINITDEPTH];
1790
+ YYSTYPE *yyvs;
1791
+ YYSTYPE *yyvsp;
1831
1792
 
1832
- YYSIZE_T yystacksize = YYINITDEPTH;
1793
+ YYSIZE_T yystacksize;
1833
1794
 
1795
+ int yyn;
1796
+ int yyresult;
1797
+ /* Lookahead token as an internal (translated) token number. */
1798
+ int yytoken;
1834
1799
  /* The variables used to return semantic value and location from the
1835
1800
  action routines. */
1836
1801
  YYSTYPE yyval;
1837
1802
 
1803
+ #if YYERROR_VERBOSE
1804
+ /* Buffer for error messages, and its allocated size. */
1805
+ char yymsgbuf[128];
1806
+ char *yymsg = yymsgbuf;
1807
+ YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
1808
+ #endif
1809
+
1810
+ #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
1838
1811
 
1839
1812
  /* The number of symbols on the RHS of the reduced rule.
1840
1813
  Keep to zero when no symbol should be popped. */
1841
1814
  int yylen = 0;
1842
1815
 
1816
+ yytoken = 0;
1817
+ yyss = yyssa;
1818
+ yyvs = yyvsa;
1819
+ yystacksize = YYINITDEPTH;
1820
+
1843
1821
  YYDPRINTF ((stderr, "Starting parse\n"));
1844
1822
 
1845
1823
  yystate = 0;
1846
1824
  yyerrstatus = 0;
1847
1825
  yynerrs = 0;
1848
- yychar = YYEMPTY; /* Cause a token to be read. */
1826
+ yychar = YYEMPTY; /* Cause a token to be read. */
1849
1827
 
1850
1828
  /* Initialize stack pointers.
1851
1829
  Waste one element of value and location stack
1852
1830
  so that they stay on the same level as the state stack.
1853
1831
  The wasted elements are never initialized. */
1854
-
1855
1832
  yyssp = yyss;
1856
1833
  yyvsp = yyvs;
1857
1834
 
@@ -1881,7 +1858,6 @@ int yynerrs;
1881
1858
  YYSTYPE *yyvs1 = yyvs;
1882
1859
  yytype_int16 *yyss1 = yyss;
1883
1860
 
1884
-
1885
1861
  /* Each stack pointer address is followed by the size of the
1886
1862
  data in use in that stack, in bytes. This used to be a
1887
1863
  conditional around just the two extra args, but that might
@@ -1889,7 +1865,6 @@ int yynerrs;
1889
1865
  yyoverflow (YY_("memory exhausted"),
1890
1866
  &yyss1, yysize * sizeof (*yyssp),
1891
1867
  &yyvs1, yysize * sizeof (*yyvsp),
1892
-
1893
1868
  &yystacksize);
1894
1869
 
1895
1870
  yyss = yyss1;
@@ -1912,9 +1887,8 @@ int yynerrs;
1912
1887
  (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
1913
1888
  if (! yyptr)
1914
1889
  goto yyexhaustedlab;
1915
- YYSTACK_RELOCATE (yyss);
1916
- YYSTACK_RELOCATE (yyvs);
1917
-
1890
+ YYSTACK_RELOCATE (yyss_alloc, yyss);
1891
+ YYSTACK_RELOCATE (yyvs_alloc, yyvs);
1918
1892
  # undef YYSTACK_RELOCATE
1919
1893
  if (yyss1 != yyssa)
1920
1894
  YYSTACK_FREE (yyss1);
@@ -1925,7 +1899,6 @@ int yynerrs;
1925
1899
  yyssp = yyss + yysize - 1;
1926
1900
  yyvsp = yyvs + yysize - 1;
1927
1901
 
1928
-
1929
1902
  YYDPRINTF ((stderr, "Stack size increased to %lu\n",
1930
1903
  (unsigned long int) yystacksize));
1931
1904
 
@@ -1935,6 +1908,9 @@ int yynerrs;
1935
1908
 
1936
1909
  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
1937
1910
 
1911
+ if (yystate == YYFINAL)
1912
+ YYACCEPT;
1913
+
1938
1914
  goto yybackup;
1939
1915
 
1940
1916
  /*-----------.
@@ -1943,16 +1919,16 @@ int yynerrs;
1943
1919
  yybackup:
1944
1920
 
1945
1921
  /* Do appropriate processing given the current state. Read a
1946
- look-ahead token if we need one and don't already have one. */
1922
+ lookahead token if we need one and don't already have one. */
1947
1923
 
1948
- /* First try to decide what to do without reference to look-ahead token. */
1924
+ /* First try to decide what to do without reference to lookahead token. */
1949
1925
  yyn = yypact[yystate];
1950
1926
  if (yyn == YYPACT_NINF)
1951
1927
  goto yydefault;
1952
1928
 
1953
- /* Not known => get a look-ahead token if don't already have one. */
1929
+ /* Not known => get a lookahead token if don't already have one. */
1954
1930
 
1955
- /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */
1931
+ /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
1956
1932
  if (yychar == YYEMPTY)
1957
1933
  {
1958
1934
  YYDPRINTF ((stderr, "Reading a token: "));
@@ -1984,20 +1960,16 @@ yybackup:
1984
1960
  goto yyreduce;
1985
1961
  }
1986
1962
 
1987
- if (yyn == YYFINAL)
1988
- YYACCEPT;
1989
-
1990
1963
  /* Count tokens shifted since error; after three, turn off error
1991
1964
  status. */
1992
1965
  if (yyerrstatus)
1993
1966
  yyerrstatus--;
1994
1967
 
1995
- /* Shift the look-ahead token. */
1968
+ /* Shift the lookahead token. */
1996
1969
  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
1997
1970
 
1998
- /* Discard the shifted token unless it is eof. */
1999
- if (yychar != YYEOF)
2000
- yychar = YYEMPTY;
1971
+ /* Discard the shifted token. */
1972
+ yychar = YYEMPTY;
2001
1973
 
2002
1974
  yystate = yyn;
2003
1975
  *++yyvsp = yylval;
@@ -2037,16 +2009,22 @@ yyreduce:
2037
2009
  switch (yyn)
2038
2010
  {
2039
2011
  case 7:
2012
+
2013
+ /* Line 1464 of yacc.c */
2040
2014
  #line 459 "gecode/flatzinc/parser.yxx"
2041
2015
  { initfg(static_cast<ParserState*>(parm)); ;}
2042
2016
  break;
2043
2017
 
2044
2018
  case 8:
2019
+
2020
+ /* Line 1464 of yacc.c */
2045
2021
  #line 461 "gecode/flatzinc/parser.yxx"
2046
2022
  { initfg(static_cast<ParserState*>(parm)); ;}
2047
2023
  break;
2048
2024
 
2049
2025
  case 35:
2026
+
2027
+ /* Line 1464 of yacc.c */
2050
2028
  #line 521 "gecode/flatzinc/parser.yxx"
2051
2029
  {
2052
2030
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2081,6 +2059,8 @@ yyreduce:
2081
2059
  break;
2082
2060
 
2083
2061
  case 36:
2062
+
2063
+ /* Line 1464 of yacc.c */
2084
2064
  #line 552 "gecode/flatzinc/parser.yxx"
2085
2065
  {
2086
2066
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2115,6 +2095,8 @@ yyreduce:
2115
2095
  break;
2116
2096
 
2117
2097
  case 37:
2098
+
2099
+ /* Line 1464 of yacc.c */
2118
2100
  #line 583 "gecode/flatzinc/parser.yxx"
2119
2101
  { ParserState* pp = static_cast<ParserState*>(parm);
2120
2102
  yyassert(pp, false, "Floats not supported");
@@ -2123,6 +2105,8 @@ yyreduce:
2123
2105
  break;
2124
2106
 
2125
2107
  case 38:
2108
+
2109
+ /* Line 1464 of yacc.c */
2126
2110
  #line 588 "gecode/flatzinc/parser.yxx"
2127
2111
  {
2128
2112
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2158,6 +2142,8 @@ yyreduce:
2158
2142
  break;
2159
2143
 
2160
2144
  case 39:
2145
+
2146
+ /* Line 1464 of yacc.c */
2161
2147
  #line 620 "gecode/flatzinc/parser.yxx"
2162
2148
  {
2163
2149
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2170,6 +2156,8 @@ yyreduce:
2170
2156
  break;
2171
2157
 
2172
2158
  case 40:
2159
+
2160
+ /* Line 1464 of yacc.c */
2173
2161
  #line 629 "gecode/flatzinc/parser.yxx"
2174
2162
  {
2175
2163
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2182,6 +2170,8 @@ yyreduce:
2182
2170
  break;
2183
2171
 
2184
2172
  case 41:
2173
+
2174
+ /* Line 1464 of yacc.c */
2185
2175
  #line 638 "gecode/flatzinc/parser.yxx"
2186
2176
  {
2187
2177
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2197,6 +2187,8 @@ yyreduce:
2197
2187
  break;
2198
2188
 
2199
2189
  case 42:
2190
+
2191
+ /* Line 1464 of yacc.c */
2200
2192
  #line 651 "gecode/flatzinc/parser.yxx"
2201
2193
  {
2202
2194
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2264,6 +2256,8 @@ yyreduce:
2264
2256
  break;
2265
2257
 
2266
2258
  case 43:
2259
+
2260
+ /* Line 1464 of yacc.c */
2267
2261
  #line 716 "gecode/flatzinc/parser.yxx"
2268
2262
  {
2269
2263
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2324,6 +2318,8 @@ yyreduce:
2324
2318
  break;
2325
2319
 
2326
2320
  case 44:
2321
+
2322
+ /* Line 1464 of yacc.c */
2327
2323
  #line 774 "gecode/flatzinc/parser.yxx"
2328
2324
  {
2329
2325
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2333,6 +2329,8 @@ yyreduce:
2333
2329
  break;
2334
2330
 
2335
2331
  case 45:
2332
+
2333
+ /* Line 1464 of yacc.c */
2336
2334
  #line 781 "gecode/flatzinc/parser.yxx"
2337
2335
  {
2338
2336
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2398,6 +2396,8 @@ yyreduce:
2398
2396
  break;
2399
2397
 
2400
2398
  case 46:
2399
+
2400
+ /* Line 1464 of yacc.c */
2401
2401
  #line 844 "gecode/flatzinc/parser.yxx"
2402
2402
  {
2403
2403
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2421,6 +2421,8 @@ yyreduce:
2421
2421
  break;
2422
2422
 
2423
2423
  case 47:
2424
+
2425
+ /* Line 1464 of yacc.c */
2424
2426
  #line 865 "gecode/flatzinc/parser.yxx"
2425
2427
  {
2426
2428
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2443,6 +2445,8 @@ yyreduce:
2443
2445
  break;
2444
2446
 
2445
2447
  case 48:
2448
+
2449
+ /* Line 1464 of yacc.c */
2446
2450
  #line 885 "gecode/flatzinc/parser.yxx"
2447
2451
  {
2448
2452
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2452,6 +2456,8 @@ yyreduce:
2452
2456
  break;
2453
2457
 
2454
2458
  case 49:
2459
+
2460
+ /* Line 1464 of yacc.c */
2455
2461
  #line 892 "gecode/flatzinc/parser.yxx"
2456
2462
  {
2457
2463
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2475,6 +2481,8 @@ yyreduce:
2475
2481
  break;
2476
2482
 
2477
2483
  case 50:
2484
+
2485
+ /* Line 1464 of yacc.c */
2478
2486
  #line 914 "gecode/flatzinc/parser.yxx"
2479
2487
  {
2480
2488
  (yyval.varSpec) = new IntVarSpec((yyvsp[(1) - (1)].iValue),false);
@@ -2482,6 +2490,8 @@ yyreduce:
2482
2490
  break;
2483
2491
 
2484
2492
  case 51:
2493
+
2494
+ /* Line 1464 of yacc.c */
2485
2495
  #line 918 "gecode/flatzinc/parser.yxx"
2486
2496
  {
2487
2497
  SymbolEntry e;
@@ -2500,6 +2510,8 @@ yyreduce:
2500
2510
  break;
2501
2511
 
2502
2512
  case 52:
2513
+
2514
+ /* Line 1464 of yacc.c */
2503
2515
  #line 933 "gecode/flatzinc/parser.yxx"
2504
2516
  {
2505
2517
  vector<int> v;
@@ -2524,36 +2536,50 @@ yyreduce:
2524
2536
  break;
2525
2537
 
2526
2538
  case 53:
2539
+
2540
+ /* Line 1464 of yacc.c */
2527
2541
  #line 956 "gecode/flatzinc/parser.yxx"
2528
2542
  { (yyval.varSpecVec) = new vector<VarSpec*>(0); ;}
2529
2543
  break;
2530
2544
 
2531
2545
  case 54:
2546
+
2547
+ /* Line 1464 of yacc.c */
2532
2548
  #line 958 "gecode/flatzinc/parser.yxx"
2533
2549
  { (yyval.varSpecVec) = (yyvsp[(1) - (2)].varSpecVec); ;}
2534
2550
  break;
2535
2551
 
2536
2552
  case 55:
2553
+
2554
+ /* Line 1464 of yacc.c */
2537
2555
  #line 962 "gecode/flatzinc/parser.yxx"
2538
2556
  { (yyval.varSpecVec) = new vector<VarSpec*>(1); (*(yyval.varSpecVec))[0] = (yyvsp[(1) - (1)].varSpec); ;}
2539
2557
  break;
2540
2558
 
2541
2559
  case 56:
2560
+
2561
+ /* Line 1464 of yacc.c */
2542
2562
  #line 964 "gecode/flatzinc/parser.yxx"
2543
2563
  { (yyval.varSpecVec) = (yyvsp[(1) - (3)].varSpecVec); (yyval.varSpecVec)->push_back((yyvsp[(3) - (3)].varSpec)); ;}
2544
2564
  break;
2545
2565
 
2546
2566
  case 59:
2567
+
2568
+ /* Line 1464 of yacc.c */
2547
2569
  #line 969 "gecode/flatzinc/parser.yxx"
2548
2570
  { (yyval.varSpecVec) = (yyvsp[(2) - (3)].varSpecVec); ;}
2549
2571
  break;
2550
2572
 
2551
2573
  case 60:
2574
+
2575
+ /* Line 1464 of yacc.c */
2552
2576
  #line 973 "gecode/flatzinc/parser.yxx"
2553
2577
  { (yyval.varSpec) = new FloatVarSpec((yyvsp[(1) - (1)].dValue),false); ;}
2554
2578
  break;
2555
2579
 
2556
2580
  case 61:
2581
+
2582
+ /* Line 1464 of yacc.c */
2557
2583
  #line 975 "gecode/flatzinc/parser.yxx"
2558
2584
  {
2559
2585
  SymbolEntry e;
@@ -2572,6 +2598,8 @@ yyreduce:
2572
2598
  break;
2573
2599
 
2574
2600
  case 62:
2601
+
2602
+ /* Line 1464 of yacc.c */
2575
2603
  #line 990 "gecode/flatzinc/parser.yxx"
2576
2604
  {
2577
2605
  SymbolEntry e;
@@ -2595,36 +2623,50 @@ yyreduce:
2595
2623
  break;
2596
2624
 
2597
2625
  case 63:
2626
+
2627
+ /* Line 1464 of yacc.c */
2598
2628
  #line 1012 "gecode/flatzinc/parser.yxx"
2599
2629
  { (yyval.varSpecVec) = new vector<VarSpec*>(0); ;}
2600
2630
  break;
2601
2631
 
2602
2632
  case 64:
2633
+
2634
+ /* Line 1464 of yacc.c */
2603
2635
  #line 1014 "gecode/flatzinc/parser.yxx"
2604
2636
  { (yyval.varSpecVec) = (yyvsp[(1) - (2)].varSpecVec); ;}
2605
2637
  break;
2606
2638
 
2607
2639
  case 65:
2640
+
2641
+ /* Line 1464 of yacc.c */
2608
2642
  #line 1018 "gecode/flatzinc/parser.yxx"
2609
2643
  { (yyval.varSpecVec) = new vector<VarSpec*>(1); (*(yyval.varSpecVec))[0] = (yyvsp[(1) - (1)].varSpec); ;}
2610
2644
  break;
2611
2645
 
2612
2646
  case 66:
2647
+
2648
+ /* Line 1464 of yacc.c */
2613
2649
  #line 1020 "gecode/flatzinc/parser.yxx"
2614
2650
  { (yyval.varSpecVec) = (yyvsp[(1) - (3)].varSpecVec); (yyval.varSpecVec)->push_back((yyvsp[(3) - (3)].varSpec)); ;}
2615
2651
  break;
2616
2652
 
2617
2653
  case 67:
2654
+
2655
+ /* Line 1464 of yacc.c */
2618
2656
  #line 1024 "gecode/flatzinc/parser.yxx"
2619
2657
  { (yyval.varSpecVec) = (yyvsp[(2) - (3)].varSpecVec); ;}
2620
2658
  break;
2621
2659
 
2622
2660
  case 68:
2661
+
2662
+ /* Line 1464 of yacc.c */
2623
2663
  #line 1028 "gecode/flatzinc/parser.yxx"
2624
2664
  { (yyval.varSpec) = new BoolVarSpec((yyvsp[(1) - (1)].iValue),false); ;}
2625
2665
  break;
2626
2666
 
2627
2667
  case 69:
2668
+
2669
+ /* Line 1464 of yacc.c */
2628
2670
  #line 1030 "gecode/flatzinc/parser.yxx"
2629
2671
  {
2630
2672
  SymbolEntry e;
@@ -2643,6 +2685,8 @@ yyreduce:
2643
2685
  break;
2644
2686
 
2645
2687
  case 70:
2688
+
2689
+ /* Line 1464 of yacc.c */
2646
2690
  #line 1045 "gecode/flatzinc/parser.yxx"
2647
2691
  {
2648
2692
  SymbolEntry e;
@@ -2666,36 +2710,50 @@ yyreduce:
2666
2710
  break;
2667
2711
 
2668
2712
  case 71:
2713
+
2714
+ /* Line 1464 of yacc.c */
2669
2715
  #line 1067 "gecode/flatzinc/parser.yxx"
2670
2716
  { (yyval.varSpecVec) = new vector<VarSpec*>(0); ;}
2671
2717
  break;
2672
2718
 
2673
2719
  case 72:
2720
+
2721
+ /* Line 1464 of yacc.c */
2674
2722
  #line 1069 "gecode/flatzinc/parser.yxx"
2675
2723
  { (yyval.varSpecVec) = (yyvsp[(1) - (2)].varSpecVec); ;}
2676
2724
  break;
2677
2725
 
2678
2726
  case 73:
2727
+
2728
+ /* Line 1464 of yacc.c */
2679
2729
  #line 1073 "gecode/flatzinc/parser.yxx"
2680
2730
  { (yyval.varSpecVec) = new vector<VarSpec*>(1); (*(yyval.varSpecVec))[0] = (yyvsp[(1) - (1)].varSpec); ;}
2681
2731
  break;
2682
2732
 
2683
2733
  case 74:
2734
+
2735
+ /* Line 1464 of yacc.c */
2684
2736
  #line 1075 "gecode/flatzinc/parser.yxx"
2685
2737
  { (yyval.varSpecVec) = (yyvsp[(1) - (3)].varSpecVec); (yyval.varSpecVec)->push_back((yyvsp[(3) - (3)].varSpec)); ;}
2686
2738
  break;
2687
2739
 
2688
2740
  case 75:
2741
+
2742
+ /* Line 1464 of yacc.c */
2689
2743
  #line 1077 "gecode/flatzinc/parser.yxx"
2690
2744
  { (yyval.varSpecVec) = (yyvsp[(2) - (3)].varSpecVec); ;}
2691
2745
  break;
2692
2746
 
2693
2747
  case 76:
2748
+
2749
+ /* Line 1464 of yacc.c */
2694
2750
  #line 1081 "gecode/flatzinc/parser.yxx"
2695
2751
  { (yyval.varSpec) = new SetVarSpec((yyvsp[(1) - (1)].setLit),false); ;}
2696
2752
  break;
2697
2753
 
2698
2754
  case 77:
2755
+
2756
+ /* Line 1464 of yacc.c */
2699
2757
  #line 1083 "gecode/flatzinc/parser.yxx"
2700
2758
  {
2701
2759
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -2714,6 +2772,8 @@ yyreduce:
2714
2772
  break;
2715
2773
 
2716
2774
  case 78:
2775
+
2776
+ /* Line 1464 of yacc.c */
2717
2777
  #line 1098 "gecode/flatzinc/parser.yxx"
2718
2778
  {
2719
2779
  SymbolEntry e;
@@ -2737,71 +2797,99 @@ yyreduce:
2737
2797
  break;
2738
2798
 
2739
2799
  case 79:
2800
+
2801
+ /* Line 1464 of yacc.c */
2740
2802
  #line 1120 "gecode/flatzinc/parser.yxx"
2741
2803
  { (yyval.varSpecVec) = new vector<VarSpec*>(0); ;}
2742
2804
  break;
2743
2805
 
2744
2806
  case 80:
2807
+
2808
+ /* Line 1464 of yacc.c */
2745
2809
  #line 1122 "gecode/flatzinc/parser.yxx"
2746
2810
  { (yyval.varSpecVec) = (yyvsp[(1) - (2)].varSpecVec); ;}
2747
2811
  break;
2748
2812
 
2749
2813
  case 81:
2814
+
2815
+ /* Line 1464 of yacc.c */
2750
2816
  #line 1126 "gecode/flatzinc/parser.yxx"
2751
2817
  { (yyval.varSpecVec) = new vector<VarSpec*>(1); (*(yyval.varSpecVec))[0] = (yyvsp[(1) - (1)].varSpec); ;}
2752
2818
  break;
2753
2819
 
2754
2820
  case 82:
2821
+
2822
+ /* Line 1464 of yacc.c */
2755
2823
  #line 1128 "gecode/flatzinc/parser.yxx"
2756
2824
  { (yyval.varSpecVec) = (yyvsp[(1) - (3)].varSpecVec); (yyval.varSpecVec)->push_back((yyvsp[(3) - (3)].varSpec)); ;}
2757
2825
  break;
2758
2826
 
2759
2827
  case 83:
2828
+
2829
+ /* Line 1464 of yacc.c */
2760
2830
  #line 1131 "gecode/flatzinc/parser.yxx"
2761
2831
  { (yyval.varSpecVec) = (yyvsp[(2) - (3)].varSpecVec); ;}
2762
2832
  break;
2763
2833
 
2764
2834
  case 84:
2835
+
2836
+ /* Line 1464 of yacc.c */
2765
2837
  #line 1135 "gecode/flatzinc/parser.yxx"
2766
2838
  { (yyval.oVarSpecVec) = Option<vector<VarSpec*>* >::none(); ;}
2767
2839
  break;
2768
2840
 
2769
2841
  case 85:
2842
+
2843
+ /* Line 1464 of yacc.c */
2770
2844
  #line 1137 "gecode/flatzinc/parser.yxx"
2771
2845
  { (yyval.oVarSpecVec) = Option<vector<VarSpec*>* >::some((yyvsp[(2) - (2)].varSpecVec)); ;}
2772
2846
  break;
2773
2847
 
2774
2848
  case 86:
2849
+
2850
+ /* Line 1464 of yacc.c */
2775
2851
  #line 1141 "gecode/flatzinc/parser.yxx"
2776
2852
  { (yyval.oVarSpecVec) = Option<vector<VarSpec*>* >::none(); ;}
2777
2853
  break;
2778
2854
 
2779
2855
  case 87:
2856
+
2857
+ /* Line 1464 of yacc.c */
2780
2858
  #line 1143 "gecode/flatzinc/parser.yxx"
2781
2859
  { (yyval.oVarSpecVec) = Option<vector<VarSpec*>* >::some((yyvsp[(2) - (2)].varSpecVec)); ;}
2782
2860
  break;
2783
2861
 
2784
2862
  case 88:
2863
+
2864
+ /* Line 1464 of yacc.c */
2785
2865
  #line 1147 "gecode/flatzinc/parser.yxx"
2786
2866
  { (yyval.oVarSpecVec) = Option<vector<VarSpec*>* >::none(); ;}
2787
2867
  break;
2788
2868
 
2789
2869
  case 89:
2870
+
2871
+ /* Line 1464 of yacc.c */
2790
2872
  #line 1149 "gecode/flatzinc/parser.yxx"
2791
2873
  { (yyval.oVarSpecVec) = Option<vector<VarSpec*>* >::some((yyvsp[(2) - (2)].varSpecVec)); ;}
2792
2874
  break;
2793
2875
 
2794
2876
  case 90:
2877
+
2878
+ /* Line 1464 of yacc.c */
2795
2879
  #line 1153 "gecode/flatzinc/parser.yxx"
2796
2880
  { (yyval.oVarSpecVec) = Option<vector<VarSpec*>* >::none(); ;}
2797
2881
  break;
2798
2882
 
2799
2883
  case 91:
2884
+
2885
+ /* Line 1464 of yacc.c */
2800
2886
  #line 1155 "gecode/flatzinc/parser.yxx"
2801
2887
  { (yyval.oVarSpecVec) = Option<vector<VarSpec*>* >::some((yyvsp[(2) - (2)].varSpecVec)); ;}
2802
2888
  break;
2803
2889
 
2804
2890
  case 92:
2891
+
2892
+ /* Line 1464 of yacc.c */
2805
2893
  #line 1159 "gecode/flatzinc/parser.yxx"
2806
2894
  {
2807
2895
  ParserState *pp = static_cast<ParserState*>(parm);
@@ -2818,6 +2906,8 @@ yyreduce:
2818
2906
  break;
2819
2907
 
2820
2908
  case 93:
2909
+
2910
+ /* Line 1464 of yacc.c */
2821
2911
  #line 1173 "gecode/flatzinc/parser.yxx"
2822
2912
  {
2823
2913
  ParserState *pp = static_cast<ParserState*>(parm);
@@ -2834,6 +2924,8 @@ yyreduce:
2834
2924
  break;
2835
2925
 
2836
2926
  case 94:
2927
+
2928
+ /* Line 1464 of yacc.c */
2837
2929
  #line 1186 "gecode/flatzinc/parser.yxx"
2838
2930
  {
2839
2931
  ParserState *pp = static_cast<ParserState*>(parm);
@@ -2853,16 +2945,22 @@ yyreduce:
2853
2945
  break;
2854
2946
 
2855
2947
  case 95:
2948
+
2949
+ /* Line 1464 of yacc.c */
2856
2950
  #line 1208 "gecode/flatzinc/parser.yxx"
2857
2951
  { (yyval.oSet) = Option<AST::SetLit* >::none(); ;}
2858
2952
  break;
2859
2953
 
2860
2954
  case 96:
2955
+
2956
+ /* Line 1464 of yacc.c */
2861
2957
  #line 1210 "gecode/flatzinc/parser.yxx"
2862
2958
  { (yyval.oSet) = Option<AST::SetLit* >::some(new AST::SetLit(*(yyvsp[(2) - (3)].setValue))); ;}
2863
2959
  break;
2864
2960
 
2865
2961
  case 97:
2962
+
2963
+ /* Line 1464 of yacc.c */
2866
2964
  #line 1212 "gecode/flatzinc/parser.yxx"
2867
2965
  {
2868
2966
  (yyval.oSet) = Option<AST::SetLit* >::some(new AST::SetLit((yyvsp[(1) - (3)].iValue), (yyvsp[(3) - (3)].iValue)));
@@ -2870,11 +2968,15 @@ yyreduce:
2870
2968
  break;
2871
2969
 
2872
2970
  case 98:
2971
+
2972
+ /* Line 1464 of yacc.c */
2873
2973
  #line 1218 "gecode/flatzinc/parser.yxx"
2874
2974
  { (yyval.oSet) = Option<AST::SetLit* >::none(); ;}
2875
2975
  break;
2876
2976
 
2877
2977
  case 99:
2978
+
2979
+ /* Line 1464 of yacc.c */
2878
2980
  #line 1220 "gecode/flatzinc/parser.yxx"
2879
2981
  { bool haveTrue = false;
2880
2982
  bool haveFalse = false;
@@ -2889,146 +2991,204 @@ yyreduce:
2889
2991
  break;
2890
2992
 
2891
2993
  case 102:
2994
+
2995
+ /* Line 1464 of yacc.c */
2892
2996
  #line 1241 "gecode/flatzinc/parser.yxx"
2893
2997
  { (yyval.setLit) = new AST::SetLit(*(yyvsp[(2) - (3)].setValue)); ;}
2894
2998
  break;
2895
2999
 
2896
3000
  case 103:
3001
+
3002
+ /* Line 1464 of yacc.c */
2897
3003
  #line 1243 "gecode/flatzinc/parser.yxx"
2898
3004
  { (yyval.setLit) = new AST::SetLit((yyvsp[(1) - (3)].iValue), (yyvsp[(3) - (3)].iValue)); ;}
2899
3005
  break;
2900
3006
 
2901
3007
  case 104:
3008
+
3009
+ /* Line 1464 of yacc.c */
2902
3010
  #line 1249 "gecode/flatzinc/parser.yxx"
2903
3011
  { (yyval.setValue) = new vector<int>(0); ;}
2904
3012
  break;
2905
3013
 
2906
3014
  case 105:
3015
+
3016
+ /* Line 1464 of yacc.c */
2907
3017
  #line 1251 "gecode/flatzinc/parser.yxx"
2908
3018
  { (yyval.setValue) = (yyvsp[(1) - (2)].setValue); ;}
2909
3019
  break;
2910
3020
 
2911
3021
  case 106:
3022
+
3023
+ /* Line 1464 of yacc.c */
2912
3024
  #line 1255 "gecode/flatzinc/parser.yxx"
2913
3025
  { (yyval.setValue) = new vector<int>(1); (*(yyval.setValue))[0] = (yyvsp[(1) - (1)].iValue); ;}
2914
3026
  break;
2915
3027
 
2916
3028
  case 107:
3029
+
3030
+ /* Line 1464 of yacc.c */
2917
3031
  #line 1257 "gecode/flatzinc/parser.yxx"
2918
3032
  { (yyval.setValue) = (yyvsp[(1) - (3)].setValue); (yyval.setValue)->push_back((yyvsp[(3) - (3)].iValue)); ;}
2919
3033
  break;
2920
3034
 
2921
3035
  case 108:
3036
+
3037
+ /* Line 1464 of yacc.c */
2922
3038
  #line 1261 "gecode/flatzinc/parser.yxx"
2923
3039
  { (yyval.setValue) = new vector<int>(0); ;}
2924
3040
  break;
2925
3041
 
2926
3042
  case 109:
3043
+
3044
+ /* Line 1464 of yacc.c */
2927
3045
  #line 1263 "gecode/flatzinc/parser.yxx"
2928
3046
  { (yyval.setValue) = (yyvsp[(1) - (2)].setValue); ;}
2929
3047
  break;
2930
3048
 
2931
3049
  case 110:
3050
+
3051
+ /* Line 1464 of yacc.c */
2932
3052
  #line 1267 "gecode/flatzinc/parser.yxx"
2933
3053
  { (yyval.setValue) = new vector<int>(1); (*(yyval.setValue))[0] = (yyvsp[(1) - (1)].iValue); ;}
2934
3054
  break;
2935
3055
 
2936
3056
  case 111:
3057
+
3058
+ /* Line 1464 of yacc.c */
2937
3059
  #line 1269 "gecode/flatzinc/parser.yxx"
2938
3060
  { (yyval.setValue) = (yyvsp[(1) - (3)].setValue); (yyval.setValue)->push_back((yyvsp[(3) - (3)].iValue)); ;}
2939
3061
  break;
2940
3062
 
2941
3063
  case 112:
3064
+
3065
+ /* Line 1464 of yacc.c */
2942
3066
  #line 1273 "gecode/flatzinc/parser.yxx"
2943
3067
  { (yyval.floatSetValue) = new vector<double>(0); ;}
2944
3068
  break;
2945
3069
 
2946
3070
  case 113:
3071
+
3072
+ /* Line 1464 of yacc.c */
2947
3073
  #line 1275 "gecode/flatzinc/parser.yxx"
2948
3074
  { (yyval.floatSetValue) = (yyvsp[(1) - (2)].floatSetValue); ;}
2949
3075
  break;
2950
3076
 
2951
3077
  case 114:
3078
+
3079
+ /* Line 1464 of yacc.c */
2952
3080
  #line 1279 "gecode/flatzinc/parser.yxx"
2953
3081
  { (yyval.floatSetValue) = new vector<double>(1); (*(yyval.floatSetValue))[0] = (yyvsp[(1) - (1)].dValue); ;}
2954
3082
  break;
2955
3083
 
2956
3084
  case 115:
3085
+
3086
+ /* Line 1464 of yacc.c */
2957
3087
  #line 1281 "gecode/flatzinc/parser.yxx"
2958
3088
  { (yyval.floatSetValue) = (yyvsp[(1) - (3)].floatSetValue); (yyval.floatSetValue)->push_back((yyvsp[(3) - (3)].dValue)); ;}
2959
3089
  break;
2960
3090
 
2961
3091
  case 116:
3092
+
3093
+ /* Line 1464 of yacc.c */
2962
3094
  #line 1285 "gecode/flatzinc/parser.yxx"
2963
3095
  { (yyval.setValueList) = new vector<AST::SetLit>(0); ;}
2964
3096
  break;
2965
3097
 
2966
3098
  case 117:
3099
+
3100
+ /* Line 1464 of yacc.c */
2967
3101
  #line 1287 "gecode/flatzinc/parser.yxx"
2968
3102
  { (yyval.setValueList) = (yyvsp[(1) - (2)].setValueList); ;}
2969
3103
  break;
2970
3104
 
2971
3105
  case 118:
3106
+
3107
+ /* Line 1464 of yacc.c */
2972
3108
  #line 1291 "gecode/flatzinc/parser.yxx"
2973
3109
  { (yyval.setValueList) = new vector<AST::SetLit>(1); (*(yyval.setValueList))[0] = *(yyvsp[(1) - (1)].setLit); delete (yyvsp[(1) - (1)].setLit); ;}
2974
3110
  break;
2975
3111
 
2976
3112
  case 119:
3113
+
3114
+ /* Line 1464 of yacc.c */
2977
3115
  #line 1293 "gecode/flatzinc/parser.yxx"
2978
3116
  { (yyval.setValueList) = (yyvsp[(1) - (3)].setValueList); (yyval.setValueList)->push_back(*(yyvsp[(3) - (3)].setLit)); delete (yyvsp[(3) - (3)].setLit); ;}
2979
3117
  break;
2980
3118
 
2981
3119
  case 120:
3120
+
3121
+ /* Line 1464 of yacc.c */
2982
3122
  #line 1301 "gecode/flatzinc/parser.yxx"
2983
3123
  { (yyval.argVec) = new AST::Array((yyvsp[(1) - (1)].arg)); ;}
2984
3124
  break;
2985
3125
 
2986
3126
  case 121:
3127
+
3128
+ /* Line 1464 of yacc.c */
2987
3129
  #line 1303 "gecode/flatzinc/parser.yxx"
2988
3130
  { (yyval.argVec) = (yyvsp[(1) - (3)].argVec); (yyval.argVec)->append((yyvsp[(3) - (3)].arg)); ;}
2989
3131
  break;
2990
3132
 
2991
3133
  case 122:
3134
+
3135
+ /* Line 1464 of yacc.c */
2992
3136
  #line 1307 "gecode/flatzinc/parser.yxx"
2993
3137
  { (yyval.arg) = (yyvsp[(1) - (1)].arg); ;}
2994
3138
  break;
2995
3139
 
2996
3140
  case 123:
3141
+
3142
+ /* Line 1464 of yacc.c */
2997
3143
  #line 1309 "gecode/flatzinc/parser.yxx"
2998
3144
  { (yyval.arg) = (yyvsp[(2) - (3)].argVec); ;}
2999
3145
  break;
3000
3146
 
3001
3147
  case 124:
3148
+
3149
+ /* Line 1464 of yacc.c */
3002
3150
  #line 1313 "gecode/flatzinc/parser.yxx"
3003
3151
  { (yyval.oArg) = Option<AST::Node*>::none(); ;}
3004
3152
  break;
3005
3153
 
3006
3154
  case 125:
3155
+
3156
+ /* Line 1464 of yacc.c */
3007
3157
  #line 1315 "gecode/flatzinc/parser.yxx"
3008
3158
  { (yyval.oArg) = Option<AST::Node*>::some((yyvsp[(2) - (2)].arg)); ;}
3009
3159
  break;
3010
3160
 
3011
3161
  case 126:
3162
+
3163
+ /* Line 1464 of yacc.c */
3012
3164
  #line 1319 "gecode/flatzinc/parser.yxx"
3013
3165
  { (yyval.arg) = new AST::BoolLit((yyvsp[(1) - (1)].iValue)); ;}
3014
3166
  break;
3015
3167
 
3016
3168
  case 127:
3169
+
3170
+ /* Line 1464 of yacc.c */
3017
3171
  #line 1321 "gecode/flatzinc/parser.yxx"
3018
3172
  { (yyval.arg) = new AST::IntLit((yyvsp[(1) - (1)].iValue)); ;}
3019
3173
  break;
3020
3174
 
3021
3175
  case 128:
3176
+
3177
+ /* Line 1464 of yacc.c */
3022
3178
  #line 1323 "gecode/flatzinc/parser.yxx"
3023
3179
  { (yyval.arg) = new AST::FloatLit((yyvsp[(1) - (1)].dValue)); ;}
3024
3180
  break;
3025
3181
 
3026
3182
  case 129:
3183
+
3184
+ /* Line 1464 of yacc.c */
3027
3185
  #line 1325 "gecode/flatzinc/parser.yxx"
3028
3186
  { (yyval.arg) = (yyvsp[(1) - (1)].setLit); ;}
3029
3187
  break;
3030
3188
 
3031
3189
  case 130:
3190
+
3191
+ /* Line 1464 of yacc.c */
3032
3192
  #line 1327 "gecode/flatzinc/parser.yxx"
3033
3193
  {
3034
3194
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -3108,6 +3268,8 @@ yyreduce:
3108
3268
  break;
3109
3269
 
3110
3270
  case 131:
3271
+
3272
+ /* Line 1464 of yacc.c */
3111
3273
  #line 1403 "gecode/flatzinc/parser.yxx"
3112
3274
  {
3113
3275
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -3122,26 +3284,36 @@ yyreduce:
3122
3284
  break;
3123
3285
 
3124
3286
  case 132:
3287
+
3288
+ /* Line 1464 of yacc.c */
3125
3289
  #line 1416 "gecode/flatzinc/parser.yxx"
3126
3290
  { (yyval.argVec) = new AST::Array(0); ;}
3127
3291
  break;
3128
3292
 
3129
3293
  case 133:
3294
+
3295
+ /* Line 1464 of yacc.c */
3130
3296
  #line 1418 "gecode/flatzinc/parser.yxx"
3131
3297
  { (yyval.argVec) = (yyvsp[(1) - (2)].argVec); ;}
3132
3298
  break;
3133
3299
 
3134
3300
  case 134:
3301
+
3302
+ /* Line 1464 of yacc.c */
3135
3303
  #line 1422 "gecode/flatzinc/parser.yxx"
3136
3304
  { (yyval.argVec) = new AST::Array((yyvsp[(1) - (1)].arg)); ;}
3137
3305
  break;
3138
3306
 
3139
3307
  case 135:
3308
+
3309
+ /* Line 1464 of yacc.c */
3140
3310
  #line 1424 "gecode/flatzinc/parser.yxx"
3141
3311
  { (yyval.argVec) = (yyvsp[(1) - (3)].argVec); (yyval.argVec)->append((yyvsp[(3) - (3)].arg)); ;}
3142
3312
  break;
3143
3313
 
3144
3314
  case 136:
3315
+
3316
+ /* Line 1464 of yacc.c */
3145
3317
  #line 1432 "gecode/flatzinc/parser.yxx"
3146
3318
  {
3147
3319
  ParserState *pp = static_cast<ParserState*>(parm);
@@ -3159,6 +3331,8 @@ yyreduce:
3159
3331
  break;
3160
3332
 
3161
3333
  case 137:
3334
+
3335
+ /* Line 1464 of yacc.c */
3162
3336
  #line 1446 "gecode/flatzinc/parser.yxx"
3163
3337
  {
3164
3338
  SymbolEntry e;
@@ -3182,26 +3356,36 @@ yyreduce:
3182
3356
  break;
3183
3357
 
3184
3358
  case 140:
3359
+
3360
+ /* Line 1464 of yacc.c */
3185
3361
  #line 1476 "gecode/flatzinc/parser.yxx"
3186
3362
  { (yyval.argVec) = NULL; ;}
3187
3363
  break;
3188
3364
 
3189
3365
  case 141:
3366
+
3367
+ /* Line 1464 of yacc.c */
3190
3368
  #line 1478 "gecode/flatzinc/parser.yxx"
3191
3369
  { (yyval.argVec) = (yyvsp[(1) - (1)].argVec); ;}
3192
3370
  break;
3193
3371
 
3194
3372
  case 142:
3373
+
3374
+ /* Line 1464 of yacc.c */
3195
3375
  #line 1482 "gecode/flatzinc/parser.yxx"
3196
3376
  { (yyval.argVec) = new AST::Array((yyvsp[(2) - (2)].arg)); ;}
3197
3377
  break;
3198
3378
 
3199
3379
  case 143:
3380
+
3381
+ /* Line 1464 of yacc.c */
3200
3382
  #line 1484 "gecode/flatzinc/parser.yxx"
3201
3383
  { (yyval.argVec) = (yyvsp[(1) - (3)].argVec); (yyval.argVec)->append((yyvsp[(3) - (3)].arg)); ;}
3202
3384
  break;
3203
3385
 
3204
3386
  case 144:
3387
+
3388
+ /* Line 1464 of yacc.c */
3205
3389
  #line 1488 "gecode/flatzinc/parser.yxx"
3206
3390
  {
3207
3391
  (yyval.arg) = new AST::Call((yyvsp[(1) - (4)].sValue), AST::extractSingleton((yyvsp[(3) - (4)].arg))); free((yyvsp[(1) - (4)].sValue));
@@ -3209,51 +3393,71 @@ yyreduce:
3209
3393
  break;
3210
3394
 
3211
3395
  case 145:
3396
+
3397
+ /* Line 1464 of yacc.c */
3212
3398
  #line 1492 "gecode/flatzinc/parser.yxx"
3213
3399
  { (yyval.arg) = (yyvsp[(1) - (1)].arg); ;}
3214
3400
  break;
3215
3401
 
3216
3402
  case 146:
3403
+
3404
+ /* Line 1464 of yacc.c */
3217
3405
  #line 1496 "gecode/flatzinc/parser.yxx"
3218
3406
  { (yyval.arg) = new AST::Array((yyvsp[(1) - (1)].arg)); ;}
3219
3407
  break;
3220
3408
 
3221
3409
  case 147:
3410
+
3411
+ /* Line 1464 of yacc.c */
3222
3412
  #line 1498 "gecode/flatzinc/parser.yxx"
3223
3413
  { (yyval.arg) = (yyvsp[(1) - (3)].arg); (yyval.arg)->append((yyvsp[(3) - (3)].arg)); ;}
3224
3414
  break;
3225
3415
 
3226
3416
  case 148:
3417
+
3418
+ /* Line 1464 of yacc.c */
3227
3419
  #line 1502 "gecode/flatzinc/parser.yxx"
3228
3420
  { (yyval.arg) = (yyvsp[(1) - (1)].arg); ;}
3229
3421
  break;
3230
3422
 
3231
3423
  case 149:
3424
+
3425
+ /* Line 1464 of yacc.c */
3232
3426
  #line 1504 "gecode/flatzinc/parser.yxx"
3233
3427
  { (yyval.arg) = (yyvsp[(2) - (3)].arg); ;}
3234
3428
  break;
3235
3429
 
3236
3430
  case 150:
3431
+
3432
+ /* Line 1464 of yacc.c */
3237
3433
  #line 1508 "gecode/flatzinc/parser.yxx"
3238
3434
  { (yyval.arg) = new AST::BoolLit((yyvsp[(1) - (1)].iValue)); ;}
3239
3435
  break;
3240
3436
 
3241
3437
  case 151:
3438
+
3439
+ /* Line 1464 of yacc.c */
3242
3440
  #line 1510 "gecode/flatzinc/parser.yxx"
3243
3441
  { (yyval.arg) = new AST::IntLit((yyvsp[(1) - (1)].iValue)); ;}
3244
3442
  break;
3245
3443
 
3246
3444
  case 152:
3445
+
3446
+ /* Line 1464 of yacc.c */
3247
3447
  #line 1512 "gecode/flatzinc/parser.yxx"
3248
3448
  { (yyval.arg) = new AST::FloatLit((yyvsp[(1) - (1)].dValue)); ;}
3249
3449
  break;
3250
3450
 
3251
3451
  case 153:
3452
+
3453
+ /* Line 1464 of yacc.c */
3252
3454
  #line 1514 "gecode/flatzinc/parser.yxx"
3253
3455
  { (yyval.arg) = (yyvsp[(1) - (1)].setLit); ;}
3254
3456
  break;
3255
3457
 
3256
3458
  case 154:
3459
+
3460
+ /* Line 1464 of yacc.c */
3257
3461
  #line 1516 "gecode/flatzinc/parser.yxx"
3258
3462
  {
3259
3463
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -3331,6 +3535,8 @@ yyreduce:
3331
3535
  break;
3332
3536
 
3333
3537
  case 155:
3538
+
3539
+ /* Line 1464 of yacc.c */
3334
3540
  #line 1590 "gecode/flatzinc/parser.yxx"
3335
3541
  {
3336
3542
  ParserState* pp = static_cast<ParserState*>(parm);
@@ -3345,6 +3551,8 @@ yyreduce:
3345
3551
  break;
3346
3552
 
3347
3553
  case 156:
3554
+
3555
+ /* Line 1464 of yacc.c */
3348
3556
  #line 1601 "gecode/flatzinc/parser.yxx"
3349
3557
  {
3350
3558
  (yyval.arg) = new AST::String((yyvsp[(1) - (1)].sValue));
@@ -3353,8 +3561,9 @@ yyreduce:
3353
3561
  break;
3354
3562
 
3355
3563
 
3356
- /* Line 1267 of yacc.c. */
3357
- #line 3358 "gecode/flatzinc/parser.tab.cpp"
3564
+
3565
+ /* Line 1464 of yacc.c */
3566
+ #line 3567 "gecode/flatzinc/parser.tab.cpp"
3358
3567
  default: break;
3359
3568
  }
3360
3569
  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
@@ -3365,7 +3574,6 @@ yyreduce:
3365
3574
 
3366
3575
  *++yyvsp = yyval;
3367
3576
 
3368
-
3369
3577
  /* Now `shift' the result of the reduction. Determine what state
3370
3578
  that goes to, based on the state we popped back to and the rule
3371
3579
  number reduced by. */
@@ -3430,7 +3638,7 @@ yyerrlab:
3430
3638
 
3431
3639
  if (yyerrstatus == 3)
3432
3640
  {
3433
- /* If just tried and failed to reuse look-ahead token after an
3641
+ /* If just tried and failed to reuse lookahead token after an
3434
3642
  error, discard it. */
3435
3643
 
3436
3644
  if (yychar <= YYEOF)
@@ -3447,7 +3655,7 @@ yyerrlab:
3447
3655
  }
3448
3656
  }
3449
3657
 
3450
- /* Else will try to reuse look-ahead token after shifting the error
3658
+ /* Else will try to reuse lookahead token after shifting the error
3451
3659
  token. */
3452
3660
  goto yyerrlab1;
3453
3661
 
@@ -3504,9 +3712,6 @@ yyerrlab1:
3504
3712
  YY_STACK_PRINT (yyss, yyssp);
3505
3713
  }
3506
3714
 
3507
- if (yyn == YYFINAL)
3508
- YYACCEPT;
3509
-
3510
3715
  *++yyvsp = yylval;
3511
3716
 
3512
3717
 
@@ -3531,7 +3736,7 @@ yyabortlab:
3531
3736
  yyresult = 1;
3532
3737
  goto yyreturn;
3533
3738
 
3534
- #ifndef yyoverflow
3739
+ #if !defined(yyoverflow) || YYERROR_VERBOSE
3535
3740
  /*-------------------------------------------------.
3536
3741
  | yyexhaustedlab -- memory exhaustion comes here. |
3537
3742
  `-------------------------------------------------*/
@@ -3542,7 +3747,7 @@ yyexhaustedlab:
3542
3747
  #endif
3543
3748
 
3544
3749
  yyreturn:
3545
- if (yychar != YYEOF && yychar != YYEMPTY)
3750
+ if (yychar != YYEMPTY)
3546
3751
  yydestruct ("Cleanup: discarding lookahead",
3547
3752
  yytoken, &yylval, parm);
3548
3753
  /* Do not reclaim the symbols of the rule which action triggered