00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047 #define YYBISON 1
00048
00049
00050 #define YYBISON_VERSION "2.3"
00051
00052
00053 #define YYSKELETON_NAME "yacc.c"
00054
00055
00056 #define YYPURE 0
00057
00058
00059 #define YYLSP_NEEDED 0
00060
00061
00062
00063
00064 #ifndef YYTOKENTYPE
00065 # define YYTOKENTYPE
00066
00067
00068 enum yytokentype {
00069 WITH = 258,
00070 MIX = 259,
00071 SPLIT = 260,
00072 SEQ = 261,
00073 PAR = 262,
00074 REC = 263,
00075 NE = 264,
00076 GE = 265,
00077 GT = 266,
00078 EQ = 267,
00079 LE = 268,
00080 LT = 269,
00081 OR = 270,
00082 SUB = 271,
00083 ADD = 272,
00084 RSH = 273,
00085 LSH = 274,
00086 XOR = 275,
00087 AND = 276,
00088 MOD = 277,
00089 DIV = 278,
00090 MUL = 279,
00091 FDELAY = 280,
00092 DELAY1 = 281,
00093 DOT = 282,
00094 APPL = 283,
00095 MEM = 284,
00096 PREFIX = 285,
00097 INTCAST = 286,
00098 FLOATCAST = 287,
00099 FFUNCTION = 288,
00100 FCONSTANT = 289,
00101 FVARIABLE = 290,
00102 BUTTON = 291,
00103 CHECKBOX = 292,
00104 VSLIDER = 293,
00105 HSLIDER = 294,
00106 NENTRY = 295,
00107 VGROUP = 296,
00108 HGROUP = 297,
00109 TGROUP = 298,
00110 HBARGRAPH = 299,
00111 VBARGRAPH = 300,
00112 ATTACH = 301,
00113 ACOS = 302,
00114 ASIN = 303,
00115 ATAN = 304,
00116 ATAN2 = 305,
00117 COS = 306,
00118 SIN = 307,
00119 TAN = 308,
00120 EXP = 309,
00121 LOG = 310,
00122 LOG10 = 311,
00123 POW = 312,
00124 SQRT = 313,
00125 ABS = 314,
00126 MIN = 315,
00127 MAX = 316,
00128 FMOD = 317,
00129 REMAINDER = 318,
00130 FLOOR = 319,
00131 CEIL = 320,
00132 RINT = 321,
00133 RDTBL = 322,
00134 RWTBL = 323,
00135 SELECT2 = 324,
00136 SELECT3 = 325,
00137 INT = 326,
00138 FLOAT = 327,
00139 LAMBDA = 328,
00140 WIRE = 329,
00141 CUT = 330,
00142 ENDDEF = 331,
00143 VIRG = 332,
00144 LPAR = 333,
00145 RPAR = 334,
00146 LBRAQ = 335,
00147 RBRAQ = 336,
00148 DEF = 337,
00149 IMPORT = 338,
00150 COMPONENT = 339,
00151 IPAR = 340,
00152 ISEQ = 341,
00153 ISUM = 342,
00154 IPROD = 343,
00155 STRING = 344,
00156 FSTRING = 345,
00157 IDENT = 346,
00158 EXTRA = 347,
00159 DECLARE = 348,
00160 CASE = 349,
00161 ARROW = 350
00162 };
00163 #endif
00164
00165 #define WITH 258
00166 #define MIX 259
00167 #define SPLIT 260
00168 #define SEQ 261
00169 #define PAR 262
00170 #define REC 263
00171 #define NE 264
00172 #define GE 265
00173 #define GT 266
00174 #define EQ 267
00175 #define LE 268
00176 #define LT 269
00177 #define OR 270
00178 #define SUB 271
00179 #define ADD 272
00180 #define RSH 273
00181 #define LSH 274
00182 #define XOR 275
00183 #define AND 276
00184 #define MOD 277
00185 #define DIV 278
00186 #define MUL 279
00187 #define FDELAY 280
00188 #define DELAY1 281
00189 #define DOT 282
00190 #define APPL 283
00191 #define MEM 284
00192 #define PREFIX 285
00193 #define INTCAST 286
00194 #define FLOATCAST 287
00195 #define FFUNCTION 288
00196 #define FCONSTANT 289
00197 #define FVARIABLE 290
00198 #define BUTTON 291
00199 #define CHECKBOX 292
00200 #define VSLIDER 293
00201 #define HSLIDER 294
00202 #define NENTRY 295
00203 #define VGROUP 296
00204 #define HGROUP 297
00205 #define TGROUP 298
00206 #define HBARGRAPH 299
00207 #define VBARGRAPH 300
00208 #define ATTACH 301
00209 #define ACOS 302
00210 #define ASIN 303
00211 #define ATAN 304
00212 #define ATAN2 305
00213 #define COS 306
00214 #define SIN 307
00215 #define TAN 308
00216 #define EXP 309
00217 #define LOG 310
00218 #define LOG10 311
00219 #define POW 312
00220 #define SQRT 313
00221 #define ABS 314
00222 #define MIN 315
00223 #define MAX 316
00224 #define FMOD 317
00225 #define REMAINDER 318
00226 #define FLOOR 319
00227 #define CEIL 320
00228 #define RINT 321
00229 #define RDTBL 322
00230 #define RWTBL 323
00231 #define SELECT2 324
00232 #define SELECT3 325
00233 #define INT 326
00234 #define FLOAT 327
00235 #define LAMBDA 328
00236 #define WIRE 329
00237 #define CUT 330
00238 #define ENDDEF 331
00239 #define VIRG 332
00240 #define LPAR 333
00241 #define RPAR 334
00242 #define LBRAQ 335
00243 #define RBRAQ 336
00244 #define DEF 337
00245 #define IMPORT 338
00246 #define COMPONENT 339
00247 #define IPAR 340
00248 #define ISEQ 341
00249 #define ISUM 342
00250 #define IPROD 343
00251 #define STRING 344
00252 #define FSTRING 345
00253 #define IDENT 346
00254 #define EXTRA 347
00255 #define DECLARE 348
00256 #define CASE 349
00257 #define ARROW 350
00258
00259
00260
00261
00262
00263 #line 4 "parser/faustparser.y"
00264
00265
00266 #include "tree.hh"
00267 #include "xtended.hh"
00268 #include "boxes.hh"
00269 #include "prim2.hh"
00270 #include "signals.hh"
00271 #include "errormsg.hh"
00272 #include "sourcereader.hh"
00273
00274 #include <string>
00275 #include <list>
00276
00277 #define YYDEBUG 1
00278 #define YYERROR_VERBOSE 1
00279 #define YYMAXDEPTH 100000
00280
00281 extern char* yytext;
00282 extern const char* yyfilename;
00283 extern int yylineno;
00284 extern int yyerr;
00285 extern Tree gResult;
00286
00287 extern map<Tree, set<Tree> > gMetaDataSet;
00288
00289 int yylex();
00290
00291 Tree unquote(char* str)
00292 {
00293
00294 char buf[512];
00295 int j=0;
00296
00297 if (str[0] == '"') {
00298
00299 for (int i=1; j<511 && str[i];) {
00300 buf[j++] = str[i++];
00301 }
00302
00303 if (j>0) buf[j-1] = 0;
00304 } else {
00305 for (int i=0; j<511 && str[i];) {
00306 buf[j++] = str[i++];
00307 }
00308 }
00309 buf[j] = 0;
00310
00311 return tree(buf);
00312
00313 }
00314
00315
00316
00317
00318 #ifndef YYDEBUG
00319 # define YYDEBUG 0
00320 #endif
00321
00322
00323 #ifdef YYERROR_VERBOSE
00324 # undef YYERROR_VERBOSE
00325 # define YYERROR_VERBOSE 1
00326 #else
00327 # define YYERROR_VERBOSE 0
00328 #endif
00329
00330
00331 #ifndef YYTOKEN_TABLE
00332 # define YYTOKEN_TABLE 0
00333 #endif
00334
00335 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
00336 typedef union YYSTYPE
00337 #line 58 "parser/faustparser.y"
00338 {
00339 CTree* exp;
00340 }
00341
00342 #line 343 "parser/faustparser.cpp"
00343 YYSTYPE;
00344 # define yystype YYSTYPE
00345 # define YYSTYPE_IS_DECLARED 1
00346 # define YYSTYPE_IS_TRIVIAL 1
00347 #endif
00348
00349
00350
00351
00352
00353
00354
00355 #line 356 "parser/faustparser.cpp"
00356
00357 #ifdef short
00358 # undef short
00359 #endif
00360
00361 #ifdef YYTYPE_UINT8
00362 typedef YYTYPE_UINT8 yytype_uint8;
00363 #else
00364 typedef unsigned char yytype_uint8;
00365 #endif
00366
00367 #ifdef YYTYPE_INT8
00368 typedef YYTYPE_INT8 yytype_int8;
00369 #elif (defined __STDC__ || defined __C99__FUNC__ \
00370 || defined __cplusplus || defined _MSC_VER)
00371 typedef signed char yytype_int8;
00372 #else
00373 typedef short int yytype_int8;
00374 #endif
00375
00376 #ifdef YYTYPE_UINT16
00377 typedef YYTYPE_UINT16 yytype_uint16;
00378 #else
00379 typedef unsigned short int yytype_uint16;
00380 #endif
00381
00382 #ifdef YYTYPE_INT16
00383 typedef YYTYPE_INT16 yytype_int16;
00384 #else
00385 typedef short int yytype_int16;
00386 #endif
00387
00388 #ifndef YYSIZE_T
00389 # ifdef __SIZE_TYPE__
00390 # define YYSIZE_T __SIZE_TYPE__
00391 # elif defined size_t
00392 # define YYSIZE_T size_t
00393 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
00394 || defined __cplusplus || defined _MSC_VER)
00395 # include <stddef.h>
00396 # define YYSIZE_T size_t
00397 # else
00398 # define YYSIZE_T unsigned int
00399 # endif
00400 #endif
00401
00402 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
00403
00404 #ifndef YY_
00405 # if YYENABLE_NLS
00406 # if ENABLE_NLS
00407 # include <libintl.h>
00408 # define YY_(msgid) dgettext ("bison-runtime", msgid)
00409 # endif
00410 # endif
00411 # ifndef YY_
00412 # define YY_(msgid) msgid
00413 # endif
00414 #endif
00415
00416
00417 #if ! defined lint || defined __GNUC__
00418 # define YYUSE(e) ((void) (e))
00419 #else
00420 # define YYUSE(e)
00421 #endif
00422
00423
00424 #ifndef lint
00425 # define YYID(n) (n)
00426 #else
00427 #if (defined __STDC__ || defined __C99__FUNC__ \
00428 || defined __cplusplus || defined _MSC_VER)
00429 static int
00430 YYID (int i)
00431 #else
00432 static int
00433 YYID (i)
00434 int i;
00435 #endif
00436 {
00437 return i;
00438 }
00439 #endif
00440
00441 #if ! defined yyoverflow || YYERROR_VERBOSE
00442
00443
00444
00445 # ifdef YYSTACK_USE_ALLOCA
00446 # if YYSTACK_USE_ALLOCA
00447 # ifdef __GNUC__
00448 # define YYSTACK_ALLOC __builtin_alloca
00449 # elif defined __BUILTIN_VA_ARG_INCR
00450 # include <alloca.h>
00451 # elif defined _AIX
00452 # define YYSTACK_ALLOC __alloca
00453 # elif defined _MSC_VER
00454 # include <malloc.h>
00455 # define alloca _alloca
00456 # else
00457 # define YYSTACK_ALLOC alloca
00458 # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
00459 || defined __cplusplus || defined _MSC_VER)
00460 # include <stdlib.h>
00461 # ifndef _STDLIB_H
00462 # define _STDLIB_H 1
00463 # endif
00464 # endif
00465 # endif
00466 # endif
00467 # endif
00468
00469 # ifdef YYSTACK_ALLOC
00470
00471 # define YYSTACK_FREE(Ptr) do { ; } while (YYID (0))
00472 # ifndef YYSTACK_ALLOC_MAXIMUM
00473
00474
00475
00476
00477 # define YYSTACK_ALLOC_MAXIMUM 4032
00478 # endif
00479 # else
00480 # define YYSTACK_ALLOC YYMALLOC
00481 # define YYSTACK_FREE YYFREE
00482 # ifndef YYSTACK_ALLOC_MAXIMUM
00483 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
00484 # endif
00485 # if (defined __cplusplus && ! defined _STDLIB_H \
00486 && ! ((defined YYMALLOC || defined malloc) \
00487 && (defined YYFREE || defined free)))
00488 # include <stdlib.h>
00489 # ifndef _STDLIB_H
00490 # define _STDLIB_H 1
00491 # endif
00492 # endif
00493 # ifndef YYMALLOC
00494 # define YYMALLOC malloc
00495 # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
00496 || defined __cplusplus || defined _MSC_VER)
00497 void *malloc (YYSIZE_T);
00498 # endif
00499 # endif
00500 # ifndef YYFREE
00501 # define YYFREE free
00502 # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
00503 || defined __cplusplus || defined _MSC_VER)
00504 void free (void *);
00505 # endif
00506 # endif
00507 # endif
00508 #endif
00509
00510
00511 #if (! defined yyoverflow \
00512 && (! defined __cplusplus \
00513 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
00514
00515
00516 union yyalloc
00517 {
00518 yytype_int16 yyss;
00519 YYSTYPE yyvs;
00520 };
00521
00522
00523 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
00524
00525
00526
00527 # define YYSTACK_BYTES(N) \
00528 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
00529 + YYSTACK_GAP_MAXIMUM)
00530
00531
00532
00533 # ifndef YYCOPY
00534 # if defined __GNUC__ && 1 < __GNUC__
00535 # define YYCOPY(To, From, Count) \
00536 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
00537 # else
00538 # define YYCOPY(To, From, Count) \
00539 do \
00540 { \
00541 YYSIZE_T yyi; \
00542 for (yyi = 0; yyi < (Count); yyi++) \
00543 (To)[yyi] = (From)[yyi]; \
00544 } \
00545 while (YYID (0))
00546 # endif
00547 # endif
00548
00549
00550
00551
00552
00553
00554 # define YYSTACK_RELOCATE(Stack) \
00555 do \
00556 { \
00557 YYSIZE_T yynewbytes; \
00558 YYCOPY (&yyptr->Stack, Stack, yysize); \
00559 Stack = &yyptr->Stack; \
00560 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
00561 yyptr += yynewbytes / sizeof (*yyptr); \
00562 } \
00563 while (YYID (0))
00564
00565 #endif
00566
00567
00568 #define YYFINAL 3
00569
00570 #define YYLAST 525
00571
00572
00573 #define YYNTOKENS 96
00574
00575 #define YYNNTS 39
00576
00577 #define YYNRULES 157
00578
00579 #define YYNSTATES 348
00580
00581
00582 #define YYUNDEFTOK 2
00583 #define YYMAXUTOK 350
00584
00585 #define YYTRANSLATE(YYX) \
00586 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
00587
00588
00589 static const yytype_uint8 yytranslate[] =
00590 {
00591 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00592 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00593 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00594 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00595 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00596 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00597 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00598 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00599 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00600 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00601 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00602 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00603 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00604 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00605 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00606 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00607 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00608 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00609 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00610 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00611 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00612 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00613 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00614 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00615 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00616 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
00617 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
00618 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
00619 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
00620 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
00621 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
00622 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
00623 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
00624 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
00625 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
00626 95
00627 };
00628
00629 #if YYDEBUG
00630
00631
00632 static const yytype_uint16 yyprhs[] =
00633 {
00634 0, 0, 3, 5, 6, 9, 17, 22, 28, 33,
00635 36, 38, 40, 44, 50, 54, 58, 62, 66, 70,
00636 72, 76, 80, 84, 88, 92, 96, 99, 103, 107,
00637 111, 115, 119, 123, 127, 131, 135, 139, 143, 147,
00638 152, 154, 156, 158, 161, 164, 167, 170, 172, 174,
00639 176, 178, 180, 182, 184, 186, 188, 190, 192, 194,
00640 196, 198, 200, 202, 204, 206, 208, 210, 212, 214,
00641 216, 218, 220, 222, 224, 226, 228, 230, 232, 234,
00642 236, 238, 240, 242, 244, 246, 248, 250, 252, 254,
00643 256, 258, 260, 262, 264, 266, 268, 271, 275, 284,
00644 289, 291, 293, 295, 300, 302, 304, 306, 308, 310,
00645 312, 314, 316, 318, 320, 322, 324, 326, 328, 330,
00646 332, 334, 338, 342, 346, 350, 354, 356, 358, 360,
00647 362, 364, 373, 382, 391, 400, 409, 417, 425, 430,
00648 435, 448, 461, 474, 481, 488, 495, 504, 513, 519,
00649 524, 526, 528, 532, 534, 537, 544, 546
00650 };
00651
00652
00653 static const yytype_int16 yyrhs[] =
00654 {
00655 97, 0, -1, 98, -1, -1, 98, 99, -1, 100,
00656 78, 107, 79, 82, 102, 76, -1, 100, 82, 102,
00657 76, -1, 83, 78, 110, 79, 76, -1, 93, 106,
00658 109, 76, -1, 1, 76, -1, 105, -1, 105, -1,
00659 101, 7, 105, -1, 102, 3, 80, 98, 81, -1,
00660 102, 7, 102, -1, 102, 6, 102, -1, 102, 5,
00661 102, -1, 102, 4, 102, -1, 102, 8, 102, -1,
00662 103, -1, 103, 17, 103, -1, 103, 16, 103, -1,
00663 103, 24, 103, -1, 103, 23, 103, -1, 103, 22,
00664 103, -1, 103, 25, 103, -1, 103, 26, -1, 103,
00665 27, 105, -1, 103, 21, 103, -1, 103, 15, 103,
00666 -1, 103, 20, 103, -1, 103, 19, 103, -1, 103,
00667 18, 103, -1, 103, 14, 103, -1, 103, 13, 103,
00668 -1, 103, 11, 103, -1, 103, 10, 103, -1, 103,
00669 12, 103, -1, 103, 9, 103, -1, 103, 78, 107,
00670 79, -1, 104, -1, 71, -1, 72, -1, 17, 71,
00671 -1, 17, 72, -1, 16, 71, -1, 16, 72, -1,
00672 74, -1, 75, -1, 29, -1, 30, -1, 31, -1,
00673 32, -1, 17, -1, 16, -1, 24, -1, 23, -1,
00674 22, -1, 25, -1, 21, -1, 15, -1, 20, -1,
00675 19, -1, 18, -1, 14, -1, 13, -1, 11, -1,
00676 10, -1, 12, -1, 9, -1, 46, -1, 47, -1,
00677 48, -1, 49, -1, 50, -1, 51, -1, 52, -1,
00678 53, -1, 54, -1, 55, -1, 56, -1, 57, -1,
00679 58, -1, 59, -1, 60, -1, 61, -1, 62, -1,
00680 63, -1, 64, -1, 65, -1, 66, -1, 67, -1,
00681 68, -1, 69, -1, 70, -1, 105, -1, 16, 105,
00682 -1, 78, 102, 79, -1, 73, 78, 101, 79, 27,
00683 78, 102, 79, -1, 94, 80, 132, 81, -1, 116,
00684 -1, 117, -1, 118, -1, 84, 78, 110, 79, -1,
00685 119, -1, 120, -1, 121, -1, 122, -1, 123, -1,
00686 124, -1, 125, -1, 126, -1, 127, -1, 128, -1,
00687 112, -1, 113, -1, 114, -1, 115, -1, 91, -1,
00688 91, -1, 108, -1, 107, 7, 108, -1, 108, 6,
00689 108, -1, 108, 5, 108, -1, 108, 4, 108, -1,
00690 108, 8, 108, -1, 103, -1, 89, -1, 89, -1,
00691 89, -1, 90, -1, 85, 78, 105, 7, 108, 7,
00692 102, 79, -1, 86, 78, 105, 7, 108, 7, 102,
00693 79, -1, 87, 78, 105, 7, 108, 7, 102, 79,
00694 -1, 88, 78, 105, 7, 108, 7, 102, 79, -1,
00695 33, 78, 129, 7, 111, 7, 109, 79, -1, 34,
00696 78, 134, 106, 7, 111, 79, -1, 35, 78, 134,
00697 106, 7, 111, 79, -1, 36, 78, 109, 79, -1,
00698 37, 78, 109, 79, -1, 38, 78, 109, 7, 108,
00699 7, 108, 7, 108, 7, 108, 79, -1, 39, 78,
00700 109, 7, 108, 7, 108, 7, 108, 7, 108, 79,
00701 -1, 40, 78, 109, 7, 108, 7, 108, 7, 108,
00702 7, 108, 79, -1, 41, 78, 109, 7, 102, 79,
00703 -1, 42, 78, 109, 7, 102, 79, -1, 43, 78,
00704 109, 7, 102, 79, -1, 45, 78, 109, 7, 108,
00705 7, 108, 79, -1, 44, 78, 109, 7, 108, 7,
00706 108, 79, -1, 134, 130, 78, 131, 79, -1, 134,
00707 130, 78, 79, -1, 91, -1, 134, -1, 131, 7,
00708 134, -1, 133, -1, 132, 133, -1, 78, 107, 79,
00709 95, 102, 76, -1, 31, -1, 32, -1
00710 };
00711
00712
00713 static const yytype_uint16 yyrline[] =
00714 {
00715 0, 236, 236, 239, 240, 246, 247, 248, 249, 250,
00716 253, 256, 257, 260, 261, 262, 263, 264, 265, 266,
00717 269, 270, 271, 272, 273, 274, 275, 276, 278, 279,
00718 280, 282, 283, 285, 286, 287, 288, 289, 290, 292,
00719 294, 297, 298, 300, 301, 303, 304, 306, 307, 309,
00720 310, 312, 313, 315, 316, 317, 318, 319, 320, 322,
00721 323, 324, 326, 327, 329, 330, 331, 332, 333, 334,
00722 336, 338, 339, 340, 341, 342, 343, 344, 346, 347,
00723 348, 349, 350, 352, 353, 354, 356, 357, 359, 360,
00724 361, 364, 365, 367, 368, 370, 371, 373, 374, 377,
00725 379, 380, 381, 382, 384, 385, 386, 387, 388, 389,
00726 390, 391, 392, 393, 395, 396, 397, 398, 402, 405,
00727 410, 411, 414, 415, 416, 417, 418, 421, 424, 427,
00728 428, 433, 437, 441, 445, 452, 456, 459, 464, 467,
00729 470, 473, 476, 479, 482, 485, 489, 492, 497, 498,
00730 501, 504, 505, 508, 509, 512, 516, 517
00731 };
00732 #endif
00733
00734 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
00735
00736
00737 static const char *const yytname[] =
00738 {
00739 "$end", "error", "$undefined", "WITH", "MIX", "SPLIT", "SEQ", "PAR",
00740 "REC", "NE", "GE", "GT", "EQ", "LE", "LT", "OR", "SUB", "ADD", "RSH",
00741 "LSH", "XOR", "AND", "MOD", "DIV", "MUL", "FDELAY", "DELAY1", "DOT",
00742 "APPL", "MEM", "PREFIX", "INTCAST", "FLOATCAST", "FFUNCTION",
00743 "FCONSTANT", "FVARIABLE", "BUTTON", "CHECKBOX", "VSLIDER", "HSLIDER",
00744 "NENTRY", "VGROUP", "HGROUP", "TGROUP", "HBARGRAPH", "VBARGRAPH",
00745 "ATTACH", "ACOS", "ASIN", "ATAN", "ATAN2", "COS", "SIN", "TAN", "EXP",
00746 "LOG", "LOG10", "POW", "SQRT", "ABS", "MIN", "MAX", "FMOD", "REMAINDER",
00747 "FLOOR", "CEIL", "RINT", "RDTBL", "RWTBL", "SELECT2", "SELECT3", "INT",
00748 "FLOAT", "LAMBDA", "WIRE", "CUT", "ENDDEF", "VIRG", "LPAR", "RPAR",
00749 "LBRAQ", "RBRAQ", "DEF", "IMPORT", "COMPONENT", "IPAR", "ISEQ", "ISUM",
00750 "IPROD", "STRING", "FSTRING", "IDENT", "EXTRA", "DECLARE", "CASE",
00751 "ARROW", "$accept", "program", "eqlist", "equation", "eqname", "params",
00752 "diagram", "expression", "primitive", "ident", "name", "arglist",
00753 "argument", "string", "uqstring", "fstring", "fpar", "fseq", "fsum",
00754 "fprod", "ffunction", "fconst", "fvariable", "button", "checkbox",
00755 "vslider", "hslider", "nentry", "vgroup", "hgroup", "tgroup",
00756 "vbargraph", "hbargraph", "signature", "fun", "typelist", "rulelist",
00757 "rule", "type", 0
00758 };
00759 #endif
00760
00761 # ifdef YYPRINT
00762
00763
00764 static const yytype_uint16 yytoknum[] =
00765 {
00766 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
00767 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
00768 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
00769 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
00770 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
00771 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
00772 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
00773 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
00774 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
00775 345, 346, 347, 348, 349, 350
00776 };
00777 # endif
00778
00779
00780 static const yytype_uint8 yyr1[] =
00781 {
00782 0, 96, 97, 98, 98, 99, 99, 99, 99, 99,
00783 100, 101, 101, 102, 102, 102, 102, 102, 102, 102,
00784 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
00785 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
00786 103, 104, 104, 104, 104, 104, 104, 104, 104, 104,
00787 104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
00788 104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
00789 104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
00790 104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
00791 104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
00792 104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
00793 104, 104, 104, 104, 104, 104, 104, 104, 105, 106,
00794 107, 107, 108, 108, 108, 108, 108, 109, 110, 111,
00795 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
00796 121, 122, 123, 124, 125, 126, 127, 128, 129, 129,
00797 130, 131, 131, 132, 132, 133, 134, 134
00798 };
00799
00800
00801 static const yytype_uint8 yyr2[] =
00802 {
00803 0, 2, 1, 0, 2, 7, 4, 5, 4, 2,
00804 1, 1, 3, 5, 3, 3, 3, 3, 3, 1,
00805 3, 3, 3, 3, 3, 3, 2, 3, 3, 3,
00806 3, 3, 3, 3, 3, 3, 3, 3, 3, 4,
00807 1, 1, 1, 2, 2, 2, 2, 1, 1, 1,
00808 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00809 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00810 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00811 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00812 1, 1, 1, 1, 1, 1, 2, 3, 8, 4,
00813 1, 1, 1, 4, 1, 1, 1, 1, 1, 1,
00814 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00815 1, 3, 3, 3, 3, 3, 1, 1, 1, 1,
00816 1, 8, 8, 8, 8, 8, 7, 7, 4, 4,
00817 12, 12, 12, 6, 6, 6, 8, 8, 5, 4,
00818 1, 1, 3, 1, 2, 6, 1, 1
00819 };
00820
00821
00822
00823
00824 static const yytype_uint8 yydefact[] =
00825 {
00826 3, 0, 0, 1, 0, 0, 118, 0, 4, 0,
00827 10, 9, 0, 119, 0, 0, 0, 128, 0, 127,
00828 0, 69, 67, 66, 68, 65, 64, 60, 54, 53,
00829 63, 62, 61, 59, 57, 56, 55, 58, 49, 50,
00830 51, 52, 0, 0, 0, 0, 0, 0, 0, 0,
00831 0, 0, 0, 0, 0, 70, 71, 72, 73, 74,
00832 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
00833 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
00834 41, 42, 0, 47, 48, 0, 0, 0, 0, 0,
00835 0, 0, 126, 40, 95, 0, 120, 114, 115, 116,
00836 117, 100, 101, 102, 104, 105, 106, 107, 108, 109,
00837 110, 111, 112, 113, 0, 19, 0, 8, 45, 46,
00838 96, 43, 44, 0, 0, 0, 0, 0, 0, 0,
00839 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00840 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00841 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00842 0, 26, 0, 0, 0, 0, 0, 0, 0, 0,
00843 0, 0, 0, 0, 0, 0, 6, 7, 156, 157,
00844 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00845 0, 0, 0, 0, 0, 11, 97, 0, 0, 0,
00846 0, 0, 0, 0, 153, 38, 36, 35, 37, 34,
00847 33, 29, 21, 20, 32, 31, 30, 28, 24, 23,
00848 22, 25, 27, 0, 121, 0, 124, 123, 122, 125,
00849 3, 17, 16, 15, 14, 18, 0, 150, 0, 0,
00850 0, 138, 139, 0, 0, 0, 0, 0, 0, 0,
00851 0, 0, 0, 103, 0, 0, 0, 0, 0, 99,
00852 154, 39, 0, 0, 129, 130, 0, 0, 0, 0,
00853 0, 0, 0, 0, 0, 0, 0, 0, 12, 0,
00854 0, 0, 0, 0, 0, 5, 13, 0, 149, 0,
00855 151, 0, 0, 0, 0, 0, 143, 144, 145, 0,
00856 0, 0, 0, 0, 0, 0, 0, 0, 0, 148,
00857 136, 137, 0, 0, 0, 0, 0, 0, 0, 0,
00858 0, 0, 0, 135, 152, 0, 0, 0, 147, 146,
00859 98, 131, 132, 133, 134, 155, 0, 0, 0, 0,
00860 0, 0, 0, 0, 0, 140, 141, 142
00861 };
00862
00863
00864 static const yytype_int16 yydefgoto[] =
00865 {
00866 -1, 1, 2, 8, 9, 194, 114, 92, 93, 94,
00867 14, 95, 96, 20, 18, 266, 97, 98, 99, 100,
00868 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
00869 111, 112, 113, 180, 238, 289, 203, 204, 181
00870 };
00871
00872
00873
00874 #define YYPACT_NINF -121
00875 static const yytype_int16 yypact[] =
00876 {
00877 -121, 34, 7, -121, 10, 25, -121, -3, -121, 88,
00878 -121, -121, 21, -121, 83, 282, 282, -121, 48, -121,
00879 106, -121, -121, -121, -121, -121, -121, -121, 146, 82,
00880 -121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
00881 -121, -121, 109, 115, 138, 143, 160, 170, 178, 184,
00882 185, 186, 190, 191, 192, -121, -121, -121, -121, -121,
00883 -121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
00884 -121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
00885 -121, -121, 193, -121, -121, 282, 197, 198, 199, 204,
00886 206, 111, 397, -121, -121, -6, 253, -121, -121, -121,
00887 -121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
00888 -121, -121, -121, -121, 207, 397, 202, -121, -121, -121,
00889 -121, -121, -121, 36, 36, 36, 83, 83, 83, 83,
00890 83, 83, 83, 83, 83, 83, 33, 23, 21, 33,
00891 33, 33, 33, 230, 282, 282, 282, 282, 282, 282,
00892 282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
00893 282, -121, 33, 282, 282, 167, 282, 282, 282, 282,
00894 229, 282, 282, 282, 282, 282, -121, -121, -121, -121,
00895 266, 219, -3, -3, 279, 280, 364, 365, 367, 368,
00896 398, 428, 443, 444, -5, -121, -121, 285, 445, 447,
00897 448, 449, 282, 44, -121, 422, 422, 422, 422, 422,
00898 422, 38, 38, 38, 45, 45, 45, 45, 45, 45,
00899 45, 6, -121, -4, 253, 282, 79, 79, 378, -121,
00900 -121, 16, 16, 173, 383, -121, 130, -121, 381, 450,
00901 453, -121, -121, 282, 282, 282, 282, 282, 282, 282,
00902 282, 33, 434, -121, 282, 282, 282, 282, 3, -121,
00903 -121, -121, 390, 8, -121, -121, 455, 4, 130, 130,
00904 200, 237, 247, 35, 41, 47, 421, 426, -121, 386,
00905 463, 472, 477, 482, 370, -121, -121, 83, -121, 18,
00906 -121, 394, 395, 282, 282, 282, -121, -121, -121, 282,
00907 282, 282, 282, 282, 282, 282, 282, 417, 36, -121,
00908 -121, -121, 487, 497, 502, 107, 113, 73, 157, 171,
00909 195, 374, 396, -121, -121, 282, 282, 282, -121, -121,
00910 -121, -121, -121, -121, -121, -121, 507, 512, 517, 282,
00911 282, 282, 357, 379, 384, -121, -121, -121
00912 };
00913
00914
00915 static const yytype_int16 yypgoto[] =
00916 {
00917 -121, -121, 267, -121, -121, -121, -79, -16, -121, 9,
00918 46, -97, -60, -114, 360, -22, -121, -121, -121, -121,
00919 -121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
00920 -121, -121, -121, -121, -121, -121, -121, 296, -120
00921 };
00922
00923
00924
00925
00926
00927 #define YYTABLE_NINF -3
00928 static const yytype_int16 yytable[] =
00929 {
00930 115, 164, 251, 164, 182, 183, 137, -2, 4, 4,
00931 164, 10, 184, 185, 186, 187, 188, 189, 190, 191,
00932 192, 193, 173, 174, 175, 308, 170, 171, 172, 173,
00933 174, 175, 161, 162, 3, 178, 179, 120, 170, 171,
00934 172, 173, 174, 175, 170, 171, 172, 173, 174, 175,
00935 170, 171, 172, 173, 174, 175, 153, 154, 155, 156,
00936 157, 158, 159, 160, 161, 162, 223, 178, 179, 115,
00937 160, 161, 162, 165, 252, 261, 170, 171, 172, 173,
00938 174, 175, 284, 288, 163, 168, 11, 169, 13, 286,
00939 5, 5, 231, 232, 233, 234, 235, 309, 6, 6,
00940 7, 7, 196, 12, 224, 258, 226, 227, 228, 229,
00941 17, 166, 167, 168, 296, 169, 163, 166, 167, 168,
00942 297, 169, 202, 163, 6, 259, 298, 116, 205, 206,
00943 207, 208, 209, 210, 211, 212, 213, 214, 215, 216,
00944 217, 218, 219, 220, 221, 195, 262, 290, 198, 199,
00945 200, 201, 330, 121, 122, 115, 115, 115, 115, 115,
00946 170, 171, 172, 173, 174, 175, 15, 273, 274, 275,
00947 16, 222, 19, 307, 170, 171, 172, 173, 174, 175,
00948 174, 175, 117, 270, 271, 272, 328, 123, 324, 276,
00949 277, 143, 329, 124, 280, 281, 282, 283, 170, 171,
00950 172, 173, 174, 175, 166, 167, 168, 293, 169, 115,
00951 170, 171, 172, 173, 174, 175, 125, 118, 119, 264,
00952 265, 126, 317, 318, 319, 320, 321, 322, 239, 240,
00953 115, 115, 115, 312, 313, 314, 331, 6, 127, 315,
00954 316, 166, 167, 168, 294, 169, 291, 292, 128, 225,
00955 332, 166, 167, 168, 295, 169, 129, 166, 167, 168,
00956 278, 169, 130, 131, 132, 336, 337, 338, 133, 134,
00957 135, 136, 10, 236, 333, 138, 139, 140, 177, 342,
00958 343, 344, 141, 176, 142, 115, 115, 115, 115, 115,
00959 115, 21, 22, 23, 24, 25, 26, 27, 28, 29,
00960 30, 31, 32, 33, 34, 35, 36, 37, 202, 230,
00961 237, 38, 39, 40, 41, 42, 43, 44, 45, 46,
00962 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
00963 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
00964 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
00965 77, 78, 79, 80, 81, 82, 83, 84, 241, 242,
00966 85, 166, 167, 168, 253, 169, 86, 87, 88, 89,
00967 90, 243, 244, 6, 245, 246, 91, 170, 171, 172,
00968 173, 174, 175, 166, 167, 168, 169, 169, 166, 167,
00969 168, 175, 169, 170, 171, 172, 173, 174, 175, 170,
00970 171, 172, 173, 174, 175, 247, 144, 145, 146, 147,
00971 148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
00972 158, 159, 160, 161, 162, 166, 167, 168, 299, 169,
00973 166, 167, 168, 300, 169, 248, 345, 150, 151, 152,
00974 153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
00975 249, 250, 254, 334, 255, 256, 257, 268, 346, 267,
00976 269, 279, 287, 347, 301, 306, 285, 166, 167, 168,
00977 302, 169, 335, 310, 311, 163, 166, 167, 168, 303,
00978 169, 166, 167, 168, 304, 169, 166, 167, 168, 305,
00979 169, 166, 167, 168, 325, 169, 323, 263, 197, 260,
00980 163, 166, 167, 168, 326, 169, 166, 167, 168, 327,
00981 169, 166, 167, 168, 339, 169, 166, 167, 168, 340,
00982 169, 166, 167, 168, 341, 169
00983 };
00984
00985 static const yytype_uint16 yycheck[] =
00986 {
00987 16, 7, 7, 7, 124, 125, 85, 0, 1, 1,
00988 7, 2, 126, 127, 128, 129, 130, 131, 132, 133,
00989 134, 135, 6, 7, 8, 7, 3, 4, 5, 6,
00990 7, 8, 26, 27, 0, 31, 32, 28, 3, 4,
00991 5, 6, 7, 8, 3, 4, 5, 6, 7, 8,
00992 3, 4, 5, 6, 7, 8, 18, 19, 20, 21,
00993 22, 23, 24, 25, 26, 27, 163, 31, 32, 85,
00994 25, 26, 27, 79, 79, 79, 3, 4, 5, 6,
00995 7, 8, 79, 79, 78, 6, 76, 8, 91, 81,
00996 83, 83, 171, 172, 173, 174, 175, 79, 91, 91,
00997 93, 93, 79, 78, 164, 202, 166, 167, 168, 169,
00998 89, 4, 5, 6, 79, 8, 78, 4, 5, 6,
00999 79, 8, 78, 78, 91, 81, 79, 79, 144, 145,
01000 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
01001 156, 157, 158, 159, 160, 136, 225, 267, 139, 140,
01002 141, 142, 79, 71, 72, 171, 172, 173, 174, 175,
01003 3, 4, 5, 6, 7, 8, 78, 246, 247, 248,
01004 82, 162, 89, 287, 3, 4, 5, 6, 7, 8,
01005 7, 8, 76, 243, 244, 245, 79, 78, 308, 249,
01006 250, 80, 79, 78, 254, 255, 256, 257, 3, 4,
01007 5, 6, 7, 8, 4, 5, 6, 7, 8, 225,
01008 3, 4, 5, 6, 7, 8, 78, 71, 72, 89,
01009 90, 78, 301, 302, 303, 304, 305, 306, 182, 183,
01010 246, 247, 248, 293, 294, 295, 79, 91, 78, 299,
01011 300, 4, 5, 6, 7, 8, 268, 269, 78, 82,
01012 79, 4, 5, 6, 7, 8, 78, 4, 5, 6,
01013 251, 8, 78, 78, 78, 325, 326, 327, 78, 78,
01014 78, 78, 263, 7, 79, 78, 78, 78, 76, 339,
01015 340, 341, 78, 76, 78, 301, 302, 303, 304, 305,
01016 306, 9, 10, 11, 12, 13, 14, 15, 16, 17,
01017 18, 19, 20, 21, 22, 23, 24, 25, 78, 80,
01018 91, 29, 30, 31, 32, 33, 34, 35, 36, 37,
01019 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
01020 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
01021 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
01022 68, 69, 70, 71, 72, 73, 74, 75, 79, 79,
01023 78, 4, 5, 6, 79, 8, 84, 85, 86, 87,
01024 88, 7, 7, 91, 7, 7, 94, 3, 4, 5,
01025 6, 7, 8, 4, 5, 6, 8, 8, 4, 5,
01026 6, 8, 8, 3, 4, 5, 6, 7, 8, 3,
01027 4, 5, 6, 7, 8, 7, 9, 10, 11, 12,
01028 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
01029 23, 24, 25, 26, 27, 4, 5, 6, 7, 8,
01030 4, 5, 6, 7, 8, 7, 79, 15, 16, 17,
01031 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
01032 7, 7, 7, 79, 7, 7, 7, 7, 79, 78,
01033 7, 27, 7, 79, 78, 95, 76, 4, 5, 6,
01034 7, 8, 76, 79, 79, 78, 4, 5, 6, 7,
01035 8, 4, 5, 6, 7, 8, 4, 5, 6, 7,
01036 8, 4, 5, 6, 7, 8, 79, 230, 138, 203,
01037 78, 4, 5, 6, 7, 8, 4, 5, 6, 7,
01038 8, 4, 5, 6, 7, 8, 4, 5, 6, 7,
01039 8, 4, 5, 6, 7, 8
01040 };
01041
01042
01043
01044 static const yytype_uint8 yystos[] =
01045 {
01046 0, 97, 98, 0, 1, 83, 91, 93, 99, 100,
01047 105, 76, 78, 91, 106, 78, 82, 89, 110, 89,
01048 109, 9, 10, 11, 12, 13, 14, 15, 16, 17,
01049 18, 19, 20, 21, 22, 23, 24, 25, 29, 30,
01050 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
01051 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
01052 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
01053 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
01054 71, 72, 73, 74, 75, 78, 84, 85, 86, 87,
01055 88, 94, 103, 104, 105, 107, 108, 112, 113, 114,
01056 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
01057 125, 126, 127, 128, 102, 103, 79, 76, 71, 72,
01058 105, 71, 72, 78, 78, 78, 78, 78, 78, 78,
01059 78, 78, 78, 78, 78, 78, 78, 102, 78, 78,
01060 78, 78, 78, 80, 9, 10, 11, 12, 13, 14,
01061 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
01062 25, 26, 27, 78, 7, 79, 4, 5, 6, 8,
01063 3, 4, 5, 6, 7, 8, 76, 76, 31, 32,
01064 129, 134, 134, 134, 109, 109, 109, 109, 109, 109,
01065 109, 109, 109, 109, 101, 105, 79, 110, 105, 105,
01066 105, 105, 78, 132, 133, 103, 103, 103, 103, 103,
01067 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
01068 103, 103, 105, 107, 108, 82, 108, 108, 108, 108,
01069 80, 102, 102, 102, 102, 102, 7, 91, 130, 106,
01070 106, 79, 79, 7, 7, 7, 7, 7, 7, 7,
01071 7, 7, 79, 79, 7, 7, 7, 7, 107, 81,
01072 133, 79, 102, 98, 89, 90, 111, 78, 7, 7,
01073 108, 108, 108, 102, 102, 102, 108, 108, 105, 27,
01074 108, 108, 108, 108, 79, 76, 81, 7, 79, 131,
01075 134, 111, 111, 7, 7, 7, 79, 79, 79, 7,
01076 7, 78, 7, 7, 7, 7, 95, 109, 7, 79,
01077 79, 79, 108, 108, 108, 108, 108, 102, 102, 102,
01078 102, 102, 102, 79, 134, 7, 7, 7, 79, 79,
01079 79, 79, 79, 79, 79, 76, 108, 108, 108, 7,
01080 7, 7, 108, 108, 108, 79, 79, 79
01081 };
01082
01083 #define yyerrok (yyerrstatus = 0)
01084 #define yyclearin (yychar = YYEMPTY)
01085 #define YYEMPTY (-2)
01086 #define YYEOF 0
01087
01088 #define YYACCEPT goto yyacceptlab
01089 #define YYABORT goto yyabortlab
01090 #define YYERROR goto yyerrorlab
01091
01092
01093
01094
01095
01096
01097 #define YYFAIL goto yyerrlab
01098
01099 #define YYRECOVERING() (!!yyerrstatus)
01100
01101 #define YYBACKUP(Token, Value) \
01102 do \
01103 if (yychar == YYEMPTY && yylen == 1) \
01104 { \
01105 yychar = (Token); \
01106 yylval = (Value); \
01107 yytoken = YYTRANSLATE (yychar); \
01108 YYPOPSTACK (1); \
01109 goto yybackup; \
01110 } \
01111 else \
01112 { \
01113 yyerror (YY_("syntax error: cannot back up")); \
01114 YYERROR; \
01115 } \
01116 while (YYID (0))
01117
01118
01119 #define YYTERROR 1
01120 #define YYERRCODE 256
01121
01122
01123
01124
01125
01126
01127 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
01128 #ifndef YYLLOC_DEFAULT
01129 # define YYLLOC_DEFAULT(Current, Rhs, N) \
01130 do \
01131 if (YYID (N)) \
01132 { \
01133 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
01134 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
01135 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
01136 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
01137 } \
01138 else \
01139 { \
01140 (Current).first_line = (Current).last_line = \
01141 YYRHSLOC (Rhs, 0).last_line; \
01142 (Current).first_column = (Current).last_column = \
01143 YYRHSLOC (Rhs, 0).last_column; \
01144 } \
01145 while (YYID (0))
01146 #endif
01147
01148
01149
01150
01151
01152
01153 #ifndef YY_LOCATION_PRINT
01154 # if YYLTYPE_IS_TRIVIAL
01155 # define YY_LOCATION_PRINT(File, Loc) \
01156 fprintf (File, "%d.%d-%d.%d", \
01157 (Loc).first_line, (Loc).first_column, \
01158 (Loc).last_line, (Loc).last_column)
01159 # else
01160 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
01161 # endif
01162 #endif
01163
01164
01165
01166
01167 #ifdef YYLEX_PARAM
01168 # define YYLEX yylex (YYLEX_PARAM)
01169 #else
01170 # define YYLEX yylex ()
01171 #endif
01172
01173
01174 #if YYDEBUG
01175
01176 # ifndef YYFPRINTF
01177 # include <stdio.h>
01178 # define YYFPRINTF fprintf
01179 # endif
01180
01181 # define YYDPRINTF(Args) \
01182 do { \
01183 if (yydebug) \
01184 YYFPRINTF Args; \
01185 } while (YYID (0))
01186
01187 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
01188 do { \
01189 if (yydebug) \
01190 { \
01191 YYFPRINTF (stderr, "%s ", Title); \
01192 yy_symbol_print (stderr, \
01193 Type, Value); \
01194 YYFPRINTF (stderr, "\n"); \
01195 } \
01196 } while (YYID (0))
01197
01198
01199
01200
01201
01202
01203
01204 #if (defined __STDC__ || defined __C99__FUNC__ \
01205 || defined __cplusplus || defined _MSC_VER)
01206 static void
01207 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
01208 #else
01209 static void
01210 yy_symbol_value_print (yyoutput, yytype, yyvaluep)
01211 FILE *yyoutput;
01212 int yytype;
01213 YYSTYPE const * const yyvaluep;
01214 #endif
01215 {
01216 if (!yyvaluep)
01217 return;
01218 # ifdef YYPRINT
01219 if (yytype < YYNTOKENS)
01220 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
01221 # else
01222 YYUSE (yyoutput);
01223 # endif
01224 switch (yytype)
01225 {
01226 default:
01227 break;
01228 }
01229 }
01230
01231
01232
01233
01234
01235
01236 #if (defined __STDC__ || defined __C99__FUNC__ \
01237 || defined __cplusplus || defined _MSC_VER)
01238 static void
01239 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
01240 #else
01241 static void
01242 yy_symbol_print (yyoutput, yytype, yyvaluep)
01243 FILE *yyoutput;
01244 int yytype;
01245 YYSTYPE const * const yyvaluep;
01246 #endif
01247 {
01248 if (yytype < YYNTOKENS)
01249 YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
01250 else
01251 YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
01252
01253 yy_symbol_value_print (yyoutput, yytype, yyvaluep);
01254 YYFPRINTF (yyoutput, ")");
01255 }
01256
01257
01258
01259
01260
01261
01262 #if (defined __STDC__ || defined __C99__FUNC__ \
01263 || defined __cplusplus || defined _MSC_VER)
01264 static void
01265 yy_stack_print (yytype_int16 *bottom, yytype_int16 *top)
01266 #else
01267 static void
01268 yy_stack_print (bottom, top)
01269 yytype_int16 *bottom;
01270 yytype_int16 *top;
01271 #endif
01272 {
01273 YYFPRINTF (stderr, "Stack now");
01274 for (; bottom <= top; ++bottom)
01275 YYFPRINTF (stderr, " %d", *bottom);
01276 YYFPRINTF (stderr, "\n");
01277 }
01278
01279 # define YY_STACK_PRINT(Bottom, Top) \
01280 do { \
01281 if (yydebug) \
01282 yy_stack_print ((Bottom), (Top)); \
01283 } while (YYID (0))
01284
01285
01286
01287
01288
01289
01290 #if (defined __STDC__ || defined __C99__FUNC__ \
01291 || defined __cplusplus || defined _MSC_VER)
01292 static void
01293 yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
01294 #else
01295 static void
01296 yy_reduce_print (yyvsp, yyrule)
01297 YYSTYPE *yyvsp;
01298 int yyrule;
01299 #endif
01300 {
01301 int yynrhs = yyr2[yyrule];
01302 int yyi;
01303 unsigned long int yylno = yyrline[yyrule];
01304 YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
01305 yyrule - 1, yylno);
01306
01307 for (yyi = 0; yyi < yynrhs; yyi++)
01308 {
01309 fprintf (stderr, " $%d = ", yyi + 1);
01310 yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
01311 &(yyvsp[(yyi + 1) - (yynrhs)])
01312 );
01313 fprintf (stderr, "\n");
01314 }
01315 }
01316
01317 # define YY_REDUCE_PRINT(Rule) \
01318 do { \
01319 if (yydebug) \
01320 yy_reduce_print (yyvsp, Rule); \
01321 } while (YYID (0))
01322
01323
01324
01325 int yydebug;
01326 #else
01327 # define YYDPRINTF(Args)
01328 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
01329 # define YY_STACK_PRINT(Bottom, Top)
01330 # define YY_REDUCE_PRINT(Rule)
01331 #endif
01332
01333
01334
01335 #ifndef YYINITDEPTH
01336 # define YYINITDEPTH 200
01337 #endif
01338
01339
01340
01341
01342
01343
01344
01345
01346 #ifndef YYMAXDEPTH
01347 # define YYMAXDEPTH 10000
01348 #endif
01349
01350
01351
01352 #if YYERROR_VERBOSE
01353
01354 # ifndef yystrlen
01355 # if defined __GLIBC__ && defined _STRING_H
01356 # define yystrlen strlen
01357 # else
01358
01359 #if (defined __STDC__ || defined __C99__FUNC__ \
01360 || defined __cplusplus || defined _MSC_VER)
01361 static YYSIZE_T
01362 yystrlen (const char *yystr)
01363 #else
01364 static YYSIZE_T
01365 yystrlen (yystr)
01366 const char *yystr;
01367 #endif
01368 {
01369 YYSIZE_T yylen;
01370 for (yylen = 0; yystr[yylen]; yylen++)
01371 continue;
01372 return yylen;
01373 }
01374 # endif
01375 # endif
01376
01377 # ifndef yystpcpy
01378 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
01379 # define yystpcpy stpcpy
01380 # else
01381
01382
01383 #if (defined __STDC__ || defined __C99__FUNC__ \
01384 || defined __cplusplus || defined _MSC_VER)
01385 static char *
01386 yystpcpy (char *yydest, const char *yysrc)
01387 #else
01388 static char *
01389 yystpcpy (yydest, yysrc)
01390 char *yydest;
01391 const char *yysrc;
01392 #endif
01393 {
01394 char *yyd = yydest;
01395 const char *yys = yysrc;
01396
01397 while ((*yyd++ = *yys++) != '\0')
01398 continue;
01399
01400 return yyd - 1;
01401 }
01402 # endif
01403 # endif
01404
01405 # ifndef yytnamerr
01406
01407
01408
01409
01410
01411
01412
01413 static YYSIZE_T
01414 yytnamerr (char *yyres, const char *yystr)
01415 {
01416 if (*yystr == '"')
01417 {
01418 YYSIZE_T yyn = 0;
01419 char const *yyp = yystr;
01420
01421 for (;;)
01422 switch (*++yyp)
01423 {
01424 case '\'':
01425 case ',':
01426 goto do_not_strip_quotes;
01427
01428 case '\\':
01429 if (*++yyp != '\\')
01430 goto do_not_strip_quotes;
01431
01432 default:
01433 if (yyres)
01434 yyres[yyn] = *yyp;
01435 yyn++;
01436 break;
01437
01438 case '"':
01439 if (yyres)
01440 yyres[yyn] = '\0';
01441 return yyn;
01442 }
01443 do_not_strip_quotes: ;
01444 }
01445
01446 if (! yyres)
01447 return yystrlen (yystr);
01448
01449 return yystpcpy (yyres, yystr) - yyres;
01450 }
01451 # endif
01452
01453
01454
01455
01456
01457
01458
01459
01460 static YYSIZE_T
01461 yysyntax_error (char *yyresult, int yystate, int yychar)
01462 {
01463 int yyn = yypact[yystate];
01464
01465 if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
01466 return 0;
01467 else
01468 {
01469 int yytype = YYTRANSLATE (yychar);
01470 YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
01471 YYSIZE_T yysize = yysize0;
01472 YYSIZE_T yysize1;
01473 int yysize_overflow = 0;
01474 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
01475 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
01476 int yyx;
01477
01478 # if 0
01479
01480
01481 YY_("syntax error, unexpected %s");
01482 YY_("syntax error, unexpected %s, expecting %s");
01483 YY_("syntax error, unexpected %s, expecting %s or %s");
01484 YY_("syntax error, unexpected %s, expecting %s or %s or %s");
01485 YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
01486 # endif
01487 char *yyfmt;
01488 char const *yyf;
01489 static char const yyunexpected[] = "syntax error, unexpected %s";
01490 static char const yyexpecting[] = ", expecting %s";
01491 static char const yyor[] = " or %s";
01492 char yyformat[sizeof yyunexpected
01493 + sizeof yyexpecting - 1
01494 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
01495 * (sizeof yyor - 1))];
01496 char const *yyprefix = yyexpecting;
01497
01498
01499
01500 int yyxbegin = yyn < 0 ? -yyn : 0;
01501
01502
01503 int yychecklim = YYLAST - yyn + 1;
01504 int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
01505 int yycount = 1;
01506
01507 yyarg[0] = yytname[yytype];
01508 yyfmt = yystpcpy (yyformat, yyunexpected);
01509
01510 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
01511 if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
01512 {
01513 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
01514 {
01515 yycount = 1;
01516 yysize = yysize0;
01517 yyformat[sizeof yyunexpected - 1] = '\0';
01518 break;
01519 }
01520 yyarg[yycount++] = yytname[yyx];
01521 yysize1 = yysize + yytnamerr (0, yytname[yyx]);
01522 yysize_overflow |= (yysize1 < yysize);
01523 yysize = yysize1;
01524 yyfmt = yystpcpy (yyfmt, yyprefix);
01525 yyprefix = yyor;
01526 }
01527
01528 yyf = YY_(yyformat);
01529 yysize1 = yysize + yystrlen (yyf);
01530 yysize_overflow |= (yysize1 < yysize);
01531 yysize = yysize1;
01532
01533 if (yysize_overflow)
01534 return YYSIZE_MAXIMUM;
01535
01536 if (yyresult)
01537 {
01538
01539
01540
01541 char *yyp = yyresult;
01542 int yyi = 0;
01543 while ((*yyp = *yyf) != '\0')
01544 {
01545 if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
01546 {
01547 yyp += yytnamerr (yyp, yyarg[yyi++]);
01548 yyf += 2;
01549 }
01550 else
01551 {
01552 yyp++;
01553 yyf++;
01554 }
01555 }
01556 }
01557 return yysize;
01558 }
01559 }
01560 #endif
01561
01562
01563
01564
01565
01566
01567
01568 #if (defined __STDC__ || defined __C99__FUNC__ \
01569 || defined __cplusplus || defined _MSC_VER)
01570 static void
01571 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
01572 #else
01573 static void
01574 yydestruct (yymsg, yytype, yyvaluep)
01575 const char *yymsg;
01576 int yytype;
01577 YYSTYPE *yyvaluep;
01578 #endif
01579 {
01580 YYUSE (yyvaluep);
01581
01582 if (!yymsg)
01583 yymsg = "Deleting";
01584 YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
01585
01586 switch (yytype)
01587 {
01588
01589 default:
01590 break;
01591 }
01592 }
01593
01594
01595
01596
01597 #ifdef YYPARSE_PARAM
01598 #if defined __STDC__ || defined __cplusplus
01599 int yyparse (void *YYPARSE_PARAM);
01600 #else
01601 int yyparse ();
01602 #endif
01603 #else
01604 #if defined __STDC__ || defined __cplusplus
01605 int yyparse (void);
01606 #else
01607 int yyparse ();
01608 #endif
01609 #endif
01610
01611
01612
01613
01614 int yychar;
01615
01616
01617 YYSTYPE yylval;
01618
01619
01620 int yynerrs;
01621
01622
01623
01624
01625
01626
01627
01628 #ifdef YYPARSE_PARAM
01629 #if (defined __STDC__ || defined __C99__FUNC__ \
01630 || defined __cplusplus || defined _MSC_VER)
01631 int
01632 yyparse (void *YYPARSE_PARAM)
01633 #else
01634 int
01635 yyparse (YYPARSE_PARAM)
01636 void *YYPARSE_PARAM;
01637 #endif
01638 #else
01639 #if (defined __STDC__ || defined __C99__FUNC__ \
01640 || defined __cplusplus || defined _MSC_VER)
01641 int
01642 yyparse (void)
01643 #else
01644 int
01645 yyparse ()
01646
01647 #endif
01648 #endif
01649 {
01650
01651 int yystate;
01652 int yyn;
01653 int yyresult;
01654
01655 int yyerrstatus;
01656
01657 int yytoken = 0;
01658 #if YYERROR_VERBOSE
01659
01660 char yymsgbuf[128];
01661 char *yymsg = yymsgbuf;
01662 YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
01663 #endif
01664
01665
01666
01667
01668
01669
01670
01671
01672
01673
01674 yytype_int16 yyssa[YYINITDEPTH];
01675 yytype_int16 *yyss = yyssa;
01676 yytype_int16 *yyssp;
01677
01678
01679 YYSTYPE yyvsa[YYINITDEPTH];
01680 YYSTYPE *yyvs = yyvsa;
01681 YYSTYPE *yyvsp;
01682
01683
01684
01685 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
01686
01687 YYSIZE_T yystacksize = YYINITDEPTH;
01688
01689
01690
01691 YYSTYPE yyval;
01692
01693
01694
01695
01696 int yylen = 0;
01697
01698 YYDPRINTF ((stderr, "Starting parse\n"));
01699
01700 yystate = 0;
01701 yyerrstatus = 0;
01702 yynerrs = 0;
01703 yychar = YYEMPTY;
01704
01705
01706
01707
01708
01709
01710 yyssp = yyss;
01711 yyvsp = yyvs;
01712
01713 goto yysetstate;
01714
01715
01716
01717
01718 yynewstate:
01719
01720
01721 yyssp++;
01722
01723 yysetstate:
01724 *yyssp = yystate;
01725
01726 if (yyss + yystacksize - 1 <= yyssp)
01727 {
01728
01729 YYSIZE_T yysize = yyssp - yyss + 1;
01730
01731 #ifdef yyoverflow
01732 {
01733
01734
01735
01736 YYSTYPE *yyvs1 = yyvs;
01737 yytype_int16 *yyss1 = yyss;
01738
01739
01740
01741
01742
01743
01744 yyoverflow (YY_("memory exhausted"),
01745 &yyss1, yysize * sizeof (*yyssp),
01746 &yyvs1, yysize * sizeof (*yyvsp),
01747
01748 &yystacksize);
01749
01750 yyss = yyss1;
01751 yyvs = yyvs1;
01752 }
01753 #else
01754 # ifndef YYSTACK_RELOCATE
01755 goto yyexhaustedlab;
01756 # else
01757
01758 if (YYMAXDEPTH <= yystacksize)
01759 goto yyexhaustedlab;
01760 yystacksize *= 2;
01761 if (YYMAXDEPTH < yystacksize)
01762 yystacksize = YYMAXDEPTH;
01763
01764 {
01765 yytype_int16 *yyss1 = yyss;
01766 union yyalloc *yyptr =
01767 (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
01768 if (! yyptr)
01769 goto yyexhaustedlab;
01770 YYSTACK_RELOCATE (yyss);
01771 YYSTACK_RELOCATE (yyvs);
01772
01773 # undef YYSTACK_RELOCATE
01774 if (yyss1 != yyssa)
01775 YYSTACK_FREE (yyss1);
01776 }
01777 # endif
01778 #endif
01779
01780 yyssp = yyss + yysize - 1;
01781 yyvsp = yyvs + yysize - 1;
01782
01783
01784 YYDPRINTF ((stderr, "Stack size increased to %lu\n",
01785 (unsigned long int) yystacksize));
01786
01787 if (yyss + yystacksize - 1 <= yyssp)
01788 YYABORT;
01789 }
01790
01791 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
01792
01793 goto yybackup;
01794
01795
01796
01797
01798 yybackup:
01799
01800
01801
01802
01803
01804 yyn = yypact[yystate];
01805 if (yyn == YYPACT_NINF)
01806 goto yydefault;
01807
01808
01809
01810
01811 if (yychar == YYEMPTY)
01812 {
01813 YYDPRINTF ((stderr, "Reading a token: "));
01814 yychar = YYLEX;
01815 }
01816
01817 if (yychar <= YYEOF)
01818 {
01819 yychar = yytoken = YYEOF;
01820 YYDPRINTF ((stderr, "Now at end of input.\n"));
01821 }
01822 else
01823 {
01824 yytoken = YYTRANSLATE (yychar);
01825 YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
01826 }
01827
01828
01829
01830 yyn += yytoken;
01831 if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
01832 goto yydefault;
01833 yyn = yytable[yyn];
01834 if (yyn <= 0)
01835 {
01836 if (yyn == 0 || yyn == YYTABLE_NINF)
01837 goto yyerrlab;
01838 yyn = -yyn;
01839 goto yyreduce;
01840 }
01841
01842 if (yyn == YYFINAL)
01843 YYACCEPT;
01844
01845
01846
01847 if (yyerrstatus)
01848 yyerrstatus--;
01849
01850
01851 YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
01852
01853
01854 if (yychar != YYEOF)
01855 yychar = YYEMPTY;
01856
01857 yystate = yyn;
01858 *++yyvsp = yylval;
01859
01860 goto yynewstate;
01861
01862
01863
01864
01865
01866 yydefault:
01867 yyn = yydefact[yystate];
01868 if (yyn == 0)
01869 goto yyerrlab;
01870 goto yyreduce;
01871
01872
01873
01874
01875
01876 yyreduce:
01877
01878 yylen = yyr2[yyn];
01879
01880
01881
01882
01883
01884
01885
01886
01887
01888 yyval = yyvsp[1-yylen];
01889
01890
01891 YY_REDUCE_PRINT (yyn);
01892 switch (yyn)
01893 {
01894 case 2:
01895 #line 236 "parser/faustparser.y"
01896 {(yyval.exp) = (yyvsp[(1) - (1)].exp); gResult = formatDefinitions((yyval.exp)); ;}
01897 break;
01898
01899 case 3:
01900 #line 239 "parser/faustparser.y"
01901 {(yyval.exp) = nil; ;}
01902 break;
01903
01904 case 4:
01905 #line 240 "parser/faustparser.y"
01906 {(yyval.exp) = cons ((yyvsp[(2) - (2)].exp),(yyvsp[(1) - (2)].exp)); ;}
01907 break;
01908
01909 case 5:
01910 #line 246 "parser/faustparser.y"
01911 {(yyval.exp) = cons((yyvsp[(1) - (7)].exp),cons((yyvsp[(3) - (7)].exp),(yyvsp[(6) - (7)].exp))); ;}
01912 break;
01913
01914 case 6:
01915 #line 247 "parser/faustparser.y"
01916 {(yyval.exp) = cons((yyvsp[(1) - (4)].exp),cons(nil,(yyvsp[(3) - (4)].exp))); ;}
01917 break;
01918
01919 case 7:
01920 #line 248 "parser/faustparser.y"
01921 {(yyval.exp) = importFile((yyvsp[(3) - (5)].exp)); ;}
01922 break;
01923
01924 case 8:
01925 #line 249 "parser/faustparser.y"
01926 {gMetaDataSet[(yyvsp[(2) - (4)].exp)].insert((yyvsp[(3) - (4)].exp)); (yyval.exp) = nil; ;}
01927 break;
01928
01929 case 9:
01930 #line 250 "parser/faustparser.y"
01931 {(yyval.exp) = nil; yyerr++;;}
01932 break;
01933
01934 case 10:
01935 #line 253 "parser/faustparser.y"
01936 {(yyval.exp)=(yyvsp[(1) - (1)].exp); setDefProp((yyvsp[(1) - (1)].exp), yyfilename, yylineno); ;}
01937 break;
01938
01939 case 11:
01940 #line 256 "parser/faustparser.y"
01941 {(yyval.exp) = cons((yyvsp[(1) - (1)].exp),nil); ;}
01942 break;
01943
01944 case 12:
01945 #line 257 "parser/faustparser.y"
01946 {(yyval.exp) = cons((yyvsp[(3) - (3)].exp),(yyvsp[(1) - (3)].exp)); ;}
01947 break;
01948
01949 case 13:
01950 #line 260 "parser/faustparser.y"
01951 {(yyval.exp) = boxWithLocalDef((yyvsp[(1) - (5)].exp),formatDefinitions((yyvsp[(4) - (5)].exp))); ;}
01952 break;
01953
01954 case 14:
01955 #line 261 "parser/faustparser.y"
01956 {(yyval.exp) = boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp));;}
01957 break;
01958
01959 case 15:
01960 #line 262 "parser/faustparser.y"
01961 {(yyval.exp) = boxSeq((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp));;}
01962 break;
01963
01964 case 16:
01965 #line 263 "parser/faustparser.y"
01966 {(yyval.exp) = boxSplit((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp));;}
01967 break;
01968
01969 case 17:
01970 #line 264 "parser/faustparser.y"
01971 {(yyval.exp) = boxMerge((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp));;}
01972 break;
01973
01974 case 18:
01975 #line 265 "parser/faustparser.y"
01976 {(yyval.exp) = boxRec((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp));;}
01977 break;
01978
01979 case 19:
01980 #line 266 "parser/faustparser.y"
01981 {(yyval.exp) = (yyvsp[(1) - (1)].exp); ;}
01982 break;
01983
01984 case 20:
01985 #line 269 "parser/faustparser.y"
01986 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigAdd)); ;}
01987 break;
01988
01989 case 21:
01990 #line 270 "parser/faustparser.y"
01991 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigSub)); ;}
01992 break;
01993
01994 case 22:
01995 #line 271 "parser/faustparser.y"
01996 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigMul)); ;}
01997 break;
01998
01999 case 23:
02000 #line 272 "parser/faustparser.y"
02001 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigDiv)); ;}
02002 break;
02003
02004 case 24:
02005 #line 273 "parser/faustparser.y"
02006 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigRem)); ;}
02007 break;
02008
02009 case 25:
02010 #line 274 "parser/faustparser.y"
02011 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigFixDelay)); ;}
02012 break;
02013
02014 case 26:
02015 #line 275 "parser/faustparser.y"
02016 {(yyval.exp) = boxSeq((yyvsp[(1) - (2)].exp),boxPrim1(sigDelay1)); ;}
02017 break;
02018
02019 case 27:
02020 #line 276 "parser/faustparser.y"
02021 {(yyval.exp) = boxAccess((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)); ;}
02022 break;
02023
02024 case 28:
02025 #line 278 "parser/faustparser.y"
02026 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigAND)); ;}
02027 break;
02028
02029 case 29:
02030 #line 279 "parser/faustparser.y"
02031 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigOR)); ;}
02032 break;
02033
02034 case 30:
02035 #line 280 "parser/faustparser.y"
02036 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigXOR)); ;}
02037 break;
02038
02039 case 31:
02040 #line 282 "parser/faustparser.y"
02041 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigLeftShift)); ;}
02042 break;
02043
02044 case 32:
02045 #line 283 "parser/faustparser.y"
02046 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigRightShift)); ;}
02047 break;
02048
02049 case 33:
02050 #line 285 "parser/faustparser.y"
02051 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigLT)); ;}
02052 break;
02053
02054 case 34:
02055 #line 286 "parser/faustparser.y"
02056 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigLE)); ;}
02057 break;
02058
02059 case 35:
02060 #line 287 "parser/faustparser.y"
02061 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigGT)); ;}
02062 break;
02063
02064 case 36:
02065 #line 288 "parser/faustparser.y"
02066 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigGE)); ;}
02067 break;
02068
02069 case 37:
02070 #line 289 "parser/faustparser.y"
02071 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigEQ)); ;}
02072 break;
02073
02074 case 38:
02075 #line 290 "parser/faustparser.y"
02076 {(yyval.exp) = boxSeq(boxPar((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp)),boxPrim2(sigNE)); ;}
02077 break;
02078
02079 case 39:
02080 #line 292 "parser/faustparser.y"
02081 {(yyval.exp) = buildBoxAppl((yyvsp[(1) - (4)].exp),(yyvsp[(3) - (4)].exp)); ;}
02082 break;
02083
02084 case 40:
02085 #line 294 "parser/faustparser.y"
02086 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02087 break;
02088
02089 case 41:
02090 #line 297 "parser/faustparser.y"
02091 {(yyval.exp) = boxInt(atoi(yytext));;}
02092 break;
02093
02094 case 42:
02095 #line 298 "parser/faustparser.y"
02096 {(yyval.exp) = boxReal(float(atof(yytext)));;}
02097 break;
02098
02099 case 43:
02100 #line 300 "parser/faustparser.y"
02101 {(yyval.exp) = boxInt(atoi(yytext));;}
02102 break;
02103
02104 case 44:
02105 #line 301 "parser/faustparser.y"
02106 {(yyval.exp) = boxReal(float(atof(yytext)));;}
02107 break;
02108
02109 case 45:
02110 #line 303 "parser/faustparser.y"
02111 {(yyval.exp) = boxInt(0 - atoi(yytext));;}
02112 break;
02113
02114 case 46:
02115 #line 304 "parser/faustparser.y"
02116 {(yyval.exp) = boxReal(0.0f - float(atof(yytext)));;}
02117 break;
02118
02119 case 47:
02120 #line 306 "parser/faustparser.y"
02121 {(yyval.exp) = boxWire();;}
02122 break;
02123
02124 case 48:
02125 #line 307 "parser/faustparser.y"
02126 {(yyval.exp) = boxCut();;}
02127 break;
02128
02129 case 49:
02130 #line 309 "parser/faustparser.y"
02131 {(yyval.exp) = boxPrim1(sigDelay1);;}
02132 break;
02133
02134 case 50:
02135 #line 310 "parser/faustparser.y"
02136 {(yyval.exp) = boxPrim2(sigPrefix);;}
02137 break;
02138
02139 case 51:
02140 #line 312 "parser/faustparser.y"
02141 {(yyval.exp) = boxPrim1(sigIntCast);;}
02142 break;
02143
02144 case 52:
02145 #line 313 "parser/faustparser.y"
02146 {(yyval.exp) = boxPrim1(sigFloatCast);;}
02147 break;
02148
02149 case 53:
02150 #line 315 "parser/faustparser.y"
02151 {(yyval.exp) = boxPrim2(sigAdd);;}
02152 break;
02153
02154 case 54:
02155 #line 316 "parser/faustparser.y"
02156 {(yyval.exp) = boxPrim2(sigSub);;}
02157 break;
02158
02159 case 55:
02160 #line 317 "parser/faustparser.y"
02161 {(yyval.exp) = boxPrim2(sigMul);;}
02162 break;
02163
02164 case 56:
02165 #line 318 "parser/faustparser.y"
02166 {(yyval.exp) = boxPrim2(sigDiv);;}
02167 break;
02168
02169 case 57:
02170 #line 319 "parser/faustparser.y"
02171 {(yyval.exp) = boxPrim2(sigRem);;}
02172 break;
02173
02174 case 58:
02175 #line 320 "parser/faustparser.y"
02176 {(yyval.exp) = boxPrim2(sigFixDelay);;}
02177 break;
02178
02179 case 59:
02180 #line 322 "parser/faustparser.y"
02181 {(yyval.exp) = boxPrim2(sigAND);;}
02182 break;
02183
02184 case 60:
02185 #line 323 "parser/faustparser.y"
02186 {(yyval.exp) = boxPrim2(sigOR);;}
02187 break;
02188
02189 case 61:
02190 #line 324 "parser/faustparser.y"
02191 {(yyval.exp) = boxPrim2(sigXOR);;}
02192 break;
02193
02194 case 62:
02195 #line 326 "parser/faustparser.y"
02196 {(yyval.exp) = boxPrim2(sigLeftShift);;}
02197 break;
02198
02199 case 63:
02200 #line 327 "parser/faustparser.y"
02201 {(yyval.exp) = boxPrim2(sigRightShift);;}
02202 break;
02203
02204 case 64:
02205 #line 329 "parser/faustparser.y"
02206 {(yyval.exp) = boxPrim2(sigLT);;}
02207 break;
02208
02209 case 65:
02210 #line 330 "parser/faustparser.y"
02211 {(yyval.exp) = boxPrim2(sigLE);;}
02212 break;
02213
02214 case 66:
02215 #line 331 "parser/faustparser.y"
02216 {(yyval.exp) = boxPrim2(sigGT);;}
02217 break;
02218
02219 case 67:
02220 #line 332 "parser/faustparser.y"
02221 {(yyval.exp) = boxPrim2(sigGE);;}
02222 break;
02223
02224 case 68:
02225 #line 333 "parser/faustparser.y"
02226 {(yyval.exp) = boxPrim2(sigEQ);;}
02227 break;
02228
02229 case 69:
02230 #line 334 "parser/faustparser.y"
02231 {(yyval.exp) = boxPrim2(sigNE);;}
02232 break;
02233
02234 case 70:
02235 #line 336 "parser/faustparser.y"
02236 {(yyval.exp) = boxPrim2(sigAttach);;}
02237 break;
02238
02239 case 71:
02240 #line 338 "parser/faustparser.y"
02241 {(yyval.exp) = gAcosPrim->box(); ;}
02242 break;
02243
02244 case 72:
02245 #line 339 "parser/faustparser.y"
02246 {(yyval.exp) = gAsinPrim->box(); ;}
02247 break;
02248
02249 case 73:
02250 #line 340 "parser/faustparser.y"
02251 {(yyval.exp) = gAtanPrim->box(); ;}
02252 break;
02253
02254 case 74:
02255 #line 341 "parser/faustparser.y"
02256 {(yyval.exp) = gAtan2Prim->box(); ;}
02257 break;
02258
02259 case 75:
02260 #line 342 "parser/faustparser.y"
02261 {(yyval.exp) = gCosPrim->box(); ;}
02262 break;
02263
02264 case 76:
02265 #line 343 "parser/faustparser.y"
02266 {(yyval.exp) = gSinPrim->box(); ;}
02267 break;
02268
02269 case 77:
02270 #line 344 "parser/faustparser.y"
02271 {(yyval.exp) = gTanPrim->box(); ;}
02272 break;
02273
02274 case 78:
02275 #line 346 "parser/faustparser.y"
02276 {(yyval.exp) = gExpPrim->box(); ;}
02277 break;
02278
02279 case 79:
02280 #line 347 "parser/faustparser.y"
02281 {(yyval.exp) = gLogPrim->box(); ;}
02282 break;
02283
02284 case 80:
02285 #line 348 "parser/faustparser.y"
02286 {(yyval.exp) = gLog10Prim->box(); ;}
02287 break;
02288
02289 case 81:
02290 #line 349 "parser/faustparser.y"
02291 {(yyval.exp) = gPowPrim->box(); ;}
02292 break;
02293
02294 case 82:
02295 #line 350 "parser/faustparser.y"
02296 {(yyval.exp) = gSqrtPrim->box(); ;}
02297 break;
02298
02299 case 83:
02300 #line 352 "parser/faustparser.y"
02301 {(yyval.exp) = gAbsPrim->box(); ;}
02302 break;
02303
02304 case 84:
02305 #line 353 "parser/faustparser.y"
02306 {(yyval.exp) = gMinPrim->box(); ;}
02307 break;
02308
02309 case 85:
02310 #line 354 "parser/faustparser.y"
02311 {(yyval.exp) = gMaxPrim->box(); ;}
02312 break;
02313
02314 case 86:
02315 #line 356 "parser/faustparser.y"
02316 {(yyval.exp) = gFmodPrim->box(); ;}
02317 break;
02318
02319 case 87:
02320 #line 357 "parser/faustparser.y"
02321 {(yyval.exp) = gRemainderPrim->box(); ;}
02322 break;
02323
02324 case 88:
02325 #line 359 "parser/faustparser.y"
02326 {(yyval.exp) = gFloorPrim->box(); ;}
02327 break;
02328
02329 case 89:
02330 #line 360 "parser/faustparser.y"
02331 {(yyval.exp) = gCeilPrim->box(); ;}
02332 break;
02333
02334 case 90:
02335 #line 361 "parser/faustparser.y"
02336 {(yyval.exp) = gRintPrim->box(); ;}
02337 break;
02338
02339 case 91:
02340 #line 364 "parser/faustparser.y"
02341 {(yyval.exp) = boxPrim3(sigReadOnlyTable);;}
02342 break;
02343
02344 case 92:
02345 #line 365 "parser/faustparser.y"
02346 {(yyval.exp) = boxPrim5(sigWriteReadTable);;}
02347 break;
02348
02349 case 93:
02350 #line 367 "parser/faustparser.y"
02351 {(yyval.exp) = boxPrim3(sigSelect2);;}
02352 break;
02353
02354 case 94:
02355 #line 368 "parser/faustparser.y"
02356 {(yyval.exp) = boxPrim4(sigSelect3);;}
02357 break;
02358
02359 case 95:
02360 #line 370 "parser/faustparser.y"
02361 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02362 break;
02363
02364 case 96:
02365 #line 371 "parser/faustparser.y"
02366 {(yyval.exp) = boxSeq(boxPar(boxInt(0),(yyvsp[(2) - (2)].exp)),boxPrim2(sigSub));;}
02367 break;
02368
02369 case 97:
02370 #line 373 "parser/faustparser.y"
02371 {(yyval.exp) = (yyvsp[(2) - (3)].exp);;}
02372 break;
02373
02374 case 98:
02375 #line 375 "parser/faustparser.y"
02376 {(yyval.exp) = buildBoxAbstr((yyvsp[(3) - (8)].exp),(yyvsp[(7) - (8)].exp));;}
02377 break;
02378
02379 case 99:
02380 #line 377 "parser/faustparser.y"
02381 {(yyval.exp) = boxCase(checkRulelist((yyvsp[(3) - (4)].exp)));;}
02382 break;
02383
02384 case 100:
02385 #line 379 "parser/faustparser.y"
02386 {(yyval.exp) = boxFFun((yyvsp[(1) - (1)].exp)); ;}
02387 break;
02388
02389 case 101:
02390 #line 380 "parser/faustparser.y"
02391 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02392 break;
02393
02394 case 102:
02395 #line 381 "parser/faustparser.y"
02396 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02397 break;
02398
02399 case 103:
02400 #line 382 "parser/faustparser.y"
02401 {(yyval.exp) = boxComponent((yyvsp[(3) - (4)].exp)); ;}
02402 break;
02403
02404 case 104:
02405 #line 384 "parser/faustparser.y"
02406 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02407 break;
02408
02409 case 105:
02410 #line 385 "parser/faustparser.y"
02411 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02412 break;
02413
02414 case 106:
02415 #line 386 "parser/faustparser.y"
02416 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02417 break;
02418
02419 case 107:
02420 #line 387 "parser/faustparser.y"
02421 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02422 break;
02423
02424 case 108:
02425 #line 388 "parser/faustparser.y"
02426 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02427 break;
02428
02429 case 109:
02430 #line 389 "parser/faustparser.y"
02431 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02432 break;
02433
02434 case 110:
02435 #line 390 "parser/faustparser.y"
02436 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02437 break;
02438
02439 case 111:
02440 #line 391 "parser/faustparser.y"
02441 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02442 break;
02443
02444 case 112:
02445 #line 392 "parser/faustparser.y"
02446 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02447 break;
02448
02449 case 113:
02450 #line 393 "parser/faustparser.y"
02451 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02452 break;
02453
02454 case 114:
02455 #line 395 "parser/faustparser.y"
02456 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02457 break;
02458
02459 case 115:
02460 #line 396 "parser/faustparser.y"
02461 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02462 break;
02463
02464 case 116:
02465 #line 397 "parser/faustparser.y"
02466 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02467 break;
02468
02469 case 117:
02470 #line 398 "parser/faustparser.y"
02471 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02472 break;
02473
02474 case 118:
02475 #line 402 "parser/faustparser.y"
02476 {(yyval.exp) = boxIdent(yytext);;}
02477 break;
02478
02479 case 119:
02480 #line 405 "parser/faustparser.y"
02481 {(yyval.exp) = tree(yytext);;}
02482 break;
02483
02484 case 120:
02485 #line 410 "parser/faustparser.y"
02486 {(yyval.exp) = cons((yyvsp[(1) - (1)].exp),nil); ;}
02487 break;
02488
02489 case 121:
02490 #line 411 "parser/faustparser.y"
02491 {(yyval.exp) = cons((yyvsp[(3) - (3)].exp),(yyvsp[(1) - (3)].exp)); ;}
02492 break;
02493
02494 case 122:
02495 #line 414 "parser/faustparser.y"
02496 {(yyval.exp) = boxSeq((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp));;}
02497 break;
02498
02499 case 123:
02500 #line 415 "parser/faustparser.y"
02501 {(yyval.exp) = boxSplit((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp));;}
02502 break;
02503
02504 case 124:
02505 #line 416 "parser/faustparser.y"
02506 {(yyval.exp) = boxMerge((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp));;}
02507 break;
02508
02509 case 125:
02510 #line 417 "parser/faustparser.y"
02511 {(yyval.exp) = boxRec((yyvsp[(1) - (3)].exp),(yyvsp[(3) - (3)].exp));;}
02512 break;
02513
02514 case 126:
02515 #line 418 "parser/faustparser.y"
02516 {(yyval.exp) = (yyvsp[(1) - (1)].exp);;}
02517 break;
02518
02519 case 127:
02520 #line 421 "parser/faustparser.y"
02521 {(yyval.exp) = tree(yytext); ;}
02522 break;
02523
02524 case 128:
02525 #line 424 "parser/faustparser.y"
02526 {(yyval.exp) = unquote(yytext); ;}
02527 break;
02528
02529 case 129:
02530 #line 427 "parser/faustparser.y"
02531 {(yyval.exp) = tree(yytext); ;}
02532 break;
02533
02534 case 130:
02535 #line 428 "parser/faustparser.y"
02536 {(yyval.exp) = tree(yytext); ;}
02537 break;
02538
02539 case 131:
02540 #line 434 "parser/faustparser.y"
02541 {(yyval.exp) = boxIPar((yyvsp[(3) - (8)].exp),(yyvsp[(5) - (8)].exp),(yyvsp[(7) - (8)].exp));;}
02542 break;
02543
02544 case 132:
02545 #line 438 "parser/faustparser.y"
02546 {(yyval.exp) = boxISeq((yyvsp[(3) - (8)].exp),(yyvsp[(5) - (8)].exp),(yyvsp[(7) - (8)].exp));;}
02547 break;
02548
02549 case 133:
02550 #line 442 "parser/faustparser.y"
02551 {(yyval.exp) = boxISum((yyvsp[(3) - (8)].exp),(yyvsp[(5) - (8)].exp),(yyvsp[(7) - (8)].exp));;}
02552 break;
02553
02554 case 134:
02555 #line 446 "parser/faustparser.y"
02556 {(yyval.exp) = boxIProd((yyvsp[(3) - (8)].exp),(yyvsp[(5) - (8)].exp),(yyvsp[(7) - (8)].exp));;}
02557 break;
02558
02559 case 135:
02560 #line 453 "parser/faustparser.y"
02561 {(yyval.exp) = ffunction((yyvsp[(3) - (8)].exp),(yyvsp[(5) - (8)].exp),(yyvsp[(7) - (8)].exp));;}
02562 break;
02563
02564 case 136:
02565 #line 457 "parser/faustparser.y"
02566 {(yyval.exp) = boxFConst((yyvsp[(3) - (7)].exp),(yyvsp[(4) - (7)].exp),(yyvsp[(6) - (7)].exp));;}
02567 break;
02568
02569 case 137:
02570 #line 460 "parser/faustparser.y"
02571 {(yyval.exp) = boxFVar((yyvsp[(3) - (7)].exp),(yyvsp[(4) - (7)].exp),(yyvsp[(6) - (7)].exp));;}
02572 break;
02573
02574 case 138:
02575 #line 464 "parser/faustparser.y"
02576 {(yyval.exp) = boxButton((yyvsp[(3) - (4)].exp)); ;}
02577 break;
02578
02579 case 139:
02580 #line 467 "parser/faustparser.y"
02581 {(yyval.exp) = boxCheckbox((yyvsp[(3) - (4)].exp)); ;}
02582 break;
02583
02584 case 140:
02585 #line 471 "parser/faustparser.y"
02586 {(yyval.exp) = boxVSlider((yyvsp[(3) - (12)].exp),(yyvsp[(5) - (12)].exp),(yyvsp[(7) - (12)].exp),(yyvsp[(9) - (12)].exp),(yyvsp[(11) - (12)].exp)); ;}
02587 break;
02588
02589 case 141:
02590 #line 474 "parser/faustparser.y"
02591 {(yyval.exp) = boxHSlider((yyvsp[(3) - (12)].exp),(yyvsp[(5) - (12)].exp),(yyvsp[(7) - (12)].exp),(yyvsp[(9) - (12)].exp),(yyvsp[(11) - (12)].exp)); ;}
02592 break;
02593
02594 case 142:
02595 #line 477 "parser/faustparser.y"
02596 {(yyval.exp) = boxNumEntry((yyvsp[(3) - (12)].exp),(yyvsp[(5) - (12)].exp),(yyvsp[(7) - (12)].exp),(yyvsp[(9) - (12)].exp),(yyvsp[(11) - (12)].exp)); ;}
02597 break;
02598
02599 case 143:
02600 #line 480 "parser/faustparser.y"
02601 {(yyval.exp) = boxVGroup((yyvsp[(3) - (6)].exp), (yyvsp[(5) - (6)].exp)); ;}
02602 break;
02603
02604 case 144:
02605 #line 483 "parser/faustparser.y"
02606 {(yyval.exp) = boxHGroup((yyvsp[(3) - (6)].exp), (yyvsp[(5) - (6)].exp)); ;}
02607 break;
02608
02609 case 145:
02610 #line 486 "parser/faustparser.y"
02611 {(yyval.exp) = boxTGroup((yyvsp[(3) - (6)].exp), (yyvsp[(5) - (6)].exp)); ;}
02612 break;
02613
02614 case 146:
02615 #line 490 "parser/faustparser.y"
02616 {(yyval.exp) = boxVBargraph((yyvsp[(3) - (8)].exp),(yyvsp[(5) - (8)].exp),(yyvsp[(7) - (8)].exp)); ;}
02617 break;
02618
02619 case 147:
02620 #line 493 "parser/faustparser.y"
02621 {(yyval.exp) = boxHBargraph((yyvsp[(3) - (8)].exp),(yyvsp[(5) - (8)].exp),(yyvsp[(7) - (8)].exp)); ;}
02622 break;
02623
02624 case 148:
02625 #line 497 "parser/faustparser.y"
02626 {(yyval.exp) = cons((yyvsp[(1) - (5)].exp), cons((yyvsp[(2) - (5)].exp), (yyvsp[(4) - (5)].exp))); ;}
02627 break;
02628
02629 case 149:
02630 #line 498 "parser/faustparser.y"
02631 {(yyval.exp) = cons((yyvsp[(1) - (4)].exp), cons((yyvsp[(2) - (4)].exp), nil)); ;}
02632 break;
02633
02634 case 150:
02635 #line 501 "parser/faustparser.y"
02636 {(yyval.exp) = tree(yytext);;}
02637 break;
02638
02639 case 151:
02640 #line 504 "parser/faustparser.y"
02641 {(yyval.exp) = cons((yyvsp[(1) - (1)].exp),nil); ;}
02642 break;
02643
02644 case 152:
02645 #line 505 "parser/faustparser.y"
02646 {(yyval.exp) = cons((yyvsp[(3) - (3)].exp),(yyvsp[(1) - (3)].exp)); ;}
02647 break;
02648
02649 case 153:
02650 #line 508 "parser/faustparser.y"
02651 {(yyval.exp) = cons((yyvsp[(1) - (1)].exp),nil); ;}
02652 break;
02653
02654 case 154:
02655 #line 509 "parser/faustparser.y"
02656 {(yyval.exp) = cons((yyvsp[(2) - (2)].exp),(yyvsp[(1) - (2)].exp)); ;}
02657 break;
02658
02659 case 155:
02660 #line 513 "parser/faustparser.y"
02661 {(yyval.exp) = cons((yyvsp[(2) - (6)].exp),(yyvsp[(5) - (6)].exp)); ;}
02662 break;
02663
02664 case 156:
02665 #line 516 "parser/faustparser.y"
02666 {(yyval.exp) = tree(0); ;}
02667 break;
02668
02669 case 157:
02670 #line 517 "parser/faustparser.y"
02671 {(yyval.exp) = tree(1); ;}
02672 break;
02673
02674
02675
02676 #line 2677 "parser/faustparser.cpp"
02677 default: break;
02678 }
02679 YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
02680
02681 YYPOPSTACK (yylen);
02682 yylen = 0;
02683 YY_STACK_PRINT (yyss, yyssp);
02684
02685 *++yyvsp = yyval;
02686
02687
02688
02689
02690
02691
02692 yyn = yyr1[yyn];
02693
02694 yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
02695 if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
02696 yystate = yytable[yystate];
02697 else
02698 yystate = yydefgoto[yyn - YYNTOKENS];
02699
02700 goto yynewstate;
02701
02702
02703
02704
02705
02706 yyerrlab:
02707
02708 if (!yyerrstatus)
02709 {
02710 ++yynerrs;
02711 #if ! YYERROR_VERBOSE
02712 yyerror (YY_("syntax error"));
02713 #else
02714 {
02715 YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
02716 if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
02717 {
02718 YYSIZE_T yyalloc = 2 * yysize;
02719 if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
02720 yyalloc = YYSTACK_ALLOC_MAXIMUM;
02721 if (yymsg != yymsgbuf)
02722 YYSTACK_FREE (yymsg);
02723 yymsg = (char *) YYSTACK_ALLOC (yyalloc);
02724 if (yymsg)
02725 yymsg_alloc = yyalloc;
02726 else
02727 {
02728 yymsg = yymsgbuf;
02729 yymsg_alloc = sizeof yymsgbuf;
02730 }
02731 }
02732
02733 if (0 < yysize && yysize <= yymsg_alloc)
02734 {
02735 (void) yysyntax_error (yymsg, yystate, yychar);
02736 yyerror (yymsg);
02737 }
02738 else
02739 {
02740 yyerror (YY_("syntax error"));
02741 if (yysize != 0)
02742 goto yyexhaustedlab;
02743 }
02744 }
02745 #endif
02746 }
02747
02748
02749
02750 if (yyerrstatus == 3)
02751 {
02752
02753
02754
02755 if (yychar <= YYEOF)
02756 {
02757
02758 if (yychar == YYEOF)
02759 YYABORT;
02760 }
02761 else
02762 {
02763 yydestruct ("Error: discarding",
02764 yytoken, &yylval);
02765 yychar = YYEMPTY;
02766 }
02767 }
02768
02769
02770
02771 goto yyerrlab1;
02772
02773
02774
02775
02776
02777 yyerrorlab:
02778
02779
02780
02781
02782 if ( 0)
02783 goto yyerrorlab;
02784
02785
02786
02787 YYPOPSTACK (yylen);
02788 yylen = 0;
02789 YY_STACK_PRINT (yyss, yyssp);
02790 yystate = *yyssp;
02791 goto yyerrlab1;
02792
02793
02794
02795
02796
02797 yyerrlab1:
02798 yyerrstatus = 3;
02799
02800 for (;;)
02801 {
02802 yyn = yypact[yystate];
02803 if (yyn != YYPACT_NINF)
02804 {
02805 yyn += YYTERROR;
02806 if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
02807 {
02808 yyn = yytable[yyn];
02809 if (0 < yyn)
02810 break;
02811 }
02812 }
02813
02814
02815 if (yyssp == yyss)
02816 YYABORT;
02817
02818
02819 yydestruct ("Error: popping",
02820 yystos[yystate], yyvsp);
02821 YYPOPSTACK (1);
02822 yystate = *yyssp;
02823 YY_STACK_PRINT (yyss, yyssp);
02824 }
02825
02826 if (yyn == YYFINAL)
02827 YYACCEPT;
02828
02829 *++yyvsp = yylval;
02830
02831
02832
02833 YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
02834
02835 yystate = yyn;
02836 goto yynewstate;
02837
02838
02839
02840
02841
02842 yyacceptlab:
02843 yyresult = 0;
02844 goto yyreturn;
02845
02846
02847
02848
02849 yyabortlab:
02850 yyresult = 1;
02851 goto yyreturn;
02852
02853 #ifndef yyoverflow
02854
02855
02856
02857 yyexhaustedlab:
02858 yyerror (YY_("memory exhausted"));
02859 yyresult = 2;
02860
02861 #endif
02862
02863 yyreturn:
02864 if (yychar != YYEOF && yychar != YYEMPTY)
02865 yydestruct ("Cleanup: discarding lookahead",
02866 yytoken, &yylval);
02867
02868
02869 YYPOPSTACK (yylen);
02870 YY_STACK_PRINT (yyss, yyssp);
02871 while (yyssp != yyss)
02872 {
02873 yydestruct ("Cleanup: popping",
02874 yystos[*yyssp], yyvsp);
02875 YYPOPSTACK (1);
02876 }
02877 #ifndef yyoverflow
02878 if (yyss != yyssa)
02879 YYSTACK_FREE (yyss);
02880 #endif
02881 #if YYERROR_VERBOSE
02882 if (yymsg != yymsgbuf)
02883 YYSTACK_FREE (yymsg);
02884 #endif
02885
02886 return YYID (yyresult);
02887 }
02888
02889
02890 #line 520 "parser/faustparser.y"
02891
02892
02893