Loading...
Searching...
No Matches
grammar.cc File Reference
`#include <stdio.h>`
`#include <stddef.h>`
`#include <stdlib.h>`
`#include <stdarg.h>`
`#include <string.h>`
`#include "kernel/mod2.h"`
`#include "Singular/grammar.h"`
`#include "misc/mylimits.h"`
`#include "omalloc/omalloc.h"`
`#include "Singular/tok.h"`
`#include "misc/options.h"`
`#include "Singular/stype.h"`
`#include "Singular/fehelp.h"`
`#include "Singular/ipid.h"`
`#include "misc/intvec.h"`
`#include "kernel/oswrapper/feread.h"`
`#include "Singular/fevoices.h"`
`#include "polys/matpol.h"`
`#include "polys/monomials/ring.h"`
`#include "kernel/GBEngine/kstd1.h"`
`#include "Singular/subexpr.h"`
`#include "Singular/ipshell.h"`
`#include "Singular/ipconv.h"`
`#include "Singular/sdb.h"`
`#include "kernel/ideals.h"`
`#include "coeffs/numbers.h"`
`#include "kernel/polys.h"`
`#include "kernel/combinatorics/stairc.h"`
`#include "kernel/oswrapper/timer.h"`
`#include "Singular/cntrlc.h"`
`#include "polys/monomials/maps.h"`
`#include "kernel/GBEngine/syz.h"`
`#include "Singular/lists.h"`
`#include "Singular/libparse.h"`
`#include "coeffs/bigintmat.h"`

Go to the source code of this file.

## Macros

#define | YYBISON 1
#define | YYBISON_VERSION "2.4.3"
#define | YYSKELETON_NAME "yacc.c"
#define | YYPURE 1
#define | YYPUSH 0
#define | YYPULL 1
#define | YYLSP_NEEDED 0
#define | YYMAXDEPTH MAX_INT_VAL
#define | TESTSETINT(a, i)
#define | MYYERROR(a)
#define | YYERROR_VERBOSE 0
#define | YYTOKEN_TABLE 0
#define | YYTOKENTYPE
#define | YYSIZE_T size_t
#define | YYSIZE_MAXIMUM ((YYSIZE_T) -1)
#define | YY_(msgid)
#define | YYUSE(e)
#define | YYID(n)
#define | YYSTACK_ALLOC YYMALLOC
#define | YYSTACK_FREE YYFREE
#define | YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
#define | _STDLIB_H 1
#define | YYMALLOC malloc
#define | YYFREE free
#define | YYFINAL 2
#define | YYLAST 2747
#define | YYNTOKENS 105
#define | YYNNTS 44
#define | YYNRULES 175
#define | YYNSTATES 398
#define | YYUNDEFTOK 2
#define | YYMAXUTOK 343
#define | YYTRANSLATE(YYX)
#define | YYPACT_NINF -361
#define | YYTABLE_NINF -155
#define | yyerrok (yyerrstatus = 0)
#define | yyclearin (yychar = YYEMPTY)
#define | YYEMPTY (-2)
#define | YYEOF 0
#define | YYACCEPT goto yyacceptlab
#define | YYABORT goto yyabortlab
#define | YYERROR goto yyerrorlab
#define | YYFAIL goto yyerrlab
#define | YYRECOVERING()
#define | YYBACKUP(Token, Value)
#define | YYTERROR 1
#define | YYERRCODE 256
#define | YYRHSLOC(Rhs, K)
#define | YYLLOC_DEFAULT(Current, Rhs, N)
#define | YY_LOCATION_PRINT(File, Loc)
#define | YYLEX yylex (&yylval)
#define | YYFPRINTF fprintf
#define | YYDPRINTF(Args)
#define | YY_SYMBOL_PRINT(Title, Type, Value, Location)
#define | YY_STACK_PRINT(Bottom, Top)
#define | YY_REDUCE_PRINT(Rule)
#define | YYINITDEPTH 200
#define | YYPOPSTACK(N)

## Typedefs

typedef unsigned char | yytype_uint8
typedef signed char | yytype_int8
typedef unsigned short int | yytype_uint16
typedef short int | yytype_int16

## Enumerations

enum

yytokentype {
DOTDOT = 258 , EQUAL_EQUAL = 259 , GE = 260 , LE = 261 ,
MINUSMINUS = 262 , NOT = 263 , NOTEQUAL = 264 , PLUSPLUS = 265 ,
COLONCOLON = 266 , ARROW = 267 , GRING_CMD = 268 , BIGINTMAT_CMD = 269 ,
BIGINTVEC_CMD = 270 , INTMAT_CMD = 271 , PROC_CMD = 272 , RING_CMD = 273 ,
BEGIN_RING = 274 , BUCKET_CMD = 275 , IDEAL_CMD = 276 , MAP_CMD = 277 ,
MATRIX_CMD = 278 , MODUL_CMD = 279 , NUMBER_CMD = 280 , POLY_CMD = 281 ,
RESOLUTION_CMD = 282 , SMATRIX_CMD = 283 , VECTOR_CMD = 284 , BETTI_CMD = 285 ,
E_CMD = 286 , FETCH_CMD = 287 , FREEMODULE_CMD = 288 , KEEPRING_CMD = 289 ,
IMAP_CMD = 290 , KOSZUL_CMD = 291 , MAXID_CMD = 292 , MONOM_CMD = 293 ,
PAR_CMD = 294 , PREIMAGE_CMD = 295 , VAR_CMD = 296 , VALTVARS = 297 ,
VMAXDEG = 298 , VMAXMULT = 299 , VNOETHER = 300 , VMINPOLY = 301 ,
END_RING = 302 , CMD_1 = 303 , CMD_2 = 304 , CMD_3 = 305 ,
CMD_12 = 306 , CMD_13 = 307 , CMD_23 = 308 , CMD_123 = 309 ,
CMD_M = 310 , ROOT_DECL = 311 , ROOT_DECL_LIST = 312 , RING_DECL = 313 ,
RING_DECL_LIST = 314 , EXAMPLE_CMD = 315 , EXPORT_CMD = 316 , HELP_CMD = 317 ,
KILL_CMD = 318 , LIB_CMD = 319 , LISTVAR_CMD = 320 , SETRING_CMD = 321 ,
TYPE_CMD = 322 , STRINGTOK = 323 , BLOCKTOK = 324 , INT_CONST = 325 ,
UNKNOWN_IDENT = 326 , MONOM = 327 , PROC_DEF = 328 , APPLY = 329 ,
ASSUME_CMD = 330 , BREAK_CMD = 331 , CONTINUE_CMD = 332 , ELSE_CMD = 333 ,
EVAL = 334 , QUOTE = 335 , FOR_CMD = 336 , IF_CMD = 337 ,
SYS_BREAK = 338 , WHILE_CMD = 339 , RETURN = 340 , PARAMETER = 341 ,
SYSVAR = 342 , UMINUS = 343
}

## Functions

void | yyerror (const char *fmt)
static void | yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
static void | yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
static void | yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
static void | yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
static void | yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
int | yyparse (void)

## Variables

int | yylineno
FILE * | yyin
const char * | currid
BOOLEAN | yyInRingConstruction =FALSE
BOOLEAN | expected_parms
int | cmdtok
int | inerror = 0
static const yytype_uint8 | yytranslate []
static const yytype_uint16 | yyprhs []
static const yytype_int16 | yyrhs []
static const yytype_uint16 | yyrline []
static const char *const | yytname []
static const yytype_uint8 | yyr1 []
static const yytype_uint8 | yyr2 []
static const yytype_uint8 | yydefact []
static const yytype_int16 | yydefgoto []
static const yytype_int16 | yypact []
static const yytype_int16 | yypgoto []
static const yytype_int16 | yytable []
static const yytype_int16 | yycheck []
static const yytype_uint8 | yystos []
int | yydebug

## Macro Definition Documentation

## _STDLIB_H

#define _STDLIB_H 1

Definition at line 504 of file grammar.cc.

## MYYERROR

#define MYYERROR | ( |  | a | ) |

Value:
{ WerrorS(a); YYERROR; }
WerrorS
void WerrorS(const char *s)
Definition feFopen.cc:24
YYERROR
#define YYERROR
Definition grammar.cc:1596

Definition at line 185 of file grammar.cc.

## TESTSETINT

#define TESTSETINT | ( |  | a,
|  |  | i )

Value:
if ((a).Typ() != INT_CMD) \
{ \
WerrorS("no int expression"); \
YYERROR; \
} \
(i) = (int)((long)(a).Data());(a).CleanUp()
i
int i
Definition cfEzgcd.cc:132
INT_CMD
@ INT_CMD
Definition tok.h:96

Definition at line 177 of file grammar.cc.

#define TESTSETINT(a,i) \
if ((a).Typ() != INT_CMD) \
{ \
WerrorS("no int expression"); \
YYERROR; \
} \
(i) = (int)((long)(a).Data());(a).CleanUp()

## YY_

#define YY_ | ( |  | msgid | ) |

Value:
msgid

Definition at line 426 of file grammar.cc.

## YY_LOCATION_PRINT

#define YY_LOCATION_PRINT | ( |  | File,
|  |  | Loc )

Value:
((void) 0)

Definition at line 1675 of file grammar.cc.

## YY_REDUCE_PRINT

#define YY_REDUCE_PRINT | ( |  | Rule | ) |

Value:
do { \
if (yydebug) \
yy_reduce_print (yyvsp, Rule); \
} while (YYID (0))
YYID
#define YYID(n)
Definition grammar.cc:439
yydebug
int yydebug
Definition grammar.cc:1843

Definition at line 1835 of file grammar.cc.

# define YY_REDUCE_PRINT(Rule) \
do { \
if (yydebug) \
yy_reduce_print (yyvsp, Rule); \
} while (YYID (0))

## YY_STACK_PRINT

#define YY_STACK_PRINT | ( |  | Bottom,
|  |  | Top )

Value:
do { \
if (yydebug) \
yy_stack_print ((Bottom), (Top)); \
} while (YYID (0))

Definition at line 1797 of file grammar.cc.

# define YY_STACK_PRINT(Bottom, Top) \
do { \
if (yydebug) \
yy_stack_print ((Bottom), (Top)); \
} while (YYID (0))

## YY_SYMBOL_PRINT

#define YY_SYMBOL_PRINT | ( |  | Title,
|  |  | Type,
|  |  | Value,
|  |  | Location )

Value:
do { \
if (yydebug) \
{ \
YYFPRINTF (stderr, "%s ", Title); \
yy_symbol_print (stderr, \
Type, Value); \
YYFPRINTF (stderr, "\n"); \
} \
} while (YYID (0))

Definition at line 1702 of file grammar.cc.

# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
do { \
if (yydebug) \
{ \
YYFPRINTF (stderr, "%s ", Title); \
yy_symbol_print (stderr, \
Type, Value); \
YYFPRINTF (stderr, "\n"); \
} \
} while (YYID (0))

## YYABORT

#define YYABORT goto yyabortlab

Definition at line 1595 of file grammar.cc.

## YYACCEPT

#define YYACCEPT goto yyacceptlab

Definition at line 1594 of file grammar.cc.

## YYBACKUP

#define YYBACKUP | ( |  | Token,
|  |  | Value )

Value:
do \
if (yychar == YYEMPTY && yylen == 1) \
{ \
yychar = (Token); \
yylval = (Value); \
yytoken = YYTRANSLATE (yychar); \
YYPOPSTACK (1); \
goto yybackup; \
} \
else \
{ \
yyerror (YY_("syntax error: cannot back up")); \
YYERROR; \
} \
while (YYID (0))
YY_
#define YY_(msgid)
Definition grammar.cc:426
YYTRANSLATE
#define YYTRANSLATE(YYX)
Definition grammar.cc:599
YYEMPTY
#define YYEMPTY
Definition grammar.cc:1591
yychar
int yychar
Definition readcf.cc:922
yylval
EXTERN_VAR YYSTYPE yylval
Definition stype.h:20

Definition at line 1616 of file grammar.cc.

#define YYBACKUP(Token, Value) \
do \
if (yychar == YYEMPTY && yylen == 1) \
{ \
yychar = (Token); \
yylval = (Value); \
yytoken = YYTRANSLATE (yychar); \
YYPOPSTACK (1); \
goto yybackup; \
} \
else \
{ \
yyerror (YY_("syntax error: cannot back up")); \
YYERROR; \
} \
while (YYID (0))

## YYBISON

#define YYBISON 1

Definition at line 45 of file grammar.cc.

## YYBISON_VERSION

#define YYBISON_VERSION "2.4.3"

Definition at line 48 of file grammar.cc.

## yyclearin

#define yyclearin (yychar = YYEMPTY)

Definition at line 1590 of file grammar.cc.

## YYDPRINTF

#define YYDPRINTF | ( |  | Args | ) |

Value:
do { \
if (yydebug) \
YYFPRINTF Args; \
} while (YYID (0))
YYFPRINTF
#define YYFPRINTF
Definition grammar.cc:1693

Definition at line 1696 of file grammar.cc.

# define YYDPRINTF(Args) \
do { \
if (yydebug) \
YYFPRINTF Args; \
} while (YYID (0))

## YYEMPTY

#define YYEMPTY (-2)

Definition at line 1591 of file grammar.cc.

## YYEOF

#define YYEOF 0

Definition at line 1592 of file grammar.cc.

## YYERRCODE

#define YYERRCODE 256

Definition at line 1635 of file grammar.cc.

## yyerrok

#define yyerrok (yyerrstatus = 0)

Definition at line 1589 of file grammar.cc.

## YYERROR

#define YYERROR goto yyerrorlab

Definition at line 1596 of file grammar.cc.

## YYERROR_VERBOSE

#define YYERROR_VERBOSE 0

Definition at line 252 of file grammar.cc.

## YYFAIL

#define YYFAIL goto yyerrlab

Definition at line 1606 of file grammar.cc.

## YYFINAL

#define YYFINAL 2

Definition at line 582 of file grammar.cc.

## YYFPRINTF

#define YYFPRINTF fprintf

Definition at line 1693 of file grammar.cc.

## YYFREE

#define YYFREE free

Definition at line 515 of file grammar.cc.

## YYID

#define YYID | ( |  | n | ) |

Value:
(n)

Definition at line 439 of file grammar.cc.

## YYINITDEPTH

#define YYINITDEPTH 200

Definition at line 1854 of file grammar.cc.

## YYLAST

#define YYLAST 2747

Definition at line 584 of file grammar.cc.

## YYLEX

#define YYLEX yylex (&yylval)

Definition at line 1685 of file grammar.cc.

## YYLLOC_DEFAULT

#define YYLLOC_DEFAULT | ( |  | Current,
|  |  | Rhs,
|  |  | N )

Value:
do \
if (YYID (N)) \
{ \
(Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
(Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
(Current).last_line = YYRHSLOC (Rhs, N).last_line; \
(Current).last_column = YYRHSLOC (Rhs, N).last_column; \
} \
else \
{ \
(Current).first_line = (Current).last_line = \
YYRHSLOC (Rhs, 0).last_line; \
(Current).first_column = (Current).last_column = \
YYRHSLOC (Rhs, 0).last_column; \
} \
while (YYID (0))
N
const CanonicalForm CFMap CFMap & N
Definition cfEzgcd.cc:56
YYRHSLOC
#define YYRHSLOC(Rhs, K)
Definition grammar.cc:1642

Definition at line 1644 of file grammar.cc.

# define YYLLOC_DEFAULT(Current, Rhs, N) \
do \
if (YYID (N)) \
{ \
(Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
(Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
(Current).last_line = YYRHSLOC (Rhs, N).last_line; \
(Current).last_column = YYRHSLOC (Rhs, N).last_column; \
} \
else \
{ \
(Current).first_line = (Current).last_line = \
YYRHSLOC (Rhs, 0).last_line; \
(Current).first_column = (Current).last_column = \
YYRHSLOC (Rhs, 0).last_column; \
} \
while (YYID (0))

## YYLSP_NEEDED

#define YYLSP_NEEDED 0

Definition at line 63 of file grammar.cc.

## YYMALLOC

#define YYMALLOC malloc

Definition at line 508 of file grammar.cc.

## YYMAXDEPTH

#define YYMAXDEPTH MAX_INT_VAL

Definition at line 166 of file grammar.cc.

## YYMAXUTOK

#define YYMAXUTOK 343

Definition at line 597 of file grammar.cc.

## YYNNTS

#define YYNNTS 44

Definition at line 589 of file grammar.cc.

## YYNRULES

#define YYNRULES 175

Definition at line 591 of file grammar.cc.

## YYNSTATES

#define YYNSTATES 398

Definition at line 593 of file grammar.cc.

## YYNTOKENS

#define YYNTOKENS 105

Definition at line 587 of file grammar.cc.

## YYPACT_NINF

#define YYPACT_NINF -361

Definition at line 925 of file grammar.cc.

## YYPOPSTACK

#define YYPOPSTACK | ( |  | N | ) |

Value:
(yyvsp -= (N), yyssp -= (N))

## YYPULL

#define YYPULL 1

Definition at line 60 of file grammar.cc.

## YYPURE

#define YYPURE 1

Definition at line 54 of file grammar.cc.

## YYPUSH

#define YYPUSH 0

Definition at line 57 of file grammar.cc.

## YYRECOVERING

#define YYRECOVERING | ( |  | ) |

Value:
(!!yyerrstatus)

Definition at line 1614 of file grammar.cc.

## YYRHSLOC

#define YYRHSLOC | ( |  | Rhs,
|  |  | K )

Value:
((Rhs)[K])

Definition at line 1642 of file grammar.cc.

## YYSIZE_MAXIMUM

#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)

Definition at line 416 of file grammar.cc.

## YYSIZE_T

#define YYSIZE_T size_t

Definition at line 410 of file grammar.cc.

## YYSKELETON_NAME

#define YYSKELETON_NAME "yacc.c"

Definition at line 51 of file grammar.cc.

## YYSTACK_ALLOC

#define YYSTACK_ALLOC YYMALLOC

Definition at line 494 of file grammar.cc.

## YYSTACK_ALLOC_MAXIMUM

#define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM

Definition at line 497 of file grammar.cc.

## YYSTACK_FREE

#define YYSTACK_FREE YYFREE

Definition at line 495 of file grammar.cc.

## YYTABLE_NINF

#define YYTABLE_NINF -155

Definition at line 984 of file grammar.cc.

## YYTERROR

#define YYTERROR 1

Definition at line 1634 of file grammar.cc.

## YYTOKEN_TABLE

#define YYTOKEN_TABLE 0

Definition at line 257 of file grammar.cc.

## YYTOKENTYPE

#define YYTOKENTYPE

Definition at line 263 of file grammar.cc.

## YYTRANSLATE

#define YYTRANSLATE | ( |  | YYX | ) |

Value:
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
yytranslate
static const yytype_uint8 yytranslate[]
Definition grammar.cc:603
YYUNDEFTOK
#define YYUNDEFTOK
Definition grammar.cc:596
YYMAXUTOK
#define YYMAXUTOK
Definition grammar.cc:597

Definition at line 599 of file grammar.cc.

#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)

## YYUNDEFTOK

#define YYUNDEFTOK 2

Definition at line 596 of file grammar.cc.

## YYUSE

#define YYUSE | ( |  | e | ) |

Value:
((void) (e))

Definition at line 432 of file grammar.cc.

## Typedef Documentation

## yytype_int16

typedef short int yytype_int16

Definition at line 399 of file grammar.cc.

## yytype_int8

typedef signed char yytype_int8

Definition at line 385 of file grammar.cc.

## yytype_uint16

typedef unsigned short int yytype_uint16

Definition at line 393 of file grammar.cc.

## yytype_uint8

typedef unsigned char yytype_uint8

Definition at line 378 of file grammar.cc.

## Enumeration Type Documentation

## yytokentype

enum yytokentype

Enumerator
DOTDOT |
EQUAL_EQUAL |
GE |
LE |
MINUSMINUS |
NOT |
NOTEQUAL |
PLUSPLUS |
COLONCOLON |
ARROW |
GRING_CMD |
BIGINTMAT_CMD |
BIGINTVEC_CMD |
INTMAT_CMD |
PROC_CMD |
RING_CMD |
BEGIN_RING |
BUCKET_CMD |
IDEAL_CMD |
MAP_CMD |
MATRIX_CMD |
MODUL_CMD |
NUMBER_CMD |
POLY_CMD |
RESOLUTION_CMD |
SMATRIX_CMD |
VECTOR_CMD |
BETTI_CMD |
E_CMD |
FETCH_CMD |
FREEMODULE_CMD |
KEEPRING_CMD |
IMAP_CMD |
KOSZUL_CMD |
MAXID_CMD |
MONOM_CMD |
PAR_CMD |
PREIMAGE_CMD |
VAR_CMD |
VALTVARS |
VMAXDEG |
VMAXMULT |
VNOETHER |
VMINPOLY |
END_RING |
CMD_1 |
CMD_2 |
CMD_3 |
CMD_12 |
CMD_13 |
CMD_23 |
CMD_123 |
CMD_M |
ROOT_DECL |
ROOT_DECL_LIST |
RING_DECL |
RING_DECL_LIST |
EXAMPLE_CMD |
EXPORT_CMD |
HELP_CMD |
KILL_CMD |
LIB_CMD |
LISTVAR_CMD |
SETRING_CMD |
TYPE_CMD |
STRINGTOK |
BLOCKTOK |
INT_CONST |
UNKNOWN_IDENT |
MONOM |
PROC_DEF |
APPLY |
ASSUME_CMD |
BREAK_CMD |
CONTINUE_CMD |
ELSE_CMD |
EVAL |
QUOTE |
FOR_CMD |
IF_CMD |
SYS_BREAK |
WHILE_CMD |
RETURN |
PARAMETER |
SYSVAR |
UMINUS |

Definition at line 266 of file grammar.cc.

{
DOTDOT = 258,
EQUAL_EQUAL = 259,
GE = 260,
LE = 261,
MINUSMINUS = 262,
NOT = 263,
NOTEQUAL = 264,
PLUSPLUS = 265,
COLONCOLON = 266,
ARROW = 267,
GRING_CMD = 268,
BIGINTMAT_CMD = 269,
BIGINTVEC_CMD = 270,
INTMAT_CMD = 271,
PROC_CMD = 272,
RING_CMD = 273,
BEGIN_RING = 274,
BUCKET_CMD = 275,
IDEAL_CMD = 276,
MAP_CMD = 277,
MATRIX_CMD = 278,
MODUL_CMD = 279,
NUMBER_CMD = 280,
POLY_CMD = 281,
RESOLUTION_CMD = 282,
SMATRIX_CMD = 283,
VECTOR_CMD = 284,
BETTI_CMD = 285,
E_CMD = 286,
FETCH_CMD = 287,
FREEMODULE_CMD = 288,
KEEPRING_CMD = 289,
IMAP_CMD = 290,
KOSZUL_CMD = 291,
MAXID_CMD = 292,
MONOM_CMD = 293,
PAR_CMD = 294,
PREIMAGE_CMD = 295,
VAR_CMD = 296,
VALTVARS = 297,
VMAXDEG = 298,
VMAXMULT = 299,
VNOETHER = 300,
VMINPOLY = 301,
END_RING = 302,
CMD_1 = 303,
CMD_2 = 304,
CMD_3 = 305,
CMD_12 = 306,
CMD_13 = 307,
CMD_23 = 308,
CMD_123 = 309,
CMD_M = 310,
ROOT_DECL = 311,
ROOT_DECL_LIST = 312,
RING_DECL = 313,
RING_DECL_LIST = 314,
EXAMPLE_CMD = 315,
EXPORT_CMD = 316,
HELP_CMD = 317,
KILL_CMD = 318,
LIB_CMD = 319,
LISTVAR_CMD = 320,
SETRING_CMD = 321,
TYPE_CMD = 322,
STRINGTOK = 323,
BLOCKTOK = 324,
INT_CONST = 325,
UNKNOWN_IDENT = 326,
MONOM = 327,
PROC_DEF = 328,
APPLY = 329,
ASSUME_CMD = 330,
BREAK_CMD = 331,
CONTINUE_CMD = 332,
ELSE_CMD = 333,
EVAL = 334,
QUOTE = 335,
FOR_CMD = 336,
IF_CMD = 337,
SYS_BREAK = 338,
WHILE_CMD = 339,
RETURN = 340,
PARAMETER = 341,
SYSVAR = 342,
UMINUS = 343
};
CMD_1
@ CMD_1
Definition grammar.cc:312
PLUSPLUS
@ PLUSPLUS
Definition grammar.cc:274
NOT
@ NOT
Definition grammar.cc:272
KILL_CMD
@ KILL_CMD
Definition grammar.cc:327
END_RING
@ END_RING
Definition grammar.cc:311
MINUSMINUS
@ MINUSMINUS
Definition grammar.cc:271
IDEAL_CMD
@ IDEAL_CMD
Definition grammar.cc:285
UMINUS
@ UMINUS
Definition grammar.cc:352
PARAMETER
@ PARAMETER
Definition grammar.cc:350
PAR_CMD
@ PAR_CMD
Definition grammar.cc:303
PREIMAGE_CMD
@ PREIMAGE_CMD
Definition grammar.cc:304
CMD_23
@ CMD_23
Definition grammar.cc:317
EXAMPLE_CMD
@ EXAMPLE_CMD
Definition grammar.cc:324
VALTVARS
@ VALTVARS
Definition grammar.cc:306
CMD_2
@ CMD_2
Definition grammar.cc:313
MATRIX_CMD
@ MATRIX_CMD
Definition grammar.cc:287
KEEPRING_CMD
@ KEEPRING_CMD
Definition grammar.cc:298
RING_DECL
@ RING_DECL
Definition grammar.cc:322
TYPE_CMD
@ TYPE_CMD
Definition grammar.cc:331
BUCKET_CMD
@ BUCKET_CMD
Definition grammar.cc:284
RING_DECL_LIST
@ RING_DECL_LIST
Definition grammar.cc:323
BIGINTMAT_CMD
@ BIGINTMAT_CMD
Definition grammar.cc:278
KOSZUL_CMD
@ KOSZUL_CMD
Definition grammar.cc:300
SYS_BREAK
@ SYS_BREAK
Definition grammar.cc:347
SETRING_CMD
@ SETRING_CMD
Definition grammar.cc:330
RETURN
@ RETURN
Definition grammar.cc:349
IMAP_CMD
@ IMAP_CMD
Definition grammar.cc:299
ARROW
@ ARROW
Definition grammar.cc:276
GE
@ GE
Definition grammar.cc:269
EQUAL_EQUAL
@ EQUAL_EQUAL
Definition grammar.cc:268
CMD_3
@ CMD_3
Definition grammar.cc:314
SYSVAR
@ SYSVAR
Definition grammar.cc:351
ROOT_DECL
@ ROOT_DECL
Definition grammar.cc:320
APPLY
@ APPLY
Definition grammar.cc:338
MAP_CMD
@ MAP_CMD
Definition grammar.cc:286
EVAL
@ EVAL
Definition grammar.cc:343
INT_CONST
@ INT_CONST
Definition grammar.cc:334
PROC_CMD
@ PROC_CMD
Definition grammar.cc:281
BLOCKTOK
@ BLOCKTOK
Definition grammar.cc:333
LE
@ LE
Definition grammar.cc:270
BEGIN_RING
@ BEGIN_RING
Definition grammar.cc:283
INTMAT_CMD
@ INTMAT_CMD
Definition grammar.cc:280
MONOM
@ MONOM
Definition grammar.cc:336
LISTVAR_CMD
@ LISTVAR_CMD
Definition grammar.cc:329
UNKNOWN_IDENT
@ UNKNOWN_IDENT
Definition grammar.cc:335
LIB_CMD
@ LIB_CMD
Definition grammar.cc:328
ROOT_DECL_LIST
@ ROOT_DECL_LIST
Definition grammar.cc:321
BREAK_CMD
@ BREAK_CMD
Definition grammar.cc:340
ELSE_CMD
@ ELSE_CMD
Definition grammar.cc:342
VMAXMULT
@ VMAXMULT
Definition grammar.cc:308
MODUL_CMD
@ MODUL_CMD
Definition grammar.cc:288
CMD_123
@ CMD_123
Definition grammar.cc:318
ASSUME_CMD
@ ASSUME_CMD
Definition grammar.cc:339
IF_CMD
@ IF_CMD
Definition grammar.cc:346
MONOM_CMD
@ MONOM_CMD
Definition grammar.cc:302
VMAXDEG
@ VMAXDEG
Definition grammar.cc:307
SMATRIX_CMD
@ SMATRIX_CMD
Definition grammar.cc:292
FOR_CMD
@ FOR_CMD
Definition grammar.cc:345
VECTOR_CMD
@ VECTOR_CMD
Definition grammar.cc:293
RESOLUTION_CMD
@ RESOLUTION_CMD
Definition grammar.cc:291
NOTEQUAL
@ NOTEQUAL
Definition grammar.cc:273
CMD_12
@ CMD_12
Definition grammar.cc:315
CONTINUE_CMD
@ CONTINUE_CMD
Definition grammar.cc:341
VAR_CMD
@ VAR_CMD
Definition grammar.cc:305
STRINGTOK
@ STRINGTOK
Definition grammar.cc:332
BIGINTVEC_CMD
@ BIGINTVEC_CMD
Definition grammar.cc:279
DOTDOT
@ DOTDOT
Definition grammar.cc:267
PROC_DEF
@ PROC_DEF
Definition grammar.cc:337
COLONCOLON
@ COLONCOLON
Definition grammar.cc:275
CMD_13
@ CMD_13
Definition grammar.cc:316
WHILE_CMD
@ WHILE_CMD
Definition grammar.cc:348
HELP_CMD
@ HELP_CMD
Definition grammar.cc:326
NUMBER_CMD
@ NUMBER_CMD
Definition grammar.cc:289
MAXID_CMD
@ MAXID_CMD
Definition grammar.cc:301
POLY_CMD
@ POLY_CMD
Definition grammar.cc:290
VMINPOLY
@ VMINPOLY
Definition grammar.cc:310
CMD_M
@ CMD_M
Definition grammar.cc:319
RING_CMD
@ RING_CMD
Definition grammar.cc:282
QUOTE
@ QUOTE
Definition grammar.cc:344
VNOETHER
@ VNOETHER
Definition grammar.cc:309
E_CMD
@ E_CMD
Definition grammar.cc:295
FETCH_CMD
@ FETCH_CMD
Definition grammar.cc:296
GRING_CMD
@ GRING_CMD
Definition grammar.cc:277
FREEMODULE_CMD
@ FREEMODULE_CMD
Definition grammar.cc:297
EXPORT_CMD
@ EXPORT_CMD
Definition grammar.cc:325
BETTI_CMD
@ BETTI_CMD
Definition grammar.cc:294

## Function Documentation

## yy_reduce_print()

void yy_reduce_print | ( | YYSTYPE * | yyvsp,
|  | int | yyrule )

static

Definition at line 1811 of file grammar.cc.

{
int yynrhs = yyr2[yyrule];
int yyi;
unsigned long int yylno = yyrline[yyrule];
YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
yyrule - 1, yylno);
/* The symbols being reduced. */
for (yyi = 0; yyi < yynrhs; yyi++)
{
YYFPRINTF (stderr, " $%d = ", yyi + 1);
yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
&(yyvsp[(yyi + 1) - (yynrhs)])
);
YYFPRINTF (stderr, "\n");
}
}
yyrline
static const yytype_uint16 yyrline[]
Definition grammar.cc:744
yy_symbol_print
static void yy_symbol_print(FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
Definition grammar.cc:1754
yyr2
static const yytype_uint8 yyr2[]
Definition grammar.cc:844
yyprhs
static const yytype_uint16 yyprhs[]
Definition grammar.cc:645
yyrhs
static const yytype_int16 yyrhs[]
Definition grammar.cc:668

## yy_stack_print()

void yy_stack_print | ( | yytype_int16 * | yybottom,
|  | yytype_int16 * | yytop )

static

Definition at line 1780 of file grammar.cc.

{
YYFPRINTF (stderr, "Stack now");
for (; yybottom <= yytop; yybottom++)
{
int yybot = *yybottom;
YYFPRINTF (stderr, " %d", yybot);
}
YYFPRINTF (stderr, "\n");
}

## yy_symbol_print()

void yy_symbol_print | ( | FILE * | yyoutput,
|  | int | yytype,
|  | YYSTYPE const *const | yyvaluep )

static

Definition at line 1754 of file grammar.cc.

{
if (yytype < YYNTOKENS)
YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
else
YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
yy_symbol_value_print (yyoutput, yytype, yyvaluep);
YYFPRINTF (yyoutput, ")");
}
YYNTOKENS
#define YYNTOKENS
Definition grammar.cc:587
yy_symbol_value_print
static void yy_symbol_value_print(FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
Definition grammar.cc:1722
yytname
static const char *const yytname[]
Definition grammar.cc:770

## yy_symbol_value_print()

void yy_symbol_value_print | ( | FILE * | yyoutput,
|  | int | yytype,
|  | YYSTYPE const *const | yyvaluep )

static

Definition at line 1722 of file grammar.cc.

{
if (!yyvaluep)
return;
# ifdef YYPRINT
if (yytype < YYNTOKENS)
YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
# else
YYUSE (yyoutput);
# endif
switch (yytype)
{
default:
break;
}
}
YYUSE
#define YYUSE(e)
Definition grammar.cc:432

## yydestruct()

void yydestruct | ( | const char * | yymsg,
|  | int | yytype,
|  | YYSTYPE * | yyvaluep )

static

Definition at line 2089 of file grammar.cc.

{
YYUSE (yyvaluep);
if (!yymsg)
yymsg = "Deleting";
YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
switch (yytype)
{
default:
break;
}
}
YY_SYMBOL_PRINT
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
Definition grammar.cc:1702

## yyerror()

void yyerror | ( | const char * | fmt | ) |

Definition at line 187 of file grammar.cc.

{
BOOLEAN old_errorreported=errorreported;
errorreported = TRUE;
if (currid!=NULL)
{
killid(currid,&IDROOT);
currid = NULL;
}
if(inerror==0)
{
{
if ((strlen(fmt)>1)
&& (strncmp(fmt,"parse",5)!=0)
&& (strncmp(fmt,"syntax",6)!=0))
WerrorS(fmt);
Werror( "error occurred in or before %s line %d: `%s`"
,VoiceName(), yylineno, my_yylinebuf);
}
if (cmdtok!=0)
{
const char *s=Tok2Cmdname(cmdtok);
if (expected_parms)
{
Werror("expected %s-expression. type \'help %s;\'",s,s);
}
else
{
Werror("wrong type declaration. type \'help %s;\'",s);
}
}
if (!old_errorreported && (lastreserved!=NULL))
{
Werror("last reserved name was `%s`",lastreserved);
}
inerror=1;
}
if ((currentVoice!=NULL)
&& (currentVoice->prev!=NULL)
&& (myynest>0)
#ifdef HAVE_SDB
&& ((sdb_flags &1)==0)
#endif
)
{
Werror("leaving %s (%d)",VoiceName(), VoiceLine());
}
}
BOOLEAN
int BOOLEAN
Definition auxiliary.h:88
TRUE
#define TRUE
Definition auxiliary.h:101
s
const CanonicalForm int s
Definition facAbsFact.cc:51
errorreported
VAR short errorreported
Definition feFopen.cc:23
yylineno
VAR int yylineno
Definition febase.cc:40
my_yylinebuf
VAR char my_yylinebuf[80]
Definition febase.cc:44
myynest
VAR int myynest
Definition febase.cc:41
currentVoice
VAR Voice * currentVoice
Definition fevoices.cc:49
VoiceName
const char * VoiceName()
Definition fevoices.cc:58
VoiceLine
int VoiceLine()
Definition fevoices.cc:66
Tok2Cmdname
const char * Tok2Cmdname(int tok)
Definition gentable.cc:137
cmdtok
int cmdtok
Definition grammar.cc:174
expected_parms
BOOLEAN expected_parms
Definition grammar.cc:173
currid
const char * currid
Definition grammar.cc:171
inerror
EXTERN_VAR int inerror
Definition interpreter_support.cc:21
killid
void killid(const char *id, idhdl *ih)
Definition ipid.cc:387
IDROOT
#define IDROOT
Definition ipid.h:19
lastreserved
const char * lastreserved
Definition ipshell.cc:83
NULL
#define NULL
Definition omList.c:12
Werror
void Werror(const char *fmt,...)
Definition reporter.cc:189
sdb_flags
VAR int sdb_flags
Definition sdb.cc:31
HAVE_SDB
#define HAVE_SDB
Definition sdb.h:10

## yyparse()

int yyparse | ( | void |  | ) |

Definition at line 2149 of file grammar.cc.

{
/* The lookahead symbol. */
int yychar;
/* The semantic value of the lookahead symbol. */
YYSTYPE yylval;
/* Number of syntax errors so far. */
int yynerrs;
int yystate;
/* Number of tokens to shift before error messages enabled. */
int yyerrstatus;
/* The stacks and their tools:
`yyss': related to states.
`yyvs': related to semantic values.
Refer to the stacks thru separate pointers, to allow yyoverflow
to reallocate them elsewhere. */
/* The state stack. */
yytype_int16 yyssa[YYINITDEPTH];
yytype_int16 *yyss;
yytype_int16 *yyssp;
/* The semantic value stack. */
YYSTYPE yyvsa[YYINITDEPTH];
YYSTYPE *yyvs;
YYSTYPE *yyvsp;
YYSIZE_T yystacksize;
int yyn;
int yyresult;
/* Lookahead token as an internal (translated) token number. */
int yytoken;
/* The variables used to return semantic value and location from the
action routines. */
YYSTYPE yyval;
#if YYERROR_VERBOSE
/* Buffer for error messages, and its allocated size. */
char yymsgbuf[128];
char *yymsg = yymsgbuf;
YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
#endif
#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
/* The number of symbols on the RHS of the reduced rule.
Keep to zero when no symbol should be popped. */
int yylen = 0;
yytoken = 0;
yyss = yyssa;
yyvs = yyvsa;
yystacksize = YYINITDEPTH;
YYDPRINTF ((stderr, "Starting parse\n"));
yystate = 0;
yyerrstatus = 0;
yynerrs = 0;
yychar = YYEMPTY; /* Cause a token to be read. */
/* Initialize stack pointers.
Waste one element of value and location stack
so that they stay on the same level as the state stack.
The wasted elements are never initialized. */
yyssp = yyss;
yyvsp = yyvs;
goto yysetstate;
/*------------------------------------------------------------.
| yynewstate -- Push a new state, which is found in yystate. |
`------------------------------------------------------------*/
yynewstate:
/* In all cases, when you get here, the value and location stacks
have just been pushed. So pushing a state here evens the stacks. */
yyssp++;
yysetstate:
*yyssp = yystate;
if (yyss + yystacksize - 1 <= yyssp)
{
/* Get the current used size of the three stacks, in elements. */
YYSIZE_T yysize = yyssp - yyss + 1;
#ifdef yyoverflow
{
/* Give user a chance to reallocate the stack. Use copies of
these so that the &'s don't force the real ones into
memory. */
YYSTYPE *yyvs1 = yyvs;
yytype_int16 *yyss1 = yyss;
/* Each stack pointer address is followed by the size of the
data in use in that stack, in bytes. This used to be a
conditional around just the two extra args, but that might
be undefined if yyoverflow is a macro. */
yyoverflow (YY_("memory exhausted"),
&yyss1, yysize * sizeof (*yyssp),
&yyvs1, yysize * sizeof (*yyvsp),
&yystacksize);
yyss = yyss1;
yyvs = yyvs1;
}
#else /* no yyoverflow */
# ifndef YYSTACK_RELOCATE
goto yyexhaustedlab;
# else
/* Extend the stack our own way. */
if (YYMAXDEPTH <= yystacksize)
goto yyexhaustedlab;
yystacksize *= 2;
if (YYMAXDEPTH < yystacksize)
yystacksize = YYMAXDEPTH;
{
yytype_int16 *yyss1 = yyss;
union yyalloc *yyptr =
(union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
if (! yyptr)
goto yyexhaustedlab;
YYSTACK_RELOCATE (yyss_alloc, yyss);
YYSTACK_RELOCATE (yyvs_alloc, yyvs);
# undef YYSTACK_RELOCATE
if (yyss1 != yyssa)
YYSTACK_FREE (yyss1);
}
# endif
#endif /* no yyoverflow */
yyssp = yyss + yysize - 1;
yyvsp = yyvs + yysize - 1;
YYDPRINTF ((stderr, "Stack size increased to %lu\n",
(unsigned long int) yystacksize));
if (yyss + yystacksize - 1 <= yyssp)
YYABORT;
}
YYDPRINTF ((stderr, "Entering state %d\n", yystate));
if (yystate == YYFINAL)
YYACCEPT;
goto yybackup;
/*-----------.
| yybackup. |
`-----------*/
yybackup:
/* Do appropriate processing given the current state. Read a
lookahead token if we need one and don't already have one. */
/* First try to decide what to do without reference to lookahead token. */
yyn = yypact[yystate];
if (yyn == YYPACT_NINF)
goto yydefault;
/* Not known => get a lookahead token if don't already have one. */
/* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
if (yychar == YYEMPTY)
{
YYDPRINTF ((stderr, "Reading a token: "));
yychar = YYLEX;
}
if (yychar <= YYEOF)
{
yychar = yytoken = YYEOF;
YYDPRINTF ((stderr, "Now at end of input.\n"));
}
else
{
yytoken = YYTRANSLATE (yychar);
YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
}
/* If the proper action on seeing token YYTOKEN is to reduce or to
detect an error, take that action. */
yyn += yytoken;
if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
goto yydefault;
yyn = yytable[yyn];
if (yyn <= 0)
{
if (yyn == 0 || yyn == YYTABLE_NINF)
goto yyerrlab;
yyn = -yyn;
goto yyreduce;
}
/* Count tokens shifted since error; after three, turn off error
status. */
if (yyerrstatus)
yyerrstatus--;
/* Shift the lookahead token. */
YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
/* Discard the shifted token. */
yychar = YYEMPTY;
yystate = yyn;
*++yyvsp = yylval;
goto yynewstate;
/*-----------------------------------------------------------.
| yydefault -- do the default action for the current state. |
`-----------------------------------------------------------*/
yydefault:
yyn = yydefact[yystate];
if (yyn == 0)
goto yyerrlab;
goto yyreduce;
/*-----------------------------.
| yyreduce -- Do a reduction. |
`-----------------------------*/
yyreduce:
/* yyn is the number of a rule to reduce with. */
yylen = yyr2[yyn];
/* If YYLEN is nonzero, implement the default value of the action:
`$$ = $1'.
Otherwise, the following line sets YYVAL to garbage.
This behavior is undocumented and Bison
users should not rely upon it. Assigning to YYVAL
unconditionally makes the parser a bit smaller, and it avoids a
GCC warning that YYVAL may be used uninitialized. */
yyval = yyvsp[1-yylen];
YY_REDUCE_PRINT (yyn);
switch (yyn)
{
case 3:
/* Line 1464 of yacc.c */
#line 322 "grammar.y"
{
if (timerv)
{
writeTime("used time:");
startTimer();
}
if (rtimerv)
{
writeRTime("used real time:");
startRTimer();
}
prompt_char = '>';
#ifdef HAVE_SDB
if (sdb_flags & 2) { sdb_flags=1; YYERROR; }
#endif
if(siCntrlc)
{
WerrorS("abort...");
while((currentVoice!=NULL) && (currentVoice->prev!=NULL)) exitVoice();
if (currentVoice!=NULL) currentVoice->ifsw=0;
}
if (errorreported) /* also catches abort... */
{
yyerror("");
}
if (inerror==2) PrintLn();
errorreported = inerror = cmdtok = 0;
lastreserved = currid = NULL;
expected_parms = siCntrlc = FALSE;
;}
break;
case 5:
/* Line 1464 of yacc.c */
#line 357 "grammar.y"
{currentVoice->ifsw=0;;}
break;
case 6:
/* Line 1464 of yacc.c */
#line 359 "grammar.y"
{ (yyvsp[(1) - (2)].lv).CleanUp(); currentVoice->ifsw=0;;}
break;
case 7:
/* Line 1464 of yacc.c */
#line 361 "grammar.y"
{
YYACCEPT;
;}
break;
case 8:
/* Line 1464 of yacc.c */
#line 365 "grammar.y"
{
currentVoice->ifsw=0;
iiDebug();
;}
break;
case 9:
/* Line 1464 of yacc.c */
#line 370 "grammar.y"
{currentVoice->ifsw=0;;}
break;
case 10:
/* Line 1464 of yacc.c */
#line 372 "grammar.y"
{
#ifdef SIQ
siq=0;
#endif
yyInRingConstruction = FALSE;
currentVoice->ifsw=0;
if (inerror)
{
/* bison failed here*/
if ((inerror!=3) && ((yyvsp[(1) - (2)].i)<UMINUS) && ((yyvsp[(1) - (2)].i)>' '))
{
// 1: yyerror called
// 2: scanner put actual string
// 3: error rule put token+\n
inerror=3;
Print(" error at token `%s`\n",iiTwoOps((yyvsp[(1) - (2)].i)));
}
/**/
}
if (!errorreported) WerrorS("...parse error");
yyerror("");
yyerrok;
#ifdef HAVE_SDB
if ((sdb_flags & 1) && currentVoice->pi!=NULL)
{
currentVoice->pi->trace_flag |=1;
}
else
#endif
if (myynest>0)
{
feBufferTypes t=currentVoice->Typ();
//PrintS("leaving yyparse\n");
exitBuffer(BT_proc);
if (t==BT_example)
YYACCEPT;
else
YYABORT;
}
else if (currentVoice->prev!=NULL)
{
exitVoice();
}
#ifdef HAVE_SDB
if (sdb_flags &2) sdb_flags=1;
#endif
;}
break;
case 18:
/* Line 1464 of yacc.c */
#line 430 "grammar.y"
{if (currentVoice!=NULL) currentVoice->ifsw=0;;}
break;
case 19:
/* Line 1464 of yacc.c */
#line 433 "grammar.y"
{ omFree((ADDRESS)(yyvsp[(2) - (2)].name)); ;}
break;
case 29:
/* Line 1464 of yacc.c */
#line 448 "grammar.y"
{
if(iiAssign(&(yyvsp[(1) - (2)].lv),&(yyvsp[(2) - (2)].lv))) YYERROR;
;}
break;
case 30:
/* Line 1464 of yacc.c */
#line 455 "grammar.y"
{
if (currRing==NULL) MYYERROR("no ring active (7)");
syMakeMonom(&(yyval.lv),(yyvsp[(1) - (1)].name));
;}
break;
case 31:
/* Line 1464 of yacc.c */
#line 460 "grammar.y"
{
syMake(&(yyval.lv),(yyvsp[(1) - (1)].name));
;}
break;
case 32:
/* Line 1464 of yacc.c */
#line 464 "grammar.y"
{
if(iiExprArith2(&(yyval.lv), &(yyvsp[(1) - (3)].lv), COLONCOLON, &(yyvsp[(3) - (3)].lv))) YYERROR;
;}
break;
case 33:
/* Line 1464 of yacc.c */
#line 468 "grammar.y"
{
if(iiExprArith2(&(yyval.lv), &(yyvsp[(1) - (3)].lv), '.', &(yyvsp[(3) - (3)].lv))) YYERROR;
;}
break;
case 34:
/* Line 1464 of yacc.c */
#line 472 "grammar.y"
{
if(iiExprArith1(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'(')) YYERROR;
;}
break;
case 35:
/* Line 1464 of yacc.c */
#line 476 "grammar.y"
{
if ((yyvsp[(1) - (4)].lv).next==NULL)
{
(yyvsp[(1) - (4)].lv).next=(leftv)omAllocBin(sleftv_bin);
memcpy((yyvsp[(1) - (4)].lv).next,&(yyvsp[(3) - (4)].lv),sizeof(sleftv));
if(iiExprArithM(&(yyval.lv),&(yyvsp[(1) - (4)].lv),'(')) YYERROR;
}
else if ((yyvsp[(1) - (4)].lv).rtyp==UNKNOWN)
{ // for x(i)(j)
if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (4)].lv),'(',&(yyvsp[(3) - (4)].lv))) YYERROR;
}
else YYERROR;
;}
break;
case 36:
/* Line 1464 of yacc.c */
#line 490 "grammar.y"
{
if (currRing==NULL) MYYERROR("no ring active (8)");
int j = 0;
memset(&(yyval.lv),0,sizeof(sleftv));
(yyval.lv).rtyp=VECTOR_CMD;
leftv v = &(yyvsp[(2) - (3)].lv);
while (v!=NULL)
{
int i,t;
sleftv tmp;
memset(&tmp,0,sizeof(tmp));
i=iiTestConvert((t=v->Typ()),POLY_CMD);
if((i==0) || (iiConvert(t /*v->Typ()*/,POLY_CMD,i,v,&tmp)))
{
pDelete((poly *)&(yyval.lv).data);
(yyvsp[(2) - (3)].lv).CleanUp();
MYYERROR("expected '[poly,...'");
}
poly p = (poly)tmp.CopyD(POLY_CMD);
pSetCompP(p,++j);
(yyval.lv).data = (void *)pAdd((poly)(yyval.lv).data,p);
v->next=tmp.next;tmp.next=NULL;
tmp.CleanUp();
v=v->next;
}
(yyvsp[(2) - (3)].lv).CleanUp();
;}
break;
case 37:
/* Line 1464 of yacc.c */
#line 518 "grammar.y"
{
memset(&(yyval.lv),0,sizeof((yyval.lv)));
int i = atoi((yyvsp[(1) - (1)].name));
/*remember not to omFree($1)
*because it is a part of the scanner buffer*/
(yyval.lv).rtyp = INT_CMD;
(yyval.lv).data = (void *)(long)i;
/* check: out of range input */
int l = strlen((yyvsp[(1) - (1)].name))+2;
number n;
if (l >= MAX_INT_LEN)
{
char tmp[MAX_INT_LEN+5];
snprintf(tmp,MAX_INT_LEN+5,"%d",i);
if (strcmp(tmp,(yyvsp[(1) - (1)].name))!=0)
{
n_Read((yyvsp[(1) - (1)].name),&n,coeffs_BIGINT);
(yyval.lv).rtyp=BIGINT_CMD;
(yyval.lv).data = n;
}
}
;}
break;
case 38:
/* Line 1464 of yacc.c */
#line 542 "grammar.y"
{
memset(&(yyval.lv),0,sizeof((yyval.lv)));
(yyval.lv).rtyp = (yyvsp[(1) - (1)].i);
(yyval.lv).data = (yyval.lv).Data();
;}
break;
case 39:
/* Line 1464 of yacc.c */
#line 548 "grammar.y"
{
memset(&(yyval.lv),0,sizeof((yyval.lv)));
(yyval.lv).rtyp = STRING_CMD;
(yyval.lv).data = (yyvsp[(1) - (1)].name);
;}
break;
case 40:
/* Line 1464 of yacc.c */
#line 554 "grammar.y"
{
if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
;}
break;
case 41:
/* Line 1464 of yacc.c */
#line 558 "grammar.y"
{
if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
;}
break;
case 42:
/* Line 1464 of yacc.c */
#line 562 "grammar.y"
{
if(iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
;}
break;
case 43:
/* Line 1464 of yacc.c */
#line 566 "grammar.y"
{
if(iiExprArithM(&(yyval.lv),NULL,(yyvsp[(1) - (3)].i))) YYERROR;
;}
break;
case 44:
/* Line 1464 of yacc.c */
#line 570 "grammar.y"
{
if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
;}
break;
case 45:
/* Line 1464 of yacc.c */
#line 574 "grammar.y"
{
if(iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
;}
break;
case 46:
/* Line 1464 of yacc.c */
#line 578 "grammar.y"
{
if(iiExprArithM(&(yyval.lv),NULL,(yyvsp[(1) - (3)].i))) YYERROR;
;}
break;
case 47:
/* Line 1464 of yacc.c */
#line 582 "grammar.y"
{
if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
;}
break;
case 48:
/* Line 1464 of yacc.c */
#line 586 "grammar.y"
{
if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
;}
break;
case 49:
/* Line 1464 of yacc.c */
#line 590 "grammar.y"
{
if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
;}
break;
case 50:
/* Line 1464 of yacc.c */
#line 594 "grammar.y"
{
if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
;}
break;
case 51:
/* Line 1464 of yacc.c */
#line 598 "grammar.y"
{
if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
;}
break;
case 52:
/* Line 1464 of yacc.c */
#line 602 "grammar.y"
{
if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
;}
break;
case 53:
/* Line 1464 of yacc.c */
#line 606 "grammar.y"
{
if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
;}
break;
case 54:
/* Line 1464 of yacc.c */
#line 610 "grammar.y"
{
if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
;}
break;
case 55:
/* Line 1464 of yacc.c */
#line 614 "grammar.y"
{
if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
;}
break;
case 56:
/* Line 1464 of yacc.c */
#line 618 "grammar.y"
{
if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
;}
break;
case 57:
/* Line 1464 of yacc.c */
#line 622 "grammar.y"
{
if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
;}
break;
case 58:
/* Line 1464 of yacc.c */
#line 626 "grammar.y"
{
if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
;}
break;
case 59:
/* Line 1464 of yacc.c */
#line 630 "grammar.y"
{
if(iiExprArithM(&(yyval.lv),NULL,(yyvsp[(1) - (3)].i))) YYERROR;
;}
break;
case 60:
/* Line 1464 of yacc.c */
#line 634 "grammar.y"
{
int b=iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i)); // handle branchTo
if (b==TRUE) YYERROR;
if (b==2) YYACCEPT;
;}
break;
case 61:
/* Line 1464 of yacc.c */
#line 640 "grammar.y"
{
if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
;}
break;
case 62:
/* Line 1464 of yacc.c */
#line 644 "grammar.y"
{
if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
;}
break;
case 63:
/* Line 1464 of yacc.c */
#line 648 "grammar.y"
{
if(iiExprArith3(&(yyval.lv),RING_CMD,&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
;}
break;
case 64:
/* Line 1464 of yacc.c */
#line 652 "grammar.y"
{
if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),RING_CMD)) YYERROR;
;}
break;
case 65:
/* Line 1464 of yacc.c */
#line 656 "grammar.y"
{
if (iiARROW(&(yyval.lv),(yyvsp[(1) - (3)].name),(yyvsp[(3) - (3)].name))) YYERROR;
omFree((ADDRESS)(yyvsp[(3) - (3)].name));
;}
break;
case 66:
/* Line 1464 of yacc.c */
#line 660 "grammar.y"
{ (yyval.lv) = (yyvsp[(2) - (3)].lv); ;}
break;
case 67:
/* Line 1464 of yacc.c */
#line 665 "grammar.y"
{
leftv v = &(yyvsp[(1) - (3)].lv);
while (v->next!=NULL)
{
v=v->next;
}
v->next = (leftv)omAllocBin(sleftv_bin);
memcpy(v->next,&((yyvsp[(3) - (3)].lv)),sizeof(sleftv));
(yyval.lv) = (yyvsp[(1) - (3)].lv);
;}
break;
case 71:
/* Line 1464 of yacc.c */
#line 681 "grammar.y"
{
if(iiExprArith3(&(yyval.lv),'[',&(yyvsp[(1) - (6)].lv),&(yyvsp[(3) - (6)].lv),&(yyvsp[(5) - (6)].lv))) YYERROR;
;}
break;
case 72:
/* Line 1464 of yacc.c */
#line 685 "grammar.y"
{
if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (4)].lv),'[',&(yyvsp[(3) - (4)].lv))) YYERROR;
;}
break;
case 73:
/* Line 1464 of yacc.c */
#line 689 "grammar.y"
{
if (iiApply(&(yyval.lv), &(yyvsp[(3) - (6)].lv), (yyvsp[(5) - (6)].i), NULL)) YYERROR;
;}
break;
case 74:
/* Line 1464 of yacc.c */
#line 693 "grammar.y"
{
if (iiApply(&(yyval.lv), &(yyvsp[(3) - (6)].lv), (yyvsp[(5) - (6)].i), NULL)) YYERROR;
;}
break;
case 75:
/* Line 1464 of yacc.c */
#line 697 "grammar.y"
{
if (iiApply(&(yyval.lv), &(yyvsp[(3) - (6)].lv), (yyvsp[(5) - (6)].i), NULL)) YYERROR;
;}
break;
case 76:
/* Line 1464 of yacc.c */
#line 701 "grammar.y"
{
if (iiApply(&(yyval.lv), &(yyvsp[(3) - (6)].lv), (yyvsp[(5) - (6)].i), NULL)) YYERROR;
;}
break;
case 77:
/* Line 1464 of yacc.c */
#line 705 "grammar.y"
{
if (iiApply(&(yyval.lv), &(yyvsp[(3) - (6)].lv), (yyvsp[(5) - (6)].i), NULL)) YYERROR;
;}
break;
case 78:
/* Line 1464 of yacc.c */
#line 709 "grammar.y"
{
if (iiApply(&(yyval.lv), &(yyvsp[(3) - (6)].lv), 0, &(yyvsp[(5) - (6)].lv))) YYERROR;
;}
break;
case 79:
/* Line 1464 of yacc.c */
#line 713 "grammar.y"
{
(yyval.lv)=(yyvsp[(2) - (3)].lv);
;}
break;
case 80:
/* Line 1464 of yacc.c */
#line 717 "grammar.y"
{
#ifdef SIQ
siq++;
if (siq>0)
{ if (iiExprArith2(&(yyval.lv),&(yyvsp[(2) - (5)].lv),'=',&(yyvsp[(4) - (5)].lv))) YYERROR; }
else
#endif
{
memset(&(yyval.lv),0,sizeof((yyval.lv)));
(yyval.lv).rtyp=NONE;
if (iiAssign(&(yyvsp[(2) - (5)].lv),&(yyvsp[(4) - (5)].lv))) YYERROR;
}
#ifdef SIQ
siq--;
#endif
;}
break;
case 81:
/* Line 1464 of yacc.c */
#line 734 "grammar.y"
{
iiTestAssume(&(yyvsp[(2) - (5)].lv),&(yyvsp[(4) - (5)].lv));
memset(&(yyval.lv),0,sizeof((yyval.lv)));
(yyval.lv).rtyp=NONE;
;}
break;
case 82:
/* Line 1464 of yacc.c */
#line 740 "grammar.y"
{
#ifdef SIQ
siq--;
#endif
;}
break;
case 83:
/* Line 1464 of yacc.c */
#line 746 "grammar.y"
{
#ifdef SIQ
if (siq<=0) (yyvsp[(4) - (5)].lv).Eval();
#endif
(yyval.lv)=(yyvsp[(4) - (5)].lv);
#ifdef SIQ
siq++;
#endif
;}
break;
case 84:
/* Line 1464 of yacc.c */
#line 758 "grammar.y"
{
#ifdef SIQ
siq++;
#endif
;}
break;
case 85:
/* Line 1464 of yacc.c */
#line 766 "grammar.y"
{
#ifdef SIQ
siq++;
#endif
;}
break;
case 86:
/* Line 1464 of yacc.c */
#line 774 "grammar.y"
{
#ifdef SIQ
siq--;
#endif
;}
break;
case 87:
/* Line 1464 of yacc.c */
#line 783 "grammar.y"
{
if(iiExprArith1(&(yyval.lv),&(yyvsp[(1) - (2)].lv),PLUSPLUS)) YYERROR;
;}
break;
case 88:
/* Line 1464 of yacc.c */
#line 787 "grammar.y"
{
if(iiExprArith1(&(yyval.lv),&(yyvsp[(1) - (2)].lv),MINUSMINUS)) YYERROR;
;}
break;
case 89:
/* Line 1464 of yacc.c */
#line 791 "grammar.y"
{
if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'+',&(yyvsp[(3) - (3)].lv))) YYERROR;
;}
break;
case 90:
/* Line 1464 of yacc.c */
#line 795 "grammar.y"
{
if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'-',&(yyvsp[(3) - (3)].lv))) YYERROR;
;}
break;
case 91:
/* Line 1464 of yacc.c */
#line 799 "grammar.y"
{ /* also for *,% */
if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].i),&(yyvsp[(3) - (3)].lv))) YYERROR;
;}
break;
case 92:
/* Line 1464 of yacc.c */
#line 803 "grammar.y"
{
if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'^',&(yyvsp[(3) - (3)].lv))) YYERROR;
;}
break;
case 93:
/* Line 1464 of yacc.c */
#line 807 "grammar.y"
{ /* also for > */
if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].i),&(yyvsp[(3) - (3)].lv))) YYERROR;
;}
break;
case 94:
/* Line 1464 of yacc.c */
#line 811 "grammar.y"
{ /* also for |*/
if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].i),&(yyvsp[(3) - (3)].lv))) YYERROR;
;}
break;
case 95:
/* Line 1464 of yacc.c */
#line 815 "grammar.y"
{
if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),NOTEQUAL,&(yyvsp[(3) - (3)].lv))) YYERROR;
;}
break;
case 96:
/* Line 1464 of yacc.c */
#line 819 "grammar.y"
{
if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),EQUAL_EQUAL,&(yyvsp[(3) - (3)].lv))) YYERROR;
;}
break;
case 97:
/* Line 1464 of yacc.c */
#line 823 "grammar.y"
{
if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),DOTDOT,&(yyvsp[(3) - (3)].lv))) YYERROR;
;}
break;
case 98:
/* Line 1464 of yacc.c */
#line 827 "grammar.y"
{
if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),':',&(yyvsp[(3) - (3)].lv))) YYERROR;
;}
break;
case 99:
/* Line 1464 of yacc.c */
#line 831 "grammar.y"
{
if (siq>0)
{ if (iiExprArith1(&(yyval.lv),&(yyvsp[(2) - (2)].lv),NOT)) YYERROR; }
else
{
memset(&(yyval.lv),0,sizeof((yyval.lv)));
int i; TESTSETINT((yyvsp[(2) - (2)].lv),i);
(yyval.lv).rtyp = INT_CMD;
(yyval.lv).data = (void *)(long)(i == 0 ? 1 : 0);
}
;}
break;
case 100:
/* Line 1464 of yacc.c */
#line 843 "grammar.y"
{
if(iiExprArith1(&(yyval.lv),&(yyvsp[(2) - (2)].lv),'-')) YYERROR;
;}
break;
case 102:
/* Line 1464 of yacc.c */
#line 851 "grammar.y"
{
if ((yyvsp[(1) - (2)].lv).rtyp==0)
{
Werror("`%s` is undefined",(yyvsp[(1) - (2)].lv).Fullname());
YYERROR;
}
else if (((yyvsp[(1) - (2)].lv).rtyp==MODUL_CMD)
// matrix m; m[2]=...
&& ((yyvsp[(1) - (2)].lv).e!=NULL) && ((yyvsp[(1) - (2)].lv).e->next==NULL))
{
MYYERROR("matrix must have 2 indices");
}
(yyval.lv) = (yyvsp[(1) - (2)].lv);
;}
break;
case 104:
/* Line 1464 of yacc.c */
#line 871 "grammar.y"
{
if ((yyvsp[(2) - (3)].lv).Typ()!=STRING_CMD)
{
MYYERROR("string expression expected");
}
(yyval.name) = (char *)(yyvsp[(2) - (3)].lv).CopyD(STRING_CMD);
(yyvsp[(2) - (3)].lv).CleanUp();
;}
break;
case 105:
/* Line 1464 of yacc.c */
#line 883 "grammar.y"
{
if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
YYERROR;
;}
break;
case 106:
/* Line 1464 of yacc.c */
#line 888 "grammar.y"
{
if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
YYERROR;
;}
break;
case 107:
/* Line 1464 of yacc.c */
#line 893 "grammar.y"
{
if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&(currRing->idroot), TRUE)) YYERROR;
;}
break;
case 108:
/* Line 1464 of yacc.c */
#line 897 "grammar.y"
{
if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&(currRing->idroot), TRUE)) YYERROR;
;}
break;
case 109:
/* Line 1464 of yacc.c */
#line 901 "grammar.y"
{
int r; TESTSETINT((yyvsp[(4) - (8)].lv),r);
int c; TESTSETINT((yyvsp[(7) - (8)].lv),c);
leftv v;
idhdl h;
if (((yyvsp[(1) - (8)].i) == MATRIX_CMD) || ((yyvsp[(1) - (8)].i) == SMATRIX_CMD ))
{
if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (8)].lv),myynest,(yyvsp[(1) - (8)].i),&(currRing->idroot), TRUE)) YYERROR;
v=&(yyval.lv);
h=(idhdl)v->data;
idDelete(&IDIDEAL(h));
if ((yyvsp[(1) - (8)].i) == MATRIX_CMD)
IDMATRIX(h) = mpNew(r,c);
else
IDIDEAL(h) = idInit(c,r);
if (IDMATRIX(h)==NULL) YYERROR;
}
else if (((yyvsp[(1) - (8)].i) == INTMAT_CMD)||((yyvsp[(1) - (8)].i) == BIGINTMAT_CMD))
{
if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (8)].lv),myynest,(yyvsp[(1) - (8)].i),&((yyvsp[(2) - (8)].lv).req_packhdl->idroot)))
YYERROR;
v=&(yyval.lv);
h=(idhdl)v->data;
if ((yyvsp[(1) - (8)].i)==INTMAT_CMD)
{
delete IDINTVEC(h);
IDINTVEC(h) = new intvec(r,c,0);
}
else
{
delete IDBIMAT(h);
IDBIMAT(h) = new bigintmat(r, c, coeffs_BIGINT);
}
if (IDINTVEC(h)==NULL) YYERROR;
}
;}
break;
case 110:
/* Line 1464 of yacc.c */
#line 938 "grammar.y"
{
if (((yyvsp[(1) - (2)].i) == MATRIX_CMD)||((yyvsp[(1) - (2)].i) == SMATRIX_CMD))
{
if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&(currRing->idroot), TRUE)) YYERROR;
}
else if (((yyvsp[(1) - (2)].i) == INTMAT_CMD)||((yyvsp[(1) - (2)].i) == BIGINTMAT_CMD))
{
if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
YYERROR;
if ((yyvsp[(1) - (2)].i) == INTMAT_CMD)
{
leftv v=&(yyval.lv);
idhdl h;
do
{
h=(idhdl)v->data;
delete IDINTVEC(h);
IDINTVEC(h) = new intvec(1,1,0);
v=v->next;
} while (v!=NULL);
}
}
;}
break;
case 111:
/* Line 1464 of yacc.c */
#line 962 "grammar.y"
{
int t=(yyvsp[(1) - (3)].lv).Typ();
sleftv r;
memset(&r,0,sizeof(sleftv));
if ((BEGIN_RING<t) && (t<END_RING))
{
if (iiDeclCommand(&r,&(yyvsp[(3) - (3)].lv),myynest,t,&(currRing->idroot), TRUE))
YYERROR;
}
else
{
if (iiDeclCommand(&r,&(yyvsp[(3) - (3)].lv),myynest,t,&((yyvsp[(3) - (3)].lv).req_packhdl->idroot)))
YYERROR;
}
leftv v=&(yyvsp[(1) - (3)].lv);
while (v->next!=NULL) v=v->next;
v->next=(leftv)omAllocBin(sleftv_bin);
memcpy(v->next,&r,sizeof(sleftv));
(yyval.lv)=(yyvsp[(1) - (3)].lv);
;}
break;
case 112:
/* Line 1464 of yacc.c */
#line 983 "grammar.y"
{
if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
YYERROR;
;}
break;
case 115:
/* Line 1464 of yacc.c */
#line 996 "grammar.y"
{
leftv v = &(yyvsp[(2) - (5)].lv);
while (v->next!=NULL)
{
v=v->next;
}
v->next = (leftv)omAllocBin(sleftv_bin);
memcpy(v->next,&((yyvsp[(4) - (5)].lv)),sizeof(sleftv));
(yyval.lv) = (yyvsp[(2) - (5)].lv);
;}
break;
case 116:
/* Line 1464 of yacc.c */
#line 1010 "grammar.y"
{
// let rInit take care of any errors
(yyval.i)=rOrderName((yyvsp[(1) - (1)].name));
;}
break;
case 117:
/* Line 1464 of yacc.c */
#line 1018 "grammar.y"
{
memset(&(yyval.lv),0,sizeof((yyval.lv)));
intvec *iv = new intvec(2);
(*iv)[0] = 1;
(*iv)[1] = (yyvsp[(1) - (1)].i);
(yyval.lv).rtyp = INTVEC_CMD;
(yyval.lv).data = (void *)iv;
;}
break;
case 118:
/* Line 1464 of yacc.c */
#line 1027 "grammar.y"
{
memset(&(yyval.lv),0,sizeof((yyval.lv)));
leftv sl = &(yyvsp[(3) - (4)].lv);
int slLength;
{
slLength = exprlist_length(sl);
int l = 2 + slLength;
intvec *iv = new intvec(l);
(*iv)[0] = slLength;
(*iv)[1] = (yyvsp[(1) - (4)].i);
int i = 2;
while ((i<l) && (sl!=NULL))
{
if (sl->Typ() == INT_CMD)
{
(*iv)[i++] = (int)((long)(sl->Data()));
}
else if ((sl->Typ() == INTVEC_CMD)
||(sl->Typ() == INTMAT_CMD))
{
intvec *ivv = (intvec *)(sl->Data());
int ll = 0,l = ivv->length();
for (; l>0; l--)
{
(*iv)[i++] = (*ivv)[ll++];
}
}
else
{
delete iv;
(yyvsp[(3) - (4)].lv).CleanUp();
MYYERROR("wrong type in ordering");
}
sl = sl->next;
}
(yyval.lv).rtyp = INTVEC_CMD;
(yyval.lv).data = (void *)iv;
}
(yyvsp[(3) - (4)].lv).CleanUp();
;}
break;
case 120:
/* Line 1464 of yacc.c */
#line 1073 "grammar.y"
{
(yyval.lv) = (yyvsp[(1) - (3)].lv);
(yyval.lv).next = (sleftv *)omAllocBin(sleftv_bin);
memcpy((yyval.lv).next,&(yyvsp[(3) - (3)].lv),sizeof(sleftv));
;}
break;
case 122:
/* Line 1464 of yacc.c */
#line 1083 "grammar.y"
{
(yyval.lv) = (yyvsp[(2) - (3)].lv);
;}
break;
case 123:
/* Line 1464 of yacc.c */
#line 1089 "grammar.y"
{
expected_parms = TRUE;
;}
break;
case 128:
/* Line 1464 of yacc.c */
#line 1107 "grammar.y"
{ newFile((yyvsp[(2) - (2)].name)); omFree((yyvsp[(2) - (2)].name)); ;}
break;
case 129:
/* Line 1464 of yacc.c */
#line 1112 "grammar.y"
{
feHelp((yyvsp[(2) - (3)].name));
omFree((ADDRESS)(yyvsp[(2) - (3)].name));
;}
break;
case 130:
/* Line 1464 of yacc.c */
#line 1117 "grammar.y"
{
feHelp(NULL);
;}
break;
case 131:
/* Line 1464 of yacc.c */
#line 1124 "grammar.y"
{
singular_example((yyvsp[(2) - (3)].name));
omFree((ADDRESS)(yyvsp[(2) - (3)].name));
;}
break;
case 132:
/* Line 1464 of yacc.c */
#line 1132 "grammar.y"
{
if (basePack!=(yyvsp[(2) - (2)].lv).req_packhdl)
{
if(iiExport(&(yyvsp[(2) - (2)].lv),0,currPack)) YYERROR;
}
else
if (iiExport(&(yyvsp[(2) - (2)].lv),0)) YYERROR;
;}
break;
case 133:
/* Line 1464 of yacc.c */
#line 1144 "grammar.y"
{
leftv v=&(yyvsp[(2) - (2)].lv);
if (v->rtyp!=IDHDL)
{
if (v->name!=NULL)
{
Werror("`%s` is undefined in kill",v->name);
omFree((ADDRESS)v->name); v->name=NULL;
}
else WerrorS("kill what ?");
}
else
{
killhdl((idhdl)v->data,v->req_packhdl);
}
;}
break;
case 134:
/* Line 1464 of yacc.c */
#line 1161 "grammar.y"
{
leftv v=&(yyvsp[(3) - (3)].lv);
if (v->rtyp!=IDHDL)
{
if (v->name!=NULL)
{
Werror("`%s` is undefined in kill",v->name);
omFree((ADDRESS)v->name); v->name=NULL;
}
else WerrorS("kill what ?");
}
else
{
killhdl((idhdl)v->data,v->req_packhdl);
}
;}
break;
case 135:
/* Line 1464 of yacc.c */
#line 1181 "grammar.y"
{
list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
;}
break;
case 136:
/* Line 1464 of yacc.c */
#line 1185 "grammar.y"
{
list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
;}
break;
case 137:
/* Line 1464 of yacc.c */
#line 1189 "grammar.y"
{
if ((yyvsp[(3) - (4)].i)==QRING_CMD) (yyvsp[(3) - (4)].i)=RING_CMD;
list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
;}
break;
case 138:
/* Line 1464 of yacc.c */
#line 1194 "grammar.y"
{
list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
;}
break;
case 139:
/* Line 1464 of yacc.c */
#line 1198 "grammar.y"
{
list_cmd(RING_CMD,NULL,"// ",TRUE);
;}
break;
case 140:
/* Line 1464 of yacc.c */
#line 1202 "grammar.y"
{
list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
;}
break;
case 141:
/* Line 1464 of yacc.c */
#line 1206 "grammar.y"
{
list_cmd(PROC_CMD,NULL,"// ",TRUE);
;}
break;
case 142:
/* Line 1464 of yacc.c */
#line 1210 "grammar.y"
{
list_cmd(0,(yyvsp[(3) - (4)].lv).Fullname(),"// ",TRUE);
(yyvsp[(3) - (4)].lv).CleanUp();
;}
break;
case 143:
/* Line 1464 of yacc.c */
#line 1215 "grammar.y"
{
if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
(yyvsp[(3) - (6)].lv).CleanUp();
;}
break;
case 144:
/* Line 1464 of yacc.c */
#line 1221 "grammar.y"
{
if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
(yyvsp[(3) - (6)].lv).CleanUp();
;}
break;
case 145:
/* Line 1464 of yacc.c */
#line 1227 "grammar.y"
{
if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
(yyvsp[(3) - (6)].lv).CleanUp();
;}
break;
case 146:
/* Line 1464 of yacc.c */
#line 1233 "grammar.y"
{
if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
(yyvsp[(3) - (6)].lv).CleanUp();
;}
break;
case 147:
/* Line 1464 of yacc.c */
#line 1239 "grammar.y"
{
if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
(yyvsp[(3) - (6)].lv).CleanUp();
;}
break;
case 148:
/* Line 1464 of yacc.c */
#line 1245 "grammar.y"
{
if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
(yyvsp[(3) - (6)].lv).CleanUp();
;}
break;
case 149:
/* Line 1464 of yacc.c */
#line 1251 "grammar.y"
{
if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
(yyvsp[(3) - (6)].lv).CleanUp();
;}
break;
case 150:
/* Line 1464 of yacc.c */
#line 1263 "grammar.y"
{
list_cmd(-1,NULL,"// ",TRUE);
;}
break;
case 151:
/* Line 1464 of yacc.c */
#line 1269 "grammar.y"
{ yyInRingConstruction = TRUE; ;}
break;
case 152:
/* Line 1464 of yacc.c */
#line 1278 "grammar.y"
{
const char *ring_name = (yyvsp[(2) - (8)].lv).name;
ring b=
rInit(&(yyvsp[(4) - (8)].lv), /* characteristik and list of parameters*/
&(yyvsp[(6) - (8)].lv), /* names of ringvariables */
&(yyvsp[(8) - (8)].lv)); /* ordering */
idhdl newRingHdl=NULL;
if (b!=NULL)
{
newRingHdl=enterid(ring_name, myynest, RING_CMD,
&((yyvsp[(2) - (8)].lv).req_packhdl->idroot),FALSE);
(yyvsp[(2) - (8)].lv).CleanUp();
if (newRingHdl!=NULL)
{
IDRING(newRingHdl)=b;
}
else
{
rKill(b);
}
}
yyInRingConstruction = FALSE;
if (newRingHdl==NULL)
{
MYYERROR("cannot make ring");
}
else
{
rSetHdl(newRingHdl);
}
;}
break;
case 153:
/* Line 1464 of yacc.c */
#line 1311 "grammar.y"
{
const char *ring_name = (yyvsp[(2) - (2)].lv).name;
if (!inerror) rDefault(ring_name);
yyInRingConstruction = FALSE;
(yyvsp[(2) - (2)].lv).CleanUp();
;}
break;
case 154:
/* Line 1464 of yacc.c */
#line 1318 "grammar.y"
{
yyInRingConstruction = FALSE;
if (iiAssignCR(&(yyvsp[(2) - (4)].lv),&(yyvsp[(4) - (4)].lv))) YYERROR;
;}
break;
case 155:
/* Line 1464 of yacc.c */
#line 1323 "grammar.y"
{
yyInRingConstruction = FALSE;
sleftv tmp;
(yyvsp[(4) - (7)].lv).next=(leftv)omAlloc(sizeof(sleftv));
memcpy((yyvsp[(4) - (7)].lv).next,&(yyvsp[(6) - (7)].lv),sizeof(sleftv));
memset(&(yyvsp[(6) - (7)].lv),0,sizeof(sleftv));
if (iiExprArithM(&tmp,&(yyvsp[(4) - (7)].lv),'[')) YYERROR;
if (iiAssignCR(&(yyvsp[(2) - (7)].lv),&tmp)) YYERROR;
;}
break;
case 156:
/* Line 1464 of yacc.c */
#line 1336 "grammar.y"
{
if (((yyvsp[(1) - (2)].i)!=LIB_CMD)||(jjLOAD((yyvsp[(2) - (2)].name),TRUE))) YYERROR;
omFree((yyvsp[(2) - (2)].name));
;}
break;
case 159:
/* Line 1464 of yacc.c */
#line 1346 "grammar.y"
{
if (((yyvsp[(1) - (2)].i)==KEEPRING_CMD) && (myynest==0))
MYYERROR("only inside a proc allowed");
const char * n=(yyvsp[(2) - (2)].lv).Name();
if (((yyvsp[(2) - (2)].lv).Typ()==RING_CMD)
&& ((yyvsp[(2) - (2)].lv).rtyp==IDHDL))
{
idhdl h=(idhdl)(yyvsp[(2) - (2)].lv).data;
if ((yyvsp[(2) - (2)].lv).e!=NULL) h=rFindHdl((ring)(yyvsp[(2) - (2)].lv).Data(),NULL);
//Print("setring %s lev %d (ptr:%x)\n",IDID(h),IDLEV(h),IDRING(h));
if ((yyvsp[(1) - (2)].i)==KEEPRING_CMD)
{
if (h!=NULL)
{
if (IDLEV(h)!=0)
{
if (iiExport(&(yyvsp[(2) - (2)].lv),myynest-1)) YYERROR;
#if 1
idhdl p=IDRING(h)->idroot;
idhdl root=p;
int prevlev=myynest-1;
while (p!=NULL)
{
if (IDLEV(p)==myynest)
{
idhdl old=root->get(IDID(p),prevlev);
if (old!=NULL)
{
if (BVERBOSE(V_REDEFINE))
Warn("redefining %s",IDID(p));
killhdl2(old,&root,IDRING(h));
IDRING(h)->idroot=root;
}
IDLEV(p)=prevlev;
}
p=IDNEXT(p);
}
#endif
}
iiLocalRing[myynest-1]=IDRING(h);
}
else
{
Werror("%s is no identifier",n);
(yyvsp[(2) - (2)].lv).CleanUp();
YYERROR;
}
}
if (h!=NULL) rSetHdl(h);
else
{
Werror("cannot find the name of the basering %s",n);
(yyvsp[(2) - (2)].lv).CleanUp();
YYERROR;
}
(yyvsp[(2) - (2)].lv).CleanUp();
}
else
{
Werror("%s is no name of a ring/qring",n);
(yyvsp[(2) - (2)].lv).CleanUp();
YYERROR;
}
;}
break;
case 160:
/* Line 1464 of yacc.c */
#line 1414 "grammar.y"
{
type_cmd(&((yyvsp[(2) - (2)].lv)));
;}
break;
case 161:
/* Line 1464 of yacc.c */
#line 1418 "grammar.y"
{
//Print("typ is %d, rtyp:%d\n",$1.Typ(),$1.rtyp);
#ifdef SIQ
if ((yyvsp[(1) - (1)].lv).rtyp!=COMMAND)
{
#endif
if ((yyvsp[(1) - (1)].lv).Typ()==UNKNOWN)
{
if ((yyvsp[(1) - (1)].lv).name!=NULL)
{
Werror("`%s` is undefined",(yyvsp[(1) - (1)].lv).name);
omFree((ADDRESS)(yyvsp[(1) - (1)].lv).name);
}
YYERROR;
}
#ifdef SIQ
}
#endif
(yyvsp[(1) - (1)].lv).Print(&sLastPrinted);
(yyvsp[(1) - (1)].lv).CleanUp(currRing);
if (errorreported) YYERROR;
;}
break;
case 162:
/* Line 1464 of yacc.c */
#line 1447 "grammar.y"
{
int i; TESTSETINT((yyvsp[(3) - (5)].lv),i);
if (i!=0)
{
newBuffer( (yyvsp[(5) - (5)].name), BT_if);
}
else
{
omFree((ADDRESS)(yyvsp[(5) - (5)].name));
currentVoice->ifsw=1;
}
;}
break;
case 163:
/* Line 1464 of yacc.c */
#line 1460 "grammar.y"
{
if (currentVoice->ifsw==1)
{
currentVoice->ifsw=0;
newBuffer( (yyvsp[(2) - (2)].name), BT_else);
}
else
{
if (currentVoice->ifsw!=2)
{
Warn("`else` without `if` in level %d",myynest);
}
omFree((ADDRESS)(yyvsp[(2) - (2)].name));
}
currentVoice->ifsw=0;
;}
break;
case 164:
/* Line 1464 of yacc.c */
#line 1477 "grammar.y"
{
int i; TESTSETINT((yyvsp[(3) - (5)].lv),i);
if (i)
{
if (exitBuffer(BT_break)) YYERROR;
}
currentVoice->ifsw=0;
;}
break;
case 165:
/* Line 1464 of yacc.c */
#line 1486 "grammar.y"
{
if (exitBuffer(BT_break)) YYERROR;
currentVoice->ifsw=0;
;}
break;
case 166:
/* Line 1464 of yacc.c */
#line 1491 "grammar.y"
{
if (contBuffer(BT_break)) YYERROR;
currentVoice->ifsw=0;
;}
break;
case 167:
/* Line 1464 of yacc.c */
#line 1499 "grammar.y"
{
/* -> if(!$2) break; $3; continue;*/
size_t len= strlen((yyvsp[(2) - (3)].name)) + strlen((yyvsp[(3) - (3)].name)) + 36;
char * s = (char *)omAlloc( len);
snprintf(s,len,"whileif (!(%s)) break;\n%scontinue;\n " ,(yyvsp[(2) - (3)].name),(yyvsp[(3) - (3)].name));
newBuffer(s,BT_break);
omFree((ADDRESS)(yyvsp[(2) - (3)].name));
omFree((ADDRESS)(yyvsp[(3) - (3)].name));
;}
break;
case 168:
/* Line 1464 of yacc.c */
#line 1512 "grammar.y"
{
/* $2 */
/* if (!$3) break; $5; $4; continue; */
size_t len= strlen((yyvsp[(3) - (5)].name))+strlen((yyvsp[(4) - (5)].name))+strlen((yyvsp[(5) - (5)].name))+36;
char *s=(char*)omAlloc(len);
snprintf(s,len,"forif (!(%s)) break;\n%s%s;\ncontinue;\n "
,(yyvsp[(3) - (5)].name),(yyvsp[(5) - (5)].name),(yyvsp[(4) - (5)].name));
omFree((ADDRESS)(yyvsp[(3) - (5)].name));
omFree((ADDRESS)(yyvsp[(4) - (5)].name));
omFree((ADDRESS)(yyvsp[(5) - (5)].name));
newBuffer(s,BT_break);
len=strlen((yyvsp[(2) - (5)].name)) + 3;
s = (char *)omAlloc( len);
snprintf(s,len,"%s;\n",(yyvsp[(2) - (5)].name));
omFree((ADDRESS)(yyvsp[(2) - (5)].name));
newBuffer(s,BT_if);
;}
break;
case 169:
/* Line 1464 of yacc.c */
#line 1533 "grammar.y"
{
idhdl h = enterid((yyvsp[(2) - (3)].name),myynest,PROC_CMD,&IDROOT,TRUE);
if (h==NULL) {omFree((ADDRESS)(yyvsp[(2) - (3)].name));omFree((ADDRESS)(yyvsp[(3) - (3)].name)); YYERROR;}
iiInitSingularProcinfo(IDPROC(h),"", (yyvsp[(2) - (3)].name), 0, 0);
int l=strlen((yyvsp[(3) - (3)].name))+31;IDPROC(h)->data.s.body = (char *)omAlloc(l);
snprintf(IDPROC(h)->data.s.body,l,"parameter list #;\n%s;return();\n\n",(yyvsp[(3) - (3)].name));
omFree((ADDRESS)(yyvsp[(3) - (3)].name));
omFree((ADDRESS)(yyvsp[(2) - (3)].name));
;}
break;
case 170:
/* Line 1464 of yacc.c */
#line 1543 "grammar.y"
{
idhdl h = enterid((yyvsp[(1) - (3)].name),myynest,PROC_CMD,&IDROOT,TRUE);
if (h==NULL)
{
omFree((ADDRESS)(yyvsp[(1) - (3)].name));
omFree((ADDRESS)(yyvsp[(2) - (3)].name));
omFree((ADDRESS)(yyvsp[(3) - (3)].name));
YYERROR;
}
char *args=iiProcArgs((yyvsp[(2) - (3)].name),FALSE);
omFree((ADDRESS)(yyvsp[(2) - (3)].name));
iiInitSingularProcinfo(IDPROC(h),"", (yyvsp[(1) - (3)].name), 0, 0);
int l=strlen((yyvsp[(3) - (3)].name))+strlen(args)+14;IDPROC(h)->data.s.body = (char *)omAlloc(l);
snprintf(IDPROC(h)->data.s.body,l,"%s\n%s;return();\n\n",args,(yyvsp[(3) - (3)].name));
omFree((ADDRESS)args);
omFree((ADDRESS)(yyvsp[(3) - (3)].name));
omFree((ADDRESS)(yyvsp[(1) - (3)].name));
;}
break;
case 171:
/* Line 1464 of yacc.c */
#line 1562 "grammar.y"
{
omFree((ADDRESS)(yyvsp[(3) - (4)].name));
idhdl h = enterid((yyvsp[(1) - (4)].name),myynest,PROC_CMD,&IDROOT,TRUE);
if (h==NULL)
{
omFree((ADDRESS)(yyvsp[(1) - (4)].name));
omFree((ADDRESS)(yyvsp[(2) - (4)].name));
omFree((ADDRESS)(yyvsp[(4) - (4)].name));
YYERROR;
}
char *args=iiProcArgs((yyvsp[(2) - (4)].name),FALSE);
omFree((ADDRESS)(yyvsp[(2) - (4)].name));
iiInitSingularProcinfo(IDPROC(h),"", (yyvsp[(1) - (4)].name), 0, 0);
omFree((ADDRESS)(yyvsp[(1) - (4)].name));
int l=strlen((yyvsp[(4) - (4)].name))+strlen(args)+14;IDPROC(h)->data.s.body = (char *)omAlloc(l);
snprintf(IDPROC(h)->data.s.body,l,"%s\n%s;return();\n\n",args,(yyvsp[(4) - (4)].name));
omFree((ADDRESS)args);
omFree((ADDRESS)(yyvsp[(4) - (4)].name));
;}
break;
case 172:
/* Line 1464 of yacc.c */
#line 1585 "grammar.y"
{
// decl. of type proc p(int i)
if ((yyvsp[(1) - (2)].i)==PARAMETER) { if (iiParameter(&(yyvsp[(2) - (2)].lv))) YYERROR; }
else { if (iiAlias(&(yyvsp[(2) - (2)].lv))) YYERROR; }
;}
break;
case 173:
/* Line 1464 of yacc.c */
#line 1591 "grammar.y"
{
// decl. of type proc p(i)
sleftv tmp_expr;
if ((yyvsp[(1) - (2)].i)==ALIAS_CMD) MYYERROR("alias requires a type");
if ((iiDeclCommand(&tmp_expr,&(yyvsp[(2) - (2)].lv),myynest,DEF_CMD,&IDROOT))
|| (iiParameter(&tmp_expr)))
YYERROR;
;}
break;
case 174:
/* Line 1464 of yacc.c */
#line 1603 "grammar.y"
{
iiSetReturn(&(yyvsp[(3) - (4)].lv));
(yyvsp[(3) - (4)].lv).CleanUp();
if (exitBuffer(BT_proc)) YYERROR;
;}
break;
case 175:
/* Line 1464 of yacc.c */
#line 1609 "grammar.y"
{
if ((yyvsp[(1) - (3)].i)==RETURN)
{
iiRETURNEXPR.Init();
iiRETURNEXPR.rtyp=NONE;
if (exitBuffer(BT_proc)) YYERROR;
}
;}
break;
/* Line 1464 of yacc.c */
#line 4252 "grammar.cc"
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
YYPOPSTACK (yylen);
yylen = 0;
YY_STACK_PRINT (yyss, yyssp);
*++yyvsp = yyval;
/* Now `shift' the result of the reduction. Determine what state
that goes to, based on the state we popped back to and the rule
number reduced by. */
yyn = yyr1[yyn];
yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
yystate = yytable[yystate];
else
yystate = yydefgoto[yyn - YYNTOKENS];
goto yynewstate;
/*------------------------------------.
| yyerrlab -- here on detecting error |
`------------------------------------*/
yyerrlab:
/* If not already recovering from an error, report this error. */
if (!yyerrstatus)
{
++yynerrs;
#if ! YYERROR_VERBOSE
yyerror (YY_("syntax error"));
#else
{
YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
{
YYSIZE_T yyalloc = 2 * yysize;
if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
yyalloc = YYSTACK_ALLOC_MAXIMUM;
if (yymsg != yymsgbuf)
YYSTACK_FREE (yymsg);
yymsg = (char *) YYSTACK_ALLOC (yyalloc);
if (yymsg)
yymsg_alloc = yyalloc;
else
{
yymsg = yymsgbuf;
yymsg_alloc = sizeof yymsgbuf;
}
}
if (0 < yysize && yysize <= yymsg_alloc)
{
(void) yysyntax_error (yymsg, yystate, yychar);
yyerror (yymsg);
}
else
{
yyerror (YY_("syntax error"));
if (yysize != 0)
goto yyexhaustedlab;
}
}
#endif
}
if (yyerrstatus == 3)
{
/* If just tried and failed to reuse lookahead token after an
error, discard it. */
if (yychar <= YYEOF)
{
/* Return failure if at end of input. */
if (yychar == YYEOF)
YYABORT;
}
else
{
yydestruct ("Error: discarding",
yytoken, &yylval);
yychar = YYEMPTY;
}
}
/* Else will try to reuse lookahead token after shifting the error
token. */
goto yyerrlab1;
/*---------------------------------------------------.
| yyerrorlab -- error raised explicitly by YYERROR. |
`---------------------------------------------------*/
yyerrorlab:
/* Pacify compilers like GCC when the user code never invokes
YYERROR and the label yyerrorlab therefore never appears in user
code. */
if (/*CONSTCOND*/ 0)
goto yyerrorlab;
/* Do not reclaim the symbols of the rule which action triggered
this YYERROR. */
YYPOPSTACK (yylen);
yylen = 0;
YY_STACK_PRINT (yyss, yyssp);
yystate = *yyssp;
goto yyerrlab1;
/*-------------------------------------------------------------.
| yyerrlab1 -- common code for both syntax error and YYERROR. |
`-------------------------------------------------------------*/
yyerrlab1:
yyerrstatus = 3; /* Each real token shifted decrements this. */
for (;;)
{
yyn = yypact[yystate];
if (yyn != YYPACT_NINF)
{
yyn += YYTERROR;
if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
{
yyn = yytable[yyn];
if (0 < yyn)
break;
}
}
/* Pop the current state because it cannot handle the error token. */
if (yyssp == yyss)
YYABORT;
yydestruct ("Error: popping",
yystos[yystate], yyvsp);
YYPOPSTACK (1);
yystate = *yyssp;
YY_STACK_PRINT (yyss, yyssp);
}
*++yyvsp = yylval;
/* Shift the error token. */
YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
yystate = yyn;
goto yynewstate;
/*-------------------------------------.
| yyacceptlab -- YYACCEPT comes here. |
`-------------------------------------*/
yyacceptlab:
yyresult = 0;
goto yyreturn;
/*-----------------------------------.
| yyabortlab -- YYABORT comes here. |
`-----------------------------------*/
yyabortlab:
yyresult = 1;
goto yyreturn;
#if !defined(yyoverflow) || YYERROR_VERBOSE
/*-------------------------------------------------.
| yyexhaustedlab -- memory exhaustion comes here. |
`-------------------------------------------------*/
yyexhaustedlab:
yyerror (YY_("memory exhausted"));
yyresult = 2;
/* Fall through. */
#endif
yyreturn:
if (yychar != YYEMPTY)
yydestruct ("Cleanup: discarding lookahead",
yytoken, &yylval);
/* Do not reclaim the symbols of the rule which action triggered
this YYABORT or YYACCEPT. */
YYPOPSTACK (yylen);
YY_STACK_PRINT (yyss, yyssp);
while (yyssp != yyss)
{
yydestruct ("Cleanup: popping",
yystos[*yyssp], yyvsp);
YYPOPSTACK (1);
}
#ifndef yyoverflow
if (yyss != yyssa)
YYSTACK_FREE (yyss);
#endif
#if YYERROR_VERBOSE
if (yymsg != yymsgbuf)
YYSTACK_FREE (yymsg);
#endif
/* Make sure YYID is used. */
return YYID (yyresult);
}
FALSE
#define FALSE
Definition auxiliary.h:97
ADDRESS
void * ADDRESS
Definition auxiliary.h:120
l
int l
Definition cfEzgcd.cc:100
p
int p
Definition cfModGcd.cc:4086
b
CanonicalForm b
Definition cfModGcd.cc:4111
bigintmat
Matrices of numbers.
Definition bigintmat.h:51
idrec::get
idhdl get(const char *s, int lev)
Definition ipid.cc:70
intvec
Definition intvec.h:24
intvec::length
int length() const
Definition intvec.h:95
sleftv
Class used for (list of) interpreter objects.
Definition subexpr.h:83
sleftv::CopyD
void * CopyD(int t)
Definition subexpr.cc:714
sleftv::Typ
int Typ()
Definition subexpr.cc:1048
sleftv::Data
void * Data()
Definition subexpr.cc:1192
sleftv::next
leftv next
Definition subexpr.h:86
sleftv::CleanUp
void CleanUp(ring r=currRing)
Definition subexpr.cc:351
n_Read
static FORCE_INLINE const char * n_Read(const char *s, number *a, const coeffs r)
!!! Recommendation: This method is too cryptic to be part of the user- !!! interface....
Definition coeffs.h:601
Print
#define Print
Definition emacs.cc:80
Warn
#define Warn
Definition emacs.cc:77
v
const Variable & v
< [in] a sqrfree bivariate poly
Definition facBivar.h:39
j
int j
Definition facHensel.cc:110
name
char name(const Variable &v)
Definition factory.h:189
feHelp
void feHelp(char *str)
Definition fehelp.cc:90
prompt_char
EXTERN_VAR char prompt_char
Definition feread.h:10
exitBuffer
BOOLEAN exitBuffer(feBufferTypes typ)
Definition fevoices.cc:236
newBuffer
void newBuffer(char *s, feBufferTypes t, procinfo *pi, int lineno)
Definition fevoices.cc:166
contBuffer
BOOLEAN contBuffer(feBufferTypes typ)
Definition fevoices.cc:304
newFile
BOOLEAN newFile(char *fname)
Definition fevoices.cc:129
exitVoice
BOOLEAN exitVoice()
Definition fevoices.cc:341
feBufferTypes
feBufferTypes
Definition fevoices.h:17
BT_else
@ BT_else
Definition fevoices.h:25
BT_if
@ BT_if
Definition fevoices.h:24
BT_break
@ BT_break
Definition fevoices.h:19
BT_example
@ BT_example
Definition fevoices.h:21
BT_proc
@ BT_proc
Definition fevoices.h:20
iiTestConvert
int iiTestConvert(int inputType, int outputType)
Definition gentable.cc:298
iiTwoOps
const char * iiTwoOps(int t)
Definition gentable.cc:258
yyr1
static const yytype_uint8 yyr1[]
Definition grammar.cc:821
YYLEX
#define YYLEX
Definition grammar.cc:1685
YYMAXDEPTH
#define YYMAXDEPTH
Definition grammar.cc:166
YYSTACK_FREE
#define YYSTACK_FREE
Definition grammar.cc:495
yyerrok
#define yyerrok
Definition grammar.cc:1589
TESTSETINT
#define TESTSETINT(a, i)
Definition grammar.cc:177
YYEOF
#define YYEOF
Definition grammar.cc:1592
YYABORT
#define YYABORT
Definition grammar.cc:1595
yydefgoto
static const yytype_int16 yydefgoto[]
Definition grammar.cc:914
YY_REDUCE_PRINT
#define YY_REDUCE_PRINT(Rule)
Definition grammar.cc:1835
YYTABLE_NINF
#define YYTABLE_NINF
Definition grammar.cc:984
yypact
static const yytype_int16 yypact[]
Definition grammar.cc:926
MYYERROR
#define MYYERROR(a)
Definition grammar.cc:185
YYPACT_NINF
#define YYPACT_NINF
Definition grammar.cc:925
YYFINAL
#define YYFINAL
Definition grammar.cc:582
yypgoto
static const yytype_int16 yypgoto[]
Definition grammar.cc:971
yydestruct
static void yydestruct(const char *yymsg, int yytype, YYSTYPE *yyvaluep)
Definition grammar.cc:2089
YY_STACK_PRINT
#define YY_STACK_PRINT(Bottom, Top)
Definition grammar.cc:1797
YYSIZE_T
#define YYSIZE_T
Definition grammar.cc:410
YYSTACK_ALLOC_MAXIMUM
#define YYSTACK_ALLOC_MAXIMUM
Definition grammar.cc:497
yyerror
void yyerror(const char *fmt)
Definition grammar.cc:187
yyInRingConstruction
BOOLEAN yyInRingConstruction
Definition grammar.cc:172
yytable
static const yytype_int16 yytable[]
Definition grammar.cc:985
YYACCEPT
#define YYACCEPT
Definition grammar.cc:1594
yystos
static const yytype_uint8 yystos[]
Definition grammar.cc:1545
YYTERROR
#define YYTERROR
Definition grammar.cc:1634
YYPOPSTACK
#define YYPOPSTACK(N)
yytype_int16
short int yytype_int16
Definition grammar.cc:399
YYLAST
#define YYLAST
Definition grammar.cc:584
YYINITDEPTH
#define YYINITDEPTH
Definition grammar.cc:1854
yycheck
static const yytype_int16 yycheck[]
Definition grammar.cc:1264
YYSTACK_ALLOC
#define YYSTACK_ALLOC
Definition grammar.cc:494
YYDPRINTF
#define YYDPRINTF(Args)
Definition grammar.cc:1696
yydefact
static const yytype_uint8 yydefact[]
Definition grammar.cc:869
idDelete
#define idDelete(H)
delete an ideal
Definition ideals.h:29
jjLOAD
BOOLEAN jjLOAD(const char *s, BOOLEAN autoexport)
load lib/module given in v
Definition iparith.cc:5591
iiExprArith2
BOOLEAN iiExprArith2(leftv res, leftv a, int op, leftv b, BOOLEAN proccall)
Definition iparith.cc:9176
iiExprArith1
BOOLEAN iiExprArith1(leftv res, leftv a, int op)
Definition iparith.cc:9365
iiExprArithM
BOOLEAN iiExprArithM(leftv res, leftv a, int op)
Definition iparith.cc:9666
iiExprArith3
BOOLEAN iiExprArith3(leftv res, int op, leftv a, leftv b, leftv c)
Definition iparith.cc:9575
iiAssign
BOOLEAN iiAssign(leftv l, leftv r, BOOLEAN toplevel)
Definition ipassign.cc:2099
iiConvert
BOOLEAN iiConvert(int inputType, int outputType, int index, leftv input, leftv output, const struct sConvertTypes *dConvertTypes)
Definition ipconv.cc:450
killhdl2
void killhdl2(idhdl h, idhdl *ih, ring r)
Definition ipid.cc:445
enterid
idhdl enterid(const char *s, int lev, int t, idhdl *root, BOOLEAN init, BOOLEAN search)
Definition ipid.cc:279
basePack
VAR package basePack
Definition ipid.cc:56
currPack
VAR package currPack
Definition ipid.cc:55
iiAlias
BOOLEAN iiAlias(leftv p)
Definition ipid.cc:841
killhdl
void killhdl(idhdl h, package proot)
Definition ipid.cc:414
IDMATRIX
#define IDMATRIX(a)
Definition ipid.h:134
IDNEXT
#define IDNEXT(a)
Definition ipid.h:118
sleftv_bin
EXTERN_VAR omBin sleftv_bin
Definition ipid.h:145
IDPROC
#define IDPROC(a)
Definition ipid.h:140
IDINTVEC
#define IDINTVEC(a)
Definition ipid.h:128
IDBIMAT
#define IDBIMAT(a)
Definition ipid.h:129
IDIDEAL
#define IDIDEAL(a)
Definition ipid.h:133
IDID
#define IDID(a)
Definition ipid.h:122
IDLEV
#define IDLEV(a)
Definition ipid.h:121
IDRING
#define IDRING(a)
Definition ipid.h:127
iiProcArgs
char * iiProcArgs(char *e, BOOLEAN withParenth)
Definition iplib.cc:114
iiRETURNEXPR
INST_VAR sleftv iiRETURNEXPR
Definition iplib.cc:483
iiLocalRing
VAR ring * iiLocalRing
Definition iplib.cc:482
iiInitSingularProcinfo
procinfo * iiInitSingularProcinfo(procinfov pi, const char *libname, const char *procname, int, long pos, BOOLEAN pstatic)
Definition iplib.cc:1059
iiParameter
BOOLEAN iiParameter(leftv p)
Definition ipshell.cc:1384
iiDeclCommand
int iiDeclCommand(leftv sy, leftv name, int lev, int t, idhdl *root, BOOLEAN isring, BOOLEAN init_b)
Definition ipshell.cc:1206
rKill
void rKill(ring r)
Definition ipshell.cc:6181
iiApply
BOOLEAN iiApply(leftv res, leftv a, int op, leftv proc)
Definition ipshell.cc:6431
list_cmd
void list_cmd(int typ, const char *what, const char *prefix, BOOLEAN iterate, BOOLEAN fullname)
Definition ipshell.cc:426
rInit
ring rInit(leftv pn, leftv rv, leftv ord)
Definition ipshell.cc:5628
iiARROW
BOOLEAN iiARROW(leftv r, char *a, char *s)
Definition ipshell.cc:6480
exprlist_length
int exprlist_length(leftv v)
Definition ipshell.cc:551
iiTestAssume
BOOLEAN iiTestAssume(leftv a, leftv b)
Definition ipshell.cc:6453
iiSetReturn
void iiSetReturn(const leftv source)
Definition ipshell.cc:6634
iiAssignCR
BOOLEAN iiAssignCR(leftv r, leftv arg)
Definition ipshell.cc:6515
rFindHdl
idhdl rFindHdl(ring r, idhdl n)
Definition ipshell.cc:1701
iiDebug
void iiDebug()
Definition ipshell.cc:1073
type_cmd
void type_cmd(leftv v)
Definition ipshell.cc:255
rSetHdl
void rSetHdl(idhdl h)
Definition ipshell.cc:5129
iiExport
BOOLEAN iiExport(leftv v, int toLev)
Definition ipshell.cc:1510
singular_example
void singular_example(char *str)
Definition misc_ip.cc:431
h
STATIC_VAR Poly * h
Definition janet.cc:971
next
ListNode * next
Definition janet.h:31
mpNew
matrix mpNew(int r, int c)
create a r x c zero-matrix
Definition matpol.cc:37
MAX_INT_LEN
const int MAX_INT_LEN
Definition mylimits.h:13
omAlloc
#define omAlloc(size)
Definition omAllocDecl.h:210
omAllocBin
#define omAllocBin(bin)
Definition omAllocDecl.h:205
omFree
#define omFree(addr)
Definition omAllocDecl.h:261
siCntrlc
VAR BOOLEAN siCntrlc
Definition options.c:14
BVERBOSE
#define BVERBOSE(a)
Definition options.h:35
V_REDEFINE
#define V_REDEFINE
Definition options.h:45
coeffs_BIGINT
VAR coeffs coeffs_BIGINT
Definition polys.cc:14
currRing
VAR ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
Definition polys.cc:13
pAdd
#define pAdd(p, q)
Definition polys.h:204
pDelete
#define pDelete(p_ptr)
Definition polys.h:187
pSetCompP
#define pSetCompP(a, i)
Definition polys.h:304
yynerrs
int yynerrs
Definition readcf.cc:927
PrintLn
void PrintLn()
Definition reporter.cc:314
rOrderName
rRingOrder_t rOrderName(char *ordername)
Definition ring.cc:512
rDefault
ring rDefault(const coeffs cf, int N, char **n, int ord_size, rRingOrder_t *ord, int *block0, int *block1, int **wvhdl, unsigned long bitmask)
Definition ring.cc:103
idhdl
idrec * idhdl
Definition ring.h:22
idInit
ideal idInit(int idsize, int rank)
initialise an ideal / module
Definition simpleideals.cc:35
leftv
sleftv * leftv
Definition structs.h:53
YYSTYPE
#define YYSTYPE
Definition stype.h:19
syMake
void syMake(leftv v, const char *id, package pa)
Definition subexpr.cc:1613
sLastPrinted
INST_VAR sleftv sLastPrinted
Definition subexpr.cc:46
siq
VAR BOOLEAN siq
Definition subexpr.cc:48
syMakeMonom
void syMakeMonom(leftv v, const char *id)
Definition subexpr.cc:1917
writeRTime
void writeRTime(const char *v)
Definition timer.cc:173
startTimer
int startTimer()
Definition timer.cc:66
rtimerv
VAR int rtimerv
Definition timer.cc:126
writeTime
void writeTime(const char *v)
Definition timer.cc:101
timerv
VAR int timerv
Definition timer.cc:17
startRTimer
void startRTimer()
Definition timer.cc:131
IDHDL
#define IDHDL
Definition tok.h:31
ALIAS_CMD
@ ALIAS_CMD
Definition tok.h:34
BIGINT_CMD
@ BIGINT_CMD
Definition tok.h:38
INTVEC_CMD
@ INTVEC_CMD
Definition tok.h:101
PACKAGE_CMD
@ PACKAGE_CMD
Definition tok.h:150
DEF_CMD
@ DEF_CMD
Definition tok.h:58
QRING_CMD
@ QRING_CMD
Definition tok.h:160
STRING_CMD
@ STRING_CMD
Definition tok.h:187
NONE
#define NONE
Definition tok.h:223
COMMAND
#define COMMAND
Definition tok.h:29
UNKNOWN
#define UNKNOWN
Definition tok.h:224

## Variable Documentation

## cmdtok

int cmdtok

Definition at line 174 of file grammar.cc.

## currid

const char* currid

Definition at line 171 of file grammar.cc.

## expected_parms

BOOLEAN expected_parms

Definition at line 173 of file grammar.cc.

## inerror

int inerror = 0

Definition at line 175 of file grammar.cc.

## yycheck

const yytype_int16 yycheck[]

static

Definition at line 1264 of file grammar.cc.

{
1, 69, 1, 254, 12, 7, 71, 97, 10, 68,
370, 68, 7, 264, 88, 10, 7, 11, 88, 10,
101, 69, 96, 11, 25, 96, 96, 97, 76, 4,
11, 102, 7, 393, 96, 96, 101, 11, 97, 69,
102, 102, 298, 299, 96, 20, 21, 22, 23, 48,
102, 52, 27, 96, 96, 30, 96, 96, 96, 102,
102, 69, 102, 102, 102, 96, 67, 94, 94, 96,
96, 102, 101, 48, 12, 68, 51, 11, 101, 7,
55, 68, 69, 68, 69, 101, 102, 101, 339, 64,
65, 93, 20, 21, 22, 23, 71, 92, 93, 27,
95, 103, 93, 78, 95, 93, 81, 101, 103, 97,
178, 112, 103, 101, 115, 96, 49, 50, 119, 101,
101, 102, 96, 97, 101, 100, 68, 101, 127, 104,
105, 106, 107, 108, 109, 110, 111, 138, 113, 101,
3, 4, 117, 71, 7, 101, 9, 10, 101, 150,
78, 101, 127, 101, 88, 130, 101, 11, 101, 93,
101, 136, 96, 97, 139, 3, 4, 101, 68, 7,
101, 9, 10, 97, 149, 101, 102, 152, 101, 154,
155, 182, 157, 184, 159, 160, 161, 162, 163, 164,
165, 166, 167, 96, 3, 101, 102, 172, 7, 127,
175, 10, 177, 101, 102, 180, 181, 101, 183, 101,
185, 139, 101, 188, 101, 102, 3, 4, 101, 102,
7, 149, 9, 10, 101, 102, 89, 90, 91, 92,
93, 101, 95, 11, 88, 98, 99, 101, 102, 167,
103, 104, 96, 97, 172, 220, 11, 101, 101, 177,
88, 89, 90, 91, 92, 93, 101, 95, 97, 3,
98, 99, 97, 7, 102, 103, 10, 101, 102, 68,
245, 101, 102, 248, 101, 102, 96, 252, 69, 254,
89, 90, 91, 92, 93, 96, 95, 286, 69, 264,
99, 266, 267, 268, 103, 270, 96, 272, 273, 101,
102, 69, 89, 90, 91, 92, 93, 308, 95, 96,
88, 98, 99, 68, 96, 290, 103, 69, 96, 97,
96, 71, 297, 101, 101, 300, 254, 102, 102, 102,
102, 96, 97, 102, 93, 102, 101, 338, 102, 96,
102, 102, 96, 7, 0, 1, 90, 91, 92, 93,
48, 95, 8, 381, -1, 99, 393, -1, 14, 103,
16, 17, 18, -1, 339, -1, -1, 23, 343, 11,
345, 346, 28, 348, -1, 3, 4, -1, 34, 7,
-1, 9, 10, 384, -1, -1, -1, -1, -1, 364,
365, -1, 48, 49, 50, 51, 52, 53, 54, 55,
56, 57, 58, 59, 60, 61, 62, 63, -1, 65,
66, 67, 68, -1, 70, 71, 72, 73, 74, 75,
76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
86, 87, -1, 89, -1, 91, 11, 93, -1, -1,
-1, 97, -1, 3, 4, 101, 88, 7, 104, 9,
10, -1, -1, -1, 96, 97, -1, -1, -1, 101,
-1, 89, 90, 91, 92, 93, -1, 95, 96, -1,
98, 99, 3, 4, 102, 103, 7, -1, 9, 10,
-1, -1, -1, -1, -1, -1, -1, 3, 4, -1,
-1, 7, -1, 9, 10, -1, -1, -1, -1, -1,
-1, -1, 3, 4, -1, -1, 7, -1, 9, 10,
-1, -1, -1, 88, -1, -1, -1, 3, 4, -1,
-1, 7, 97, 9, 10, -1, 101, -1, -1, 89,
90, 91, 92, 93, -1, 95, 96, -1, 98, 99,
3, 4, 102, 103, 7, -1, 9, 10, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 89, 90,
91, 92, 93, -1, 95, 96, -1, 98, 99, -1,
-1, 102, 103, 89, 90, 91, 92, 93, 94, 95,
96, -1, 98, 99, -1, -1, -1, 103, 89, 90,
91, 92, 93, -1, 95, 96, -1, 98, 99, -1,
-1, 102, 103, 89, 90, 91, 92, 93, 11, 95,
96, -1, 98, 99, 3, 4, 102, 103, 7, -1,
9, 10, -1, -1, -1, -1, 89, 90, 91, 92,
93, -1, 95, 96, -1, 98, 99, 3, 4, 102,
103, 7, -1, 9, 10, -1, -1, -1, -1, -1,
-1, -1, 3, 4, -1, -1, 7, -1, 9, 10,
-1, -1, -1, -1, -1, -1, -1, 3, 4, -1,
-1, 7, -1, 9, 10, -1, -1, -1, -1, -1,
-1, -1, 3, 4, -1, 88, 7, -1, 9, 10,
-1, -1, -1, 96, 97, -1, -1, -1, 101, -1,
89, 90, 91, 92, 93, -1, 95, -1, -1, 98,
99, 3, 4, 102, 103, 7, -1, 9, 10, -1,
-1, -1, -1, 89, 90, 91, 92, 93, -1, 95,
-1, -1, 98, 99, -1, -1, 102, 103, 89, 90,
91, 92, 93, -1, 95, -1, -1, 98, 99, -1,
-1, 102, 103, 89, 90, 91, 92, 93, -1, 95,
96, -1, 98, 99, -1, -1, 11, 103, 89, 90,
91, 92, 93, -1, 95, 96, -1, 98, 99, 3,
4, -1, 103, 7, -1, 9, 10, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 89, 90, 91,
92, 93, -1, 95, 96, -1, 98, 99, 3, 4,
-1, 103, 7, -1, 9, 10, -1, -1, -1, -1,
-1, -1, -1, 3, 4, -1, -1, 7, -1, 9,
10, -1, -1, -1, -1, -1, -1, -1, 3, 4,
-1, -1, 7, 88, 9, 10, -1, -1, -1, -1,
-1, 96, 97, 3, 4, -1, 101, 7, -1, 9,
10, -1, -1, -1, -1, 89, 90, 91, 92, 93,
-1, 95, -1, -1, 98, 99, 3, 4, 102, 103,
7, -1, 9, 10, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 89, 90, 91, 92, 93, -1,
95, 11, -1, 98, 99, -1, -1, 102, 103, 89,
90, 91, 92, 93, -1, 95, 96, -1, 98, 99,
-1, -1, -1, 103, 89, 90, 91, 92, 93, -1,
95, -1, -1, 98, 99, -1, -1, 102, 103, 89,
90, 91, 92, 93, -1, 95, 96, -1, 98, 99,
3, 4, -1, 103, 7, -1, 9, 10, -1, -1,
-1, -1, 89, 90, 91, 92, 93, -1, 95, -1,
-1, 98, 99, 3, 4, 102, 103, 7, 88, 9,
10, -1, -1, -1, -1, -1, 96, 97, 3, 4,
-1, 101, 7, -1, 9, 10, -1, -1, -1, -1,
-1, -1, -1, 3, 4, -1, -1, 7, -1, 9,
10, -1, -1, -1, -1, -1, -1, -1, 3, 4,
-1, -1, 7, -1, 9, 10, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 89, 90, 91, 92,
93, -1, 95, -1, -1, 98, 99, 3, 4, 102,
103, 7, -1, 9, 10, -1, -1, -1, -1, 89,
90, 91, 92, 93, 94, 95, -1, -1, 98, 99,
-1, -1, -1, 103, 89, 90, 91, 92, 93, -1,
95, -1, -1, 98, 99, -1, -1, 102, 103, 89,
90, 91, 92, 93, -1, 95, 96, -1, 98, 99,
-1, -1, -1, 103, 89, 90, 91, 92, 93, -1,
95, -1, -1, 98, 99, 3, 4, 102, 103, 7,
-1, 9, 10, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 89, 90, 91, 92, 93, -1, 95,
96, -1, 98, 99, 3, 4, -1, 103, 7, -1,
9, 10, -1, -1, -1, -1, -1, -1, -1, 3,
4, -1, -1, 7, -1, 9, 10, -1, -1, -1,
-1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
9, 10, -1, 14, -1, 16, 17, 18, -1, 3,
4, -1, 23, 7, -1, 9, 10, 28, -1, -1,
-1, 89, 90, 91, 92, 93, -1, 95, -1, -1,
98, 99, 3, 4, 102, 103, 7, -1, 9, 10,
-1, -1, -1, -1, -1, 56, 57, 58, 59, -1,
89, 90, 91, 92, 93, 94, 95, -1, -1, 98,
99, -1, -1, -1, 103, 89, 90, 91, 92, 93,
-1, 95, 96, -1, 98, 99, -1, -1, -1, 103,
89, 90, 91, 92, 93, -1, 95, -1, -1, 98,
99, -1, -1, 102, 103, 89, 90, 91, 92, 93,
-1, 95, -1, -1, 98, 99, 3, 4, 102, 103,
7, -1, 9, 10, -1, -1, -1, -1, 89, 90,
91, 92, 93, -1, 95, -1, -1, 98, 99, 3,
4, 102, 103, 7, -1, 9, 10, -1, -1, -1,
-1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
9, 10, -1, -1, -1, -1, -1, -1, -1, 3,
4, -1, -1, 7, -1, 9, 10, -1, -1, -1,
-1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
9, 10, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 89, 90, 91, 92, 93, -1, 95, -1,
3, 98, 99, -1, 7, 102, 103, 10, -1, -1,
-1, -1, -1, -1, -1, 89, 90, 91, 92, 93,
-1, 95, -1, -1, 98, 99, -1, -1, 102, 103,
89, 90, 91, 92, 93, 94, 95, -1, -1, 98,
99, -1, -1, -1, 103, 89, 90, 91, 92, 93,
-1, 95, -1, -1, 98, 99, -1, -1, -1, 103,
89, 90, 91, 92, 93, -1, 95, -1, -1, -1,
99, 8, -1, -1, 103, -1, -1, 14, -1, 16,
17, 18, -1, -1, -1, -1, 23, 90, 91, 92,
93, 28, 95, -1, -1, -1, 99, -1, -1, -1,
103, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, 102, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, 102, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, 102, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, 102, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, 102, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, 102, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
-1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
-1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
87, -1, -1, -1, 91, -1, 93, -1, -1, -1,
-1, -1, -1, -1, 101, -1, -1, 104
};

## yydebug

int yydebug

Definition at line 1843 of file grammar.cc.

## yydefact

const yytype_uint8 yydefact[]

static

Definition at line 869 of file grammar.cc.

{
2, 0, 1, 0, 0, 127, 126, 0, 151, 124,
125, 158, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 157,
0, 113, 37, 103, 30, 0, 0, 0, 165, 166,
0, 0, 0, 0, 0, 8, 0, 0, 0, 38,
0, 0, 0, 9, 0, 0, 3, 4, 13, 0,
20, 70, 161, 68, 0, 0, 69, 0, 31, 0,
39, 0, 16, 17, 18, 21, 22, 23, 0, 25,
26, 0, 27, 28, 11, 12, 14, 15, 24, 7,
10, 0, 0, 0, 0, 0, 0, 38, 99, 0,
0, 70, 0, 31, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 70, 0, 70, 0, 70, 0,
70, 0, 19, 132, 0, 130, 70, 0, 160, 0,
0, 85, 163, 82, 84, 0, 0, 0, 0, 0,
173, 172, 156, 128, 100, 0, 0, 0, 5, 0,
0, 123, 0, 102, 0, 0, 88, 0, 87, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
29, 0, 0, 6, 101, 0, 70, 0, 70, 159,
0, 0, 0, 0, 0, 0, 68, 169, 0, 114,
0, 0, 0, 0, 0, 0, 0, 0, 59, 0,
68, 43, 0, 68, 46, 0, 131, 129, 0, 0,
0, 0, 0, 0, 150, 70, 0, 0, 170, 0,
0, 0, 0, 167, 175, 0, 36, 66, 104, 32,
34, 0, 67, 97, 96, 95, 93, 89, 90, 91,
0, 92, 94, 98, 33, 0, 86, 79, 0, 65,
70, 0, 0, 70, 0, 0, 0, 0, 0, 0,
0, 40, 68, 64, 0, 47, 0, 0, 0, 48,
0, 49, 0, 0, 50, 60, 41, 42, 44, 45,
141, 139, 135, 136, 137, 138, 0, 142, 140, 171,
0, 0, 0, 0, 174, 35, 72, 0, 0, 0,
0, 62, 0, 70, 114, 0, 42, 45, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 83,
168, 162, 164, 0, 80, 81, 0, 0, 0, 0,
0, 0, 51, 0, 52, 0, 0, 53, 0, 54,
149, 147, 143, 144, 145, 146, 148, 73, 74, 75,
76, 77, 78, 71, 0, 0, 0, 0, 115, 116,
0, 117, 121, 0, 0, 0, 0, 0, 0, 0,
155, 0, 119, 0, 0, 63, 55, 56, 57, 58,
61, 109, 152, 0, 122, 0, 120, 118
};

## yydefgoto

const yytype_int16 yydefgoto[]

static

Initial value:
=
{
-1, 1, 56, 57, 58, 59, 60, 61, 146, 63,
220, 64, 65, 247, 66, 67, 68, 69, 70, 190,
371, 372, 383, 373, 153, 99, 72, 73, 74, 75,
76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
86, 87, 88, 89
}

Definition at line 914 of file grammar.cc.

{
-1, 1, 56, 57, 58, 59, 60, 61, 146, 63,
220, 64, 65, 247, 66, 67, 68, 69, 70, 190,
371, 372, 383, 373, 153, 99, 72, 73, 74, 75,
76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
86, 87, 88, 89
};

## yyin

FILE* yyin

extern

Definition at line 122 of file libparse.cc.

## yyInRingConstruction

BOOLEAN yyInRingConstruction =FALSE

Definition at line 172 of file grammar.cc.

## yylineno

int yylineno

extern

Definition at line 40 of file febase.cc.

## yypact

const yytype_int16 yypact[]

static

Definition at line 926 of file grammar.cc.

{
-361, 344, -361, -90, 1923, -361, -361, 2003, -81, -361,
-361, -361, -29, -23, -14, 18, 23, 38, 44, 47,
2083, 2163, 2243, 2323, 13, 1923, -59, 1923, 50, -361,
1923, -361, -361, -361, -361, -57, 52, 55, -361, -361,
-30, 57, 59, 7, 69, -361, 58, 77, 2403, 100,
100, 1923, 1923, -361, 1923, 1923, -361, -361, -361, 76,
-361, 6, -74, 1336, 1923, 1923, -361, 1923, 62, -70,
-361, 2483, -361, -361, -361, -361, 97, -361, 1923, -361,
-361, 1923, -361, -361, -361, -361, -361, -361, -361, -361,
-361, 106, -81, 108, 111, 130, 147, -361, 9, 155,
1923, 146, 1336, -8, 2563, 1923, 1923, 1923, 1923, 1923,
1923, 1923, 1443, 1923, 222, 1523, 358, 1923, 597, 1603,
755, 161, -361, 180, 165, -361, 26, 1683, 1336, 15,
1923, -361, -361, -361, -361, 201, 1923, 209, 1763, 2003,
1336, 189, -361, -361, 9, -27, -71, 137, -361, 1923,
1843, -361, 1923, -361, 1923, 1923, -361, 1923, -361, 1923,
1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 162, 213,
180, 219, 1923, -361, -361, 1923, 66, 1923, 425, 1336,
1923, 1923, 1523, 1923, 1603, 1923, 611, -361, 1923, 634,
200, 649, 664, 679, 372, 440, 708, 469, -361, -62,
776, -361, -61, 805, -361, -52, -361, -361, -16, 74,
94, 102, 113, 117, -361, 19, 123, 232, -361, 820,
1923, 245, 835, -361, -361, -43, -361, -361, -361, -361,
-361, -42, 1336, 256, 191, 191, 1377, 5, 5, 9,
484, -2, 1351, 5, -361, 1923, -361, -361, 1923, -361,
890, 499, 1923, 235, 2563, 611, 776, -40, 805, -39,
499, -361, 850, -361, 2563, -361, 1923, 1923, 1923, -361,
1923, -361, 1923, 1923, -361, -361, -361, -361, -361, -361,
-361, -361, -361, -361, -361, -361, 1169, -361, -361, -361,
2643, 873, 248, -48, -361, -361, -361, 1923, 947, 947,
1923, -361, 970, 12, 1336, 218, -361, -361, 1923, 224,
985, 1000, 1015, 1044, 514, 537, 225, 226, 227, 228,
231, 233, 236, 136, 166, 170, 173, 198, 1112, -361,
-361, -361, -361, 1141, -361, -361, 1156, 241, 1923, 2563,
-38, -65, -361, 1923, -361, 1923, 1923, -361, 1923, -361,
-361, -361, -361, -361, -361, -361, -361, -361, -361, -361,
-361, -361, -361, -361, 1923, 1923, -26, 243, -361, -361,
250, 223, -361, 238, 1171, 1186, 1209, 1283, 1306, 1321,
-361, -65, 246, 239, 1923, -361, -361, -361, -361, -361,
-361, -361, -361, 250, -361, -31, -361, -361
};

## yypgoto

const yytype_int16 yypgoto[]

static

Initial value:
=
{
-361, -361, -361, -361, -361, -361, -361, 72, -1, 25,
-361, -361, -361, -256, -361, -361, 336, 302, 67, -251,
-361, -360, -37, -28, -68, 1, -361, -361, -361, -361,
-361, -361, -361, -361, -361, -361, -361, -361, -361, -361,
-361, -361, -361, -361
}

Definition at line 971 of file grammar.cc.

{
-361, -361, -361, -361, -361, -361, -361, 72, -1, 25,
-361, -361, -361, -256, -361, -361, 336, 302, 67, -251,
-361, -360, -37, -28, -68, 1, -361, -361, -361, -361,
-361, -361, -361, -361, -361, -361, -361, -361, -361, -361,
-361, -361, -361, -361
};

## yyprhs

const yytype_uint16 yyprhs[]

static

Initial value:
=
{
0, 0, 3, 4, 7, 9, 12, 15, 17, 19,
21, 24, 26, 28, 30, 32, 34, 36, 38, 40,
43, 45, 47, 49, 51, 53, 55, 57, 59, 61,
64, 66, 68, 72, 76, 80, 85, 89, 91, 93,
95, 100, 105, 110, 114, 119, 124, 128, 133, 138,
143, 148, 155, 162, 169, 176, 185, 194, 203, 212,
216, 221, 230, 235, 244, 249, 253, 257, 261, 263,
265, 267, 274, 279, 286, 293, 300, 307, 314, 321,
325, 331, 337, 338, 344, 347, 350, 352, 355, 358,
362, 366, 370, 374, 378, 382, 386, 390, 394, 398,
401, 404, 407, 410, 412, 416, 419, 422, 425, 428,
437, 440, 444, 447, 449, 451, 457, 459, 461, 466,
468, 472, 474, 478, 480, 482, 484, 486, 488, 491,
495, 498, 502, 505, 508, 512, 517, 522, 527, 532,
537, 542, 547, 552, 559, 566, 573, 580, 587, 594,
601, 605, 607, 616, 619, 624, 632, 635, 637, 639,
642, 645, 647, 653, 656, 662, 664, 666, 670, 676,
680, 684, 689, 692, 695, 700
}

Definition at line 645 of file grammar.cc.

{
0, 0, 3, 4, 7, 9, 12, 15, 17, 19,
21, 24, 26, 28, 30, 32, 34, 36, 38, 40,
43, 45, 47, 49, 51, 53, 55, 57, 59, 61,
64, 66, 68, 72, 76, 80, 85, 89, 91, 93,
95, 100, 105, 110, 114, 119, 124, 128, 133, 138,
143, 148, 155, 162, 169, 176, 185, 194, 203, 212,
216, 221, 230, 235, 244, 249, 253, 257, 261, 263,
265, 267, 274, 279, 286, 293, 300, 307, 314, 321,
325, 331, 337, 338, 344, 347, 350, 352, 355, 358,
362, 366, 370, 374, 378, 382, 386, 390, 394, 398,
401, 404, 407, 410, 412, 416, 419, 422, 425, 428,
437, 440, 444, 447, 449, 451, 457, 459, 461, 466,
468, 472, 474, 478, 480, 482, 484, 486, 488, 491,
495, 498, 502, 505, 508, 512, 517, 522, 527, 532,
537, 542, 547, 552, 559, 566, 573, 580, 587, 594,
601, 605, 607, 616, 619, 624, 632, 635, 637, 639,
642, 645, 647, 653, 656, 662, 664, 666, 670, 676,
680, 684, 689, 692, 695, 700
};

## yyr1

const yytype_uint8 yyr1[]

static

Initial value:
=
{
0, 105, 106, 106, 107, 107, 107, 107, 107, 107,
107, 108, 108, 108, 108, 108, 108, 108, 108, 109,
110, 110, 110, 110, 110, 110, 110, 110, 110, 111,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 113, 113, 114,
114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
114, 114, 115, 114, 116, 117, 118, 119, 119, 119,
119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
119, 120, 120, 121, 121, 122, 122, 122, 122, 122,
122, 122, 122, 123, 124, 124, 125, 126, 126, 127,
127, 128, 128, 129, 130, 130, 130, 130, 131, 132,
132, 133, 134, 135, 135, 136, 136, 136, 136, 136,
136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
136, 137, 138, 138, 138, 138, 139, 140, 140, 141,
142, 142, 143, 143, 143, 143, 143, 144, 145, 146,
146, 146, 147, 147, 148, 148
}

Definition at line 821 of file grammar.cc.

{
0, 105, 106, 106, 107, 107, 107, 107, 107, 107,
107, 108, 108, 108, 108, 108, 108, 108, 108, 109,
110, 110, 110, 110, 110, 110, 110, 110, 110, 111,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 113, 113, 114,
114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
114, 114, 115, 114, 116, 117, 118, 119, 119, 119,
119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
119, 120, 120, 121, 121, 122, 122, 122, 122, 122,
122, 122, 122, 123, 124, 124, 125, 126, 126, 127,
127, 128, 128, 129, 130, 130, 130, 130, 131, 132,
132, 133, 134, 135, 135, 136, 136, 136, 136, 136,
136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
136, 137, 138, 138, 138, 138, 139, 140, 140, 141,
142, 142, 143, 143, 143, 143, 143, 144, 145, 146,
146, 146, 147, 147, 148, 148
};

## yyr2

const yytype_uint8 yyr2[]

static

Initial value:
=
{
0, 2, 0, 2, 1, 2, 2, 1, 1, 1,
2, 1, 1, 1, 1, 1, 1, 1, 1, 2,
1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
1, 1, 3, 3, 3, 4, 3, 1, 1, 1,
4, 4, 4, 3, 4, 4, 3, 4, 4, 4,
4, 6, 6, 6, 6, 8, 8, 8, 8, 3,
4, 8, 4, 8, 4, 3, 3, 3, 1, 1,
1, 6, 4, 6, 6, 6, 6, 6, 6, 3,
5, 5, 0, 5, 2, 2, 1, 2, 2, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 2,
2, 2, 2, 1, 3, 2, 2, 2, 2, 8,
2, 3, 2, 1, 1, 5, 1, 1, 4, 1,
3, 1, 3, 1, 1, 1, 1, 1, 2, 3,
2, 3, 2, 2, 3, 4, 4, 4, 4, 4,
4, 4, 4, 6, 6, 6, 6, 6, 6, 6,
3, 1, 8, 2, 4, 7, 2, 1, 1, 2,
2, 1, 5, 2, 5, 1, 1, 3, 5, 3,
3, 4, 2, 2, 4, 3
}

Definition at line 844 of file grammar.cc.

{
0, 2, 0, 2, 1, 2, 2, 1, 1, 1,
2, 1, 1, 1, 1, 1, 1, 1, 1, 2,
1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
1, 1, 3, 3, 3, 4, 3, 1, 1, 1,
4, 4, 4, 3, 4, 4, 3, 4, 4, 4,
4, 6, 6, 6, 6, 8, 8, 8, 8, 3,
4, 8, 4, 8, 4, 3, 3, 3, 1, 1,
1, 6, 4, 6, 6, 6, 6, 6, 6, 3,
5, 5, 0, 5, 2, 2, 1, 2, 2, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 2,
2, 2, 2, 1, 3, 2, 2, 2, 2, 8,
2, 3, 2, 1, 1, 5, 1, 1, 4, 1,
3, 1, 3, 1, 1, 1, 1, 1, 2, 3,
2, 3, 2, 2, 3, 4, 4, 4, 4, 4,
4, 4, 4, 6, 6, 6, 6, 6, 6, 6,
3, 1, 8, 2, 4, 7, 2, 1, 1, 2,
2, 1, 5, 2, 5, 1, 1, 3, 5, 3,
3, 4, 2, 2, 4, 3
};

## yyrhs

const yytype_int16 yyrhs[]

static

Definition at line 668 of file grammar.cc.

{
106, 0, -1, -1, 106, 107, -1, 108, -1, 110,
97, -1, 122, 97, -1, 148, -1, 83, -1, 97,
-1, 1, 97, -1, 143, -1, 144, -1, 109, -1,
145, -1, 146, -1, 131, -1, 132, -1, 133, -1,
60, 69, -1, 111, -1, 134, -1, 135, -1, 136,
-1, 147, -1, 138, -1, 139, -1, 141, -1, 142,
-1, 120, 113, -1, 72, -1, 121, -1, 112, 11,
112, -1, 114, 103, 112, -1, 112, 101, 102, -1,
112, 101, 113, 102, -1, 93, 113, 94, -1, 70,
-1, 87, -1, 123, -1, 17, 101, 114, 102, -1,
56, 101, 114, 102, -1, 57, 101, 113, 102, -1,
57, 101, 102, -1, 58, 101, 114, 102, -1, 59,
101, 113, 102, -1, 59, 101, 102, -1, 48, 101,
114, 102, -1, 51, 101, 114, 102, -1, 52, 101,
114, 102, -1, 54, 101, 114, 102, -1, 49, 101,
114, 96, 114, 102, -1, 51, 101, 114, 96, 114,
102, -1, 53, 101, 114, 96, 114, 102, -1, 54,
101, 114, 96, 114, 102, -1, 50, 101, 114, 96,
114, 96, 114, 102, -1, 52, 101, 114, 96, 114,
96, 114, 102, -1, 53, 101, 114, 96, 114, 96,
114, 102, -1, 54, 101, 114, 96, 114, 96, 114,
102, -1, 55, 101, 102, -1, 55, 101, 113, 102,
-1, 130, 101, 114, 96, 114, 96, 114, 102, -1,
130, 101, 114, 102, -1, 18, 101, 124, 96, 124,
96, 128, 102, -1, 18, 101, 114, 102, -1, 121,
12, 69, -1, 101, 113, 102, -1, 113, 96, 114,
-1, 114, -1, 119, -1, 112, -1, 114, 93, 114,
96, 114, 94, -1, 114, 93, 114, 94, -1, 74,
101, 114, 96, 48, 102, -1, 74, 101, 114, 96,
51, 102, -1, 74, 101, 114, 96, 52, 102, -1,
74, 101, 114, 96, 54, 102, -1, 74, 101, 114,
96, 55, 102, -1, 74, 101, 114, 96, 114, 102,
-1, 116, 114, 118, -1, 116, 114, 88, 114, 118,
-1, 117, 114, 96, 114, 118, -1, -1, 79, 101,
115, 114, 102, -1, 80, 101, -1, 75, 101, -1,
102, -1, 114, 10, -1, 114, 7, -1, 114, 90,
114, -1, 114, 91, 114, -1, 114, 92, 114, -1,
114, 95, 114, -1, 114, 89, 114, -1, 114, 98,
114, -1, 114, 9, 114, -1, 114, 4, 114, -1,
114, 3, 114, -1, 114, 99, 114, -1, 8, 114,
-1, 91, 114, -1, 122, 129, -1, 113, 129, -1,
71, -1, 104, 114, 104, -1, 56, 112, -1, 57,
112, -1, 58, 112, -1, 59, 112, -1, 130, 112,
93, 114, 94, 93, 114, 94, -1, 130, 112, -1,
122, 96, 112, -1, 17, 112, -1, 68, -1, 114,
-1, 101, 114, 96, 113, 102, -1, 71, -1, 125,
-1, 125, 101, 113, 102, -1, 126, -1, 126, 96,
127, -1, 126, -1, 101, 127, 102, -1, 88, -1,
23, -1, 28, -1, 16, -1, 14, -1, 89, 123,
-1, 62, 68, 97, -1, 62, 97, -1, 60, 68,
97, -1, 61, 113, -1, 63, 112, -1, 135, 96,
112, -1, 65, 101, 56, 102, -1, 65, 101, 57,
102, -1, 65, 101, 58, 102, -1, 65, 101, 59,
102, -1, 65, 101, 18, 102, -1, 65, 101, 130,
102, -1, 65, 101, 17, 102, -1, 65, 101, 112,
102, -1, 65, 101, 112, 96, 56, 102, -1, 65,
101, 112, 96, 57, 102, -1, 65, 101, 112, 96,
58, 102, -1, 65, 101, 112, 96, 59, 102, -1,
65, 101, 112, 96, 18, 102, -1, 65, 101, 112,
96, 130, 102, -1, 65, 101, 112, 96, 17, 102,
-1, 65, 101, 102, -1, 18, -1, 137, 112, 129,
124, 96, 124, 96, 128, -1, 137, 112, -1, 137,
112, 129, 112, -1, 137, 112, 129, 112, 93, 113,
94, -1, 87, 123, -1, 66, -1, 34, -1, 140,
114, -1, 67, 114, -1, 113, -1, 82, 101, 114,
102, 69, -1, 78, 69, -1, 82, 101, 114, 102,
76, -1, 76, -1, 77, -1, 84, 68, 69, -1,
81, 68, 68, 68, 69, -1, 17, 121, 69, -1,
73, 68, 69, -1, 73, 68, 68, 69, -1, 86,
122, -1, 86, 114, -1, 85, 101, 113, 102, -1,
85, 101, 102, -1
};

## yyrline

const yytype_uint16 yyrline[]

static

Initial value:
=
{
0, 319, 319, 321, 355, 356, 358, 360, 364, 369,
371, 422, 423, 424, 425, 426, 427, 428, 429, 433,
436, 437, 438, 439, 440, 441, 442, 443, 444, 447,
454, 459, 463, 467, 471, 475, 489, 517, 541, 547,
553, 557, 561, 565, 569, 573, 577, 581, 585, 589,
593, 597, 601, 605, 609, 613, 617, 621, 625, 629,
633, 639, 643, 647, 651, 655, 660, 664, 675, 678,
679, 680, 684, 688, 692, 696, 700, 704, 708, 712,
716, 733, 740, 739, 757, 765, 773, 782, 786, 790,
794, 798, 802, 806, 810, 814, 818, 822, 826, 830,
842, 849, 850, 869, 870, 882, 887, 892, 896, 900,
937, 961, 982, 990, 994, 995, 1009, 1017, 1026, 1071,
1072, 1081, 1082, 1088, 1095, 1096, 1097, 1098, 1106, 1111,
1116, 1123, 1131, 1143, 1160, 1180, 1184, 1188, 1193, 1197,
1201, 1205, 1209, 1214, 1220, 1226, 1232, 1238, 1244, 1250,
1262, 1269, 1273, 1310, 1317, 1322, 1335, 1342, 1342, 1345,
1413, 1417, 1446, 1459, 1476, 1485, 1490, 1498, 1511, 1532,
1542, 1561, 1584, 1590, 1602, 1608
}

Definition at line 744 of file grammar.cc.

{
0, 319, 319, 321, 355, 356, 358, 360, 364, 369,
371, 422, 423, 424, 425, 426, 427, 428, 429, 433,
436, 437, 438, 439, 440, 441, 442, 443, 444, 447,
454, 459, 463, 467, 471, 475, 489, 517, 541, 547,
553, 557, 561, 565, 569, 573, 577, 581, 585, 589,
593, 597, 601, 605, 609, 613, 617, 621, 625, 629,
633, 639, 643, 647, 651, 655, 660, 664, 675, 678,
679, 680, 684, 688, 692, 696, 700, 704, 708, 712,
716, 733, 740, 739, 757, 765, 773, 782, 786, 790,
794, 798, 802, 806, 810, 814, 818, 822, 826, 830,
842, 849, 850, 869, 870, 882, 887, 892, 896, 900,
937, 961, 982, 990, 994, 995, 1009, 1017, 1026, 1071,
1072, 1081, 1082, 1088, 1095, 1096, 1097, 1098, 1106, 1111,
1116, 1123, 1131, 1143, 1160, 1180, 1184, 1188, 1193, 1197,
1201, 1205, 1209, 1214, 1220, 1226, 1232, 1238, 1244, 1250,
1262, 1269, 1273, 1310, 1317, 1322, 1335, 1342, 1342, 1345,
1413, 1417, 1446, 1459, 1476, 1485, 1490, 1498, 1511, 1532,
1542, 1561, 1584, 1590, 1602, 1608
};

## yystos

const yytype_uint8 yystos[]

static

Definition at line 1545 of file grammar.cc.

{
0, 106, 0, 1, 8, 14, 16, 17, 18, 23,
28, 34, 48, 49, 50, 51, 52, 53, 54, 55,
56, 57, 58, 59, 60, 61, 62, 63, 65, 66,
67, 68, 70, 71, 72, 73, 74, 75, 76, 77,
78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
89, 91, 93, 97, 101, 104, 107, 108, 109, 110,
111, 112, 113, 114, 116, 117, 119, 120, 121, 122,
123, 130, 131, 132, 133, 134, 135, 136, 137, 138,
139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
97, 17, 18, 56, 57, 58, 59, 87, 114, 130,
101, 112, 114, 121, 101, 101, 101, 101, 101, 101,
101, 101, 101, 101, 112, 101, 112, 101, 112, 101,
112, 68, 69, 113, 68, 97, 112, 101, 114, 68,
101, 101, 69, 101, 101, 68, 101, 68, 101, 17,
114, 122, 123, 123, 114, 113, 113, 114, 97, 11,
101, 88, 96, 129, 3, 4, 7, 9, 10, 89,
90, 91, 92, 93, 95, 98, 99, 103, 114, 114,
113, 12, 96, 97, 129, 101, 112, 96, 112, 114,
101, 101, 101, 101, 101, 101, 114, 69, 101, 114,
124, 114, 114, 114, 114, 114, 114, 114, 102, 113,
114, 102, 113, 114, 102, 113, 97, 97, 17, 18,
56, 57, 58, 59, 102, 112, 130, 68, 69, 114,
115, 68, 114, 69, 102, 113, 94, 102, 104, 112,
102, 113, 114, 114, 114, 114, 114, 114, 114, 114,
114, 114, 114, 114, 112, 88, 102, 118, 96, 69,
112, 114, 93, 112, 129, 114, 114, 113, 114, 113,
114, 102, 114, 102, 96, 102, 96, 96, 96, 102,
96, 102, 96, 96, 102, 102, 102, 102, 102, 102,
102, 102, 102, 102, 102, 102, 96, 102, 102, 69,
96, 114, 68, 102, 102, 102, 94, 96, 114, 114,
96, 102, 114, 112, 114, 124, 102, 102, 96, 124,
114, 114, 114, 114, 114, 114, 17, 18, 56, 57,
58, 59, 130, 48, 51, 52, 54, 55, 114, 102,
69, 69, 76, 114, 118, 118, 114, 94, 93, 96,
113, 96, 102, 96, 102, 96, 96, 102, 96, 102,
102, 102, 102, 102, 102, 102, 102, 102, 102, 102,
102, 102, 102, 94, 96, 93, 113, 124, 102, 71,
101, 125, 126, 128, 114, 114, 114, 114, 114, 114,
94, 96, 126, 127, 101, 102, 102, 102, 102, 102,
102, 94, 128, 96, 102, 113, 127, 102
};

## yytable

const yytype_int16 yytable[]

static

Definition at line 985 of file grammar.cc.

{
62, 174, 71, 305, 171, 156, 369, 90, 158, 124,
382, 129, 156, 309, 151, 158, 156, 149, 151, 158,
104, 331, 152, 149, 123, 152, 172, 173, 332, 98,
149, 227, 102, 382, 152, 152, 370, 149, 125, 132,
275, 277, 334, 335, 152, 102, 102, 102, 102, 71,
279, 145, 102, 152, 152, 128, 152, 152, 152, 294,
295, 187, 306, 307, 368, 152, 170, 226, 380, 152,
152, 397, 105, 140, 171, 135, 144, 149, 106, 101,
147, 121, 122, 217, 218, 180, 280, 107, 367, 168,
169, 163, 114, 116, 118, 120, 102, 162, 163, 126,
164, 167, 163, 102, 164, 338, 179, 150, 167, -154,
254, 199, 167, 150, 202, 286, 142, 143, 205, 108,
150, 287, -133, -133, 109, 186, 137, 150, 216, 189,
191, 192, 193, 194, 195, 196, 197, 225, 200, 110,
154, 155, 203, 176, 156, 111, 157, 158, 112, 231,
178, 127, 102, 130, -110, 219, 131, 149, 133, 252,
134, 222, -110, -110, 102, 154, 155, 150, 31, 156,
136, 157, 158, 148, 102, 104, 281, 232, 138, 233,
234, 257, 235, 259, 236, 237, 238, 239, 240, 241,
242, 243, 102, 177, 154, 181, 282, 102, 156, 215,
251, 158, 102, 182, 283, 255, 256, 180, 258, 181,
260, 101, 182, 262, 183, 284, 154, 155, 184, 285,
156, 229, 157, 158, 185, 288, 159, 160, 161, 162,
163, 183, 164, 149, -112, 165, 166, 105, 357, 244,
167, 228, -112, -112, 250, 291, 149, 150, 184, 253,
245, 159, 160, 161, 162, 163, 185, 164, 206, -155,
165, 166, 207, 156, 246, 167, 158, 108, 358, 221,
298, 109, 359, 299, 111, 360, 152, 302, 223, 304,
159, 160, 161, 162, 163, 172, 164, 322, 249, 304,
166, 310, 311, 312, 167, 313, 264, 314, 315, 112,
361, 289, 159, 160, 161, 162, 163, 340, 164, 248,
-105, 165, 166, 292, 339, 328, 167, 330, -105, -105,
341, 369, 333, 150, 384, 336, 303, 350, 351, 352,
353, -134, -134, 354, 365, 355, 150, 366, 356, 381,
385, 394, 393, 103, 2, 3, 160, 161, 162, 163,
141, 164, 4, 392, 0, 166, 396, 0, 5, 167,
6, 7, 8, 0, 304, 0, 0, 9, 374, 149,
375, 376, 10, 377, 0, 154, 155, 0, 11, 156,
0, 157, 158, 395, 0, 0, 0, 0, 0, 378,
379, 0, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 0, 28,
29, 30, 31, 0, 32, 33, 34, 35, 36, 37,
38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
48, 49, 0, 50, 0, 51, 149, 52, 0, 0,
0, 53, 0, 154, 155, 54, -106, 156, 55, 157,
158, 0, 0, 0, -106, -106, 0, 0, 0, 150,
0, 159, 160, 161, 162, 163, 0, 164, 268, 0,
165, 166, 154, 155, 269, 167, 156, 0, 157, 158,
0, 0, 0, 0, 0, 0, 0, 154, 155, 0,
0, 156, 0, 157, 158, 0, 0, 0, 0, 0,
0, 0, 154, 155, 0, 0, 156, 0, 157, 158,
0, 0, 0, 151, 0, 0, 0, 154, 155, 0,
0, 156, -153, 157, 158, 0, 150, 0, 0, 159,
160, 161, 162, 163, 0, 164, 270, 0, 165, 166,
154, 155, 271, 167, 156, 0, 157, 158, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 159, 160,
161, 162, 163, 0, 164, 273, 0, 165, 166, 0,
0, 274, 167, 159, 160, 161, 162, 163, 296, 164,
297, 0, 165, 166, 0, 0, 0, 167, 159, 160,
161, 162, 163, 0, 164, 300, 0, 165, 166, 0,
0, 301, 167, 159, 160, 161, 162, 163, 149, 164,
346, 0, 165, 166, 154, 155, 347, 167, 156, 0,
157, 158, 0, 0, 0, 0, 159, 160, 161, 162,
163, 0, 164, 348, 0, 165, 166, 154, 155, 349,
167, 156, 0, 157, 158, 0, 0, 0, 0, 0,
0, 0, 154, 155, 0, 0, 156, 0, 157, 158,
0, 0, 0, 0, 0, 0, 0, 154, 155, 0,
0, 156, 0, 157, 158, 0, 0, 0, 0, 0,
0, 0, 154, 155, 0, -107, 156, 0, 157, 158,
0, 0, 0, -107, -107, 0, 0, 0, 150, 0,
159, 160, 161, 162, 163, 0, 164, 0, 0, 165,
166, 154, 155, 261, 167, 156, 0, 157, 158, 0,
0, 0, 0, 159, 160, 161, 162, 163, 0, 164,
0, 0, 165, 166, 0, 0, 263, 167, 159, 160,
161, 162, 163, 0, 164, 0, 0, 165, 166, 0,
0, 265, 167, 159, 160, 161, 162, 163, 0, 164,
266, 0, 165, 166, 0, 0, 149, 167, 159, 160,
161, 162, 163, 0, 164, 267, 0, 165, 166, 154,
155, 0, 167, 156, 0, 157, 158, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 159, 160, 161,
162, 163, 0, 164, 272, 0, 165, 166, 154, 155,
0, 167, 156, 0, 157, 158, 0, 0, 0, 0,
0, 0, 0, 154, 155, 0, 0, 156, 0, 157,
158, 0, 0, 0, 0, 0, 0, 0, 154, 155,
0, 0, 156, -108, 157, 158, 0, 0, 0, 0,
0, -108, -108, 154, 155, 0, 150, 156, 0, 157,
158, 0, 0, 0, 0, 159, 160, 161, 162, 163,
0, 164, 0, 0, 165, 166, 154, 155, 276, 167,
156, 0, 157, 158, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 159, 160, 161, 162, 163, 0,
164, 149, 0, 165, 166, 0, 0, 278, 167, 159,
160, 161, 162, 163, 0, 164, 290, 0, 165, 166,
0, 0, 0, 167, 159, 160, 161, 162, 163, 0,
164, 0, 0, 165, 166, 0, 0, 293, 167, 159,
160, 161, 162, 163, 0, 164, 308, 0, 165, 166,
154, 155, 0, 167, 156, 0, 157, 158, 0, 0,
0, 0, 159, 160, 161, 162, 163, 0, 164, 0,
0, 165, 166, 154, 155, 329, 167, 156, -111, 157,
158, 0, 0, 0, 0, 0, -111, -111, 154, 155,
0, 150, 156, 0, 157, 158, 0, 0, 0, 0,
0, 0, 0, 154, 155, 0, 0, 156, 0, 157,
158, 0, 0, 0, 0, 0, 0, 0, 154, 155,
0, 0, 156, 0, 157, 158, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 159, 160, 161, 162,
163, 0, 164, 0, 0, 165, 166, 154, 155, 246,
167, 156, 0, 157, 158, 0, 0, 0, 0, 159,
160, 161, 162, 163, 337, 164, 0, 0, 165, 166,
0, 0, 0, 167, 159, 160, 161, 162, 163, 0,
164, 0, 0, 165, 166, 0, 0, 342, 167, 159,
160, 161, 162, 163, 0, 164, 343, 0, 165, 166,
0, 0, 0, 167, 159, 160, 161, 162, 163, 0,
164, 0, 0, 165, 166, 154, 155, 344, 167, 156,
0, 157, 158, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 159, 160, 161, 162, 163, 0, 164,
345, 0, 165, 166, 154, 155, 0, 167, 156, 0,
157, 158, 0, 0, 0, 0, 0, 0, 0, 154,
155, 0, 0, 156, 0, 157, 158, 0, 0, 0,
0, 0, 0, 0, 154, 155, 0, 0, 156, 0,
157, 158, 0, 5, 0, 6, 316, 317, 0, 154,
155, 0, 9, 156, 0, 157, 158, 10, 0, 0,
0, 159, 160, 161, 162, 163, 0, 164, 0, 0,
165, 166, 154, 155, 362, 167, 156, 0, 157, 158,
0, 0, 0, 0, 0, 318, 319, 320, 321, 0,
159, 160, 161, 162, 163, 363, 164, 0, 0, 165,
166, 0, 0, 0, 167, 159, 160, 161, 162, 163,
0, 164, 364, 0, 165, 166, 0, 0, 0, 167,
159, 160, 161, 162, 163, 0, 164, 0, 0, 165,
166, 0, 0, 386, 167, 159, 160, 161, 162, 163,
0, 164, 0, 0, 165, 166, 154, 155, 387, 167,
156, 0, 157, 158, 0, 0, 0, 0, 159, 160,
161, 162, 163, 0, 164, 0, 0, 165, 166, 154,
155, 388, 167, 156, 0, 157, 158, 0, 0, 0,
0, 0, 0, 0, 154, 155, 0, 0, 156, 0,
157, 158, 0, 0, 0, 0, 0, 0, 0, 154,
155, 0, 0, 156, 0, 157, 158, 0, 0, 0,
0, 0, 0, 0, 154, 155, 0, 0, 156, 0,
157, 158, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 159, 160, 161, 162, 163, 0, 164, 0,
154, 165, 166, 0, 156, 389, 167, 158, 0, 0,
0, 0, 0, 0, 0, 159, 160, 161, 162, 163,
0, 164, 0, 0, 165, 166, 0, 0, 390, 167,
159, 160, 161, 162, 163, 391, 164, 0, 0, 165,
166, 0, 0, 0, 167, 159, 160, 161, 162, 163,
0, 164, 0, 0, 165, 166, 0, 0, 0, 167,
159, 160, 161, 162, 163, 0, 164, 0, 0, 0,
166, 4, 0, 0, 167, 0, 0, 5, 0, 6,
91, 92, 0, 0, 0, 0, 9, 160, 161, 162,
163, 10, 164, 0, 0, 0, 166, 0, 0, 0,
167, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
91, 92, 0, 0, 54, 198, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
91, 92, 0, 0, 54, 201, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
208, 209, 0, 0, 54, 204, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 210,
211, 212, 213, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
91, 92, 0, 0, 54, 214, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
91, 92, 0, 0, 54, 224, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
91, 92, 0, 0, 54, 230, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
91, 92, 0, 0, 54, 0, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
91, 92, 0, 0, 100, 0, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
91, 92, 0, 0, 113, 0, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
91, 92, 0, 0, 115, 0, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
91, 92, 0, 0, 117, 0, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
139, 92, 0, 0, 119, 0, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, 23, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
91, 92, 0, 0, 54, 0, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
91, 92, 0, 0, 175, 0, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
91, 92, 0, 0, 188, 0, 9, 55, 0, 0,
0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 323, 13, 14, 324, 325, 17, 326, 327, 93,
94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
97, 0, 0, 0, 51, 0, 52, 0, 0, 0,
0, 0, 0, 0, 54, 0, 0, 55
};

## yytname

const char* const yytname[]

static

Initial value:
=
{
"$end", "error", "$undefined", "DOTDOT", "EQUAL_EQUAL", "GE", "LE",
"MINUSMINUS", "NOT", "NOTEQUAL", "PLUSPLUS", "COLONCOLON", "ARROW",
"GRING_CMD", "BIGINTMAT_CMD", "BIGINTVEC_CMD", "INTMAT_CMD", "PROC_CMD",
"RING_CMD", "BEGIN_RING", "BUCKET_CMD", "IDEAL_CMD", "MAP_CMD",
"MATRIX_CMD", "MODUL_CMD", "NUMBER_CMD", "POLY_CMD", "RESOLUTION_CMD",
"SMATRIX_CMD", "VECTOR_CMD", "BETTI_CMD", "E_CMD", "FETCH_CMD",
"FREEMODULE_CMD", "KEEPRING_CMD", "IMAP_CMD", "KOSZUL_CMD", "MAXID_CMD",
"MONOM_CMD", "PAR_CMD", "PREIMAGE_CMD", "VAR_CMD", "VALTVARS", "VMAXDEG",
"VMAXMULT", "VNOETHER", "VMINPOLY", "END_RING", "CMD_1", "CMD_2",
"CMD_3", "CMD_12", "CMD_13", "CMD_23", "CMD_123", "CMD_M", "ROOT_DECL",
"ROOT_DECL_LIST", "RING_DECL", "RING_DECL_LIST", "EXAMPLE_CMD",
"EXPORT_CMD", "HELP_CMD", "KILL_CMD", "LIB_CMD", "LISTVAR_CMD",
"SETRING_CMD", "TYPE_CMD", "STRINGTOK", "BLOCKTOK", "INT_CONST",
"UNKNOWN_IDENT", "MONOM", "PROC_DEF", "APPLY", "ASSUME_CMD", "BREAK_CMD",
"CONTINUE_CMD", "ELSE_CMD", "EVAL", "QUOTE", "FOR_CMD", "IF_CMD",
"SYS_BREAK", "WHILE_CMD", "RETURN", "PARAMETER", "SYSVAR", "'='", "'<'",
"'+'", "'-'", "'/'", "'['", "']'", "'^'", "','", "';'", "'&'", "':'",
"UMINUS", "'('", "')'", "'.'", "'`'", "$accept", "lines", "pprompt",
"flowctrl", "example_dummy", "command", "assign", "elemexpr", "exprlist",
"expr", "$@1", "quote_start", "assume_start", "quote_end",
"expr_arithmetic", "left_value", "extendedid", "declare_ip_variable",
"stringexpr", "rlist", "ordername", "orderelem", "OrderingList",
"ordering", "cmdeq", "mat_cmd", "filecmd", "helpcmd", "examplecmd",
"exportcmd", "killcmd", "listcmd", "ringcmd1", "ringcmd", "scriptcmd",
"setrings", "setringcmd", "typecmd", "ifcmd", "whilecmd", "forcmd",
"proccmd", "parametercmd", "returncmd", 0
}

Definition at line 770 of file grammar.cc.

{
"$end", "error", "$undefined", "DOTDOT", "EQUAL_EQUAL", "GE", "LE",
"MINUSMINUS", "NOT", "NOTEQUAL", "PLUSPLUS", "COLONCOLON", "ARROW",
"GRING_CMD", "BIGINTMAT_CMD", "BIGINTVEC_CMD", "INTMAT_CMD", "PROC_CMD",
"RING_CMD", "BEGIN_RING", "BUCKET_CMD", "IDEAL_CMD", "MAP_CMD",
"MATRIX_CMD", "MODUL_CMD", "NUMBER_CMD", "POLY_CMD", "RESOLUTION_CMD",
"SMATRIX_CMD", "VECTOR_CMD", "BETTI_CMD", "E_CMD", "FETCH_CMD",
"FREEMODULE_CMD", "KEEPRING_CMD", "IMAP_CMD", "KOSZUL_CMD", "MAXID_CMD",
"MONOM_CMD", "PAR_CMD", "PREIMAGE_CMD", "VAR_CMD", "VALTVARS", "VMAXDEG",
"VMAXMULT", "VNOETHER", "VMINPOLY", "END_RING", "CMD_1", "CMD_2",
"CMD_3", "CMD_12", "CMD_13", "CMD_23", "CMD_123", "CMD_M", "ROOT_DECL",
"ROOT_DECL_LIST", "RING_DECL", "RING_DECL_LIST", "EXAMPLE_CMD",
"EXPORT_CMD", "HELP_CMD", "KILL_CMD", "LIB_CMD", "LISTVAR_CMD",
"SETRING_CMD", "TYPE_CMD", "STRINGTOK", "BLOCKTOK", "INT_CONST",
"UNKNOWN_IDENT", "MONOM", "PROC_DEF", "APPLY", "ASSUME_CMD", "BREAK_CMD",
"CONTINUE_CMD", "ELSE_CMD", "EVAL", "QUOTE", "FOR_CMD", "IF_CMD",
"SYS_BREAK", "WHILE_CMD", "RETURN", "PARAMETER", "SYSVAR", "'='", "'<'",
"'+'", "'-'", "'/'", "'['", "']'", "'^'", "','", "';'", "'&'", "':'",
"UMINUS", "'('", "')'", "'.'", "'`'", "$accept", "lines", "pprompt",
"flowctrl", "example_dummy", "command", "assign", "elemexpr", "exprlist",
"expr", "$@1", "quote_start", "assume_start", "quote_end",
"expr_arithmetic", "left_value", "extendedid", "declare_ip_variable",
"stringexpr", "rlist", "ordername", "orderelem", "OrderingList",
"ordering", "cmdeq", "mat_cmd", "filecmd", "helpcmd", "examplecmd",
"exportcmd", "killcmd", "listcmd", "ringcmd1", "ringcmd", "scriptcmd",
"setrings", "setringcmd", "typecmd", "ifcmd", "whilecmd", "forcmd",
"proccmd", "parametercmd", "returncmd", 0
};

## yytranslate

const yytype_uint8 yytranslate[]

static

Definition at line 603 of file grammar.cc.

{
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 98, 2,
101, 102, 2, 90, 96, 91, 103, 92, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 99, 97,
89, 88, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 93, 2, 94, 95, 2, 104, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
85, 86, 87, 100
};