Newer
Older
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
-1, 197, -1, 199, 177, 178, 179, 180, 181, -1,
183, 184, 185, 186, 187, 188, 189, 190, 191, -1,
-1, -1, -1, -1, 197, -1, 199, 177, 178, 179,
180, 181, -1, 183, 184, 185, 186, 187, 188, 189,
190, 191, -1, -1, -1, -1, -1, 197, -1, 199,
177, 178, 179, 180, 181, -1, 183, 184, 185, 186,
187, 188, 189, 190, 191, -1, -1, -1, -1, -1,
197, -1, 199, 177, 178, 179, 180, 181, -1, 183,
184, 185, 186, 187, 188, 189, 190, 191, -1, -1,
-1, -1, -1, 197, -1, 199, 177, 178, 179, 180,
181, -1, 183, 184, 185, 186, 187, 188, 189, 190,
191, -1, -1, -1, -1, -1, 197, -1, 199, 177,
178, 179, 180, 181, -1, 183, 184, 185, 186, 187,
188, 189, 190, 191, -1, -1, -1, -1, -1, 197,
-1, 199, 177, 178, 179, 180, 181, -1, 183, 184,
185, 186, 187, 188, 189, 190, 191, -1, -1, -1,
-1, -1, 197, -1, 199, 177, 178, 179, 180, 181,
-1, 183, 184, 185, 186, 187, 188, 189, 190, 191,
-1, -1, -1, -1, -1, 197, -1, 199, 177, 178,
179, 180, 181, -1, 183, 184, 185, 186, 187, 188,
189, 190, 191, -1, -1, -1, -1, -1, 197, -1,
199, 177, 178, 179, 180, 181, -1, 183, 184, 185,
186, 187, 188, 189, 190, 191, -1, -1, -1, -1,
-1, 197, -1, 199, 177, 178, 179, 180, 181, -1,
183, 184, 185, 186, 187, 188, 189, 190, 191, -1,
-1, -1, -1, -1, 197, -1, 199, 177, 178, 179,
180, 181, -1, 183, 184, 185, 186, 187, 188, 189,
190, 191, -1, -1, -1, -1, -1, 197, -1, 199,
177, 178, 179, 180, 181, -1, 183, 184, 185, 186,
187, 188, 189, 190, 191, -1, -1, -1, -1, -1,
197, -1, 199, 177, 178, 179, 180, 181, -1, 183,
184, 185, 186, 187, 188, 189, 190, 191, -1, -1,
-1, -1, -1, 197, -1, 199, 177, 178, 179, 180,
181, -1, 183, 184, 185, 186, 187, 188, 189, 190,
191, -1, -1, -1, -1, -1, 197, -1, 199, 177,
178, 179, 180, 181, -1, 183, 184, 185, 186, 187,
188, 189, 190, 191, -1, -1, -1, -1, -1, 197,
-1, 199, 177, 178, 179, 180, 181, -1, 183, 184,
185, 186, 187, 188, 189, 190, 191, -1, -1, -1,
-1, -1, 197, -1, 199, 177, 178, 179, 180, 181,
-1, 183, 184, 185, 186, 187, 188, 189, 190, 191,
-1, -1, -1, -1, -1, 197, -1, 199, 177, 178,
179, 180, 181, -1, 183, 184, 185, 186, 187, 188,
189, 190, 191, -1, -1, -1, -1, -1, 197, -1,
199, 177, 178, 179, 180, 181, -1, 183, 184, 185,
186, 187, 188, 189, 190, 191, -1, -1, -1, -1,
-1, 197, -1, 199, 177, 178, 179, 180, 181, -1,
183, 184, 185, 186, 187, 188, 189, 190, 191, -1,
-1, -1, -1, -1, 197, -1, 199, 177, 178, 179,
180, 181, -1, 183, 184, 185, 186, 187, 188, 189,
190, 191, -1, -1, -1, -1, -1, 197, -1, 199,
177, 178, 179, 180, 181, -1, 183, 184, 185, 186,
187, 188, 189, 190, 191, -1, -1, -1, -1, -1,
197, -1, 199, 177, 178, 179, 180, 181, -1, 183,
184, 185, 186, 187, 188, 189, 190, 191, -1, -1,
-1, -1, -1, 197, -1, 199, 177, 178, 179, 180,
181, -1, 183, 184, 185, 186, 187, 188, 189, 190,
191, -1, -1, -1, -1, -1, 197, -1, 199, 177,
178, 179, 180, 181, -1, 183, 184, 185, 186, 187,
188, 189, 190, 191, -1, -1, -1, -1, -1, 197,
-1, 199, 177, 178, 179, 180, 181, -1, 183, 184,
185, 186, 187, 188, 189, 190, 191, -1, -1, -1,
-1, -1, 197, -1, 199, 177, 178, 179, 180, 181,
-1, 183, 184, 185, 186, 187, 188, 189, 190, 191,
-1, -1, -1, -1, -1, 197, -1, 199, 177, 178,
179, 180, 181, -1, 183, 184, 185, 186, 187, 188,
189, 190, 191, -1, -1, -1, -1, -1, 197, -1,
199, 177, 178, 179, 180, 181, -1, 183, 184, 185,
186, 187, 188, 189, 190, 191, -1, -1, -1, -1,
-1, 197, -1, 199, 177, 178, 179, 180, 181, -1,
183, 184, 185, 186, 187, 188, 189, 190, 191, -1,
-1, -1, -1, -1, 197, -1, 199, 177, 178, 179,
180, 181, -1, 183, 184, 185, 186, 187, 188, 189,
190, 191, -1, -1, -1, -1, -1, 197, -1, 199,
177, 178, 179, 180, 181, -1, 183, 184, 185, 186,
187, 188, 189, 190, 191, -1, -1, -1, -1, -1,
197, -1, 199, 177, 178, 179, 180, 181, -1, 183,
184, 185, 186, 187, 188, 189, 190, 191, -1, -1,
-1, -1, -1, 197, -1, 199, 177, 178, 179, 180,
181, -1, 183, 184, 185, 186, 187, 188, 189, 190,
191, -1, -1, -1, -1, -1, 197, -1, 199, 177,
178, 179, 180, 181, -1, 183, 184, 185, 186, 187,
188, 189, 190, 191, -1, -1, -1, -1, -1, 197,
-1, 199, 177, 178, 179, 180, 181, -1, 183, 184,
185, 186, 187, 188, 189, 190, 191, -1, -1, -1,
-1, -1, 197, -1, 199, 177, 178, 179, 180, 181,
-1, 183, 184, 185, 186, 187, 188, 189, 190, 191,
-1, -1, -1, -1, -1, 197, -1, 199, 177, 178,
179, 180, 181, -1, 183, 184, 185, 186, 187, 188,
189, 190, 191, -1, -1, -1, -1, -1, 197, -1,
199, 177, 178, 179, 180, 181, -1, 183, 184, 185,
186, 187, 188, 189, 190, 191, -1, -1, -1, -1,
-1, 197, -1, 199, 177, 178, 179, 180, 181, -1,
183, 184, 185, 186, 187, 188, 189, 190, 191, -1,
-1, -1, -1, -1, 197, -1, 199, 177, 178, 179,
180, 181, -1, 183, 184, 185, 186, 187, 188, 189,
190, 191, -1, -1, -1, -1, -1, 197, -1, 199,
177, 178, 179, 180, 181, -1, 183, 184, 185, 186,
187, 188, 189, 190, 191, -1, -1, -1, -1, -1,
197, -1, 199, 177, 178, 179, 180, 181, -1, 183,
184, 185, 186, 187, 188, 189, 190, 191, -1, -1,
-1, -1, -1, 197, -1, 199, 177, 178, 179, 180,
181, -1, 183, 184, 185, 186, 187, 188, 189, 190,
191, -1, -1, -1, -1, -1, 197, -1, 199, 177,
178, 179, 180, 181, -1, 183, 184, 185, 186, 187,
188, 189, 190, 191, -1, -1, -1, -1, -1, 197,
-1, 199, 177, 178, 179, 180, 181, -1, 183, 184,
185, 186, 187, 188, 189, 190, 191, -1, -1, -1,
-1, -1, 197, -1, 199, 177, 178, 179, 180, 181,
-1, 183, 184, 185, 186, 187, 188, 189, 190, 191,
-1, -1, -1, -1, -1, 197, -1, 199, 177, 178,
179, 180, 181, -1, 183, 184, 185, 186, 187, 188,
189, 190, 191, -1, -1, -1, -1, -1, 197, -1,
199, 177, 178, 179, 180, 181, -1, 183, 184, 185,
186, 187, 188, 189, 190, 191, -1, -1, -1, -1,
-1, 197, -1, 199, 177, 178, 179, 180, 181, -1,
183, 184, 185, 186, 187, 188, 189, 190, 191, -1,
-1, -1, -1, -1, 197, -1, 199, 177, 178, 179,
180, 181, -1, 183, 184, 185, 186, 187, 188, 189,
190, 191, -1, -1, -1, -1, -1, 197, -1, 199,
177, 178, 179, 180, 181, -1, 183, 184, 185, 186,
187, 188, 189, 190, 191, -1, -1, -1, -1, -1,
197, -1, 199, 177, 178, 179, 180, 181, -1, 183,
184, 185, 186, 187, 188, 189, 190, 191, -1, -1,
-1, -1, -1, 197, -1, 199, 177, 178, 179, 180,
181, -1, 183, 184, 185, 186, 187, 188, 189, 190,
191, -1, -1, -1, -1, -1, 197, -1, 199, 177,
178, 179, 180, 181, -1, 183, 184, 185, 186, 187,
188, 189, 190, 191, -1, -1, -1, -1, -1, 197,
-1, 199, 177, 178, 179, 180, 181, -1, 183, 184,
185, 186, 187, 188, 189, 190, 191, -1, -1, -1,
-1, -1, 197, -1, 199, 177, 178, 179, 180, 181,
-1, 183, 184, 185, 186, 187, 188, 189, 190, 191,
-1, -1, -1, -1, -1, 197, -1, 199, 177, 178,
179, 180, 181, -1, 183, 184, 185, 186, 187, 188,
189, 190, 191, -1, -1, -1, -1, -1, 197, -1,
199, 177, 178, 179, 180, 181, -1, 183, 184, 185,
186, 187, 188, 189, 190, 191, -1, -1, -1, -1,
-1, 197, -1, 199, 177, 178, 179, 180, 181, -1,
183, 184, 185, 186, 187, 188, 189, 190, 191, -1,
-1, -1, -1, -1, 197, -1, 199, 177, 178, 179,
180, 181, -1, 183, 184, 185, 186, 187, 188, 189,
190, 191, -1, -1, -1, -1, -1, 197, -1, 199
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
#line 3 "/usr/share/bison.simple"
/* This file comes from bison-1.28. */
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/* As a special exception, when this file is copied by Bison into a
Bison output file, you may use that output file without restriction.
This special exception was added by the Free Software Foundation
in version 1.24 of Bison. */
/* This is the parser code that is written into each bison parser
when the %semantic_parser declaration is not specified in the grammar.
It was written by Richard Stallman by simplifying the hairy parser
used when %semantic_parser is specified. */
#ifndef YYSTACK_USE_ALLOCA
#ifdef alloca
#define YYSTACK_USE_ALLOCA
#else /* alloca not defined */
#ifdef __GNUC__
#define YYSTACK_USE_ALLOCA
#define alloca __builtin_alloca
#else /* not GNU C. */
#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) || (defined (__sun) && defined (__i386))
#define YYSTACK_USE_ALLOCA
#include <alloca.h>
#else /* not sparc */
/* We think this test detects Watcom and Microsoft C. */
/* This used to test MSDOS, but that is a bad idea
since that symbol is in the user namespace. */
#if (defined (_MSDOS) || defined (_MSDOS_)) && !defined (__TURBOC__)
#if 0 /* No need for malloc.h, which pollutes the namespace;
instead, just don't use alloca. */
#include <malloc.h>
#else /* not MSDOS, or __TURBOC__ */
#if defined(_AIX)
/* I don't know what this was needed for, but it pollutes the namespace.
So I turned it off. rms, 2 May 1997. */
/* #include <malloc.h> */
#pragma alloca
#define YYSTACK_USE_ALLOCA
#else /* not MSDOS, or __TURBOC__, or _AIX */
#if 0
#ifdef __hpux /* haible@ilog.fr says this works for HPUX 9.05 and up,
and on HPUX 10. Eventually we can turn this on. */
#define YYSTACK_USE_ALLOCA
#define alloca __builtin_alloca
#endif /* __hpux */
#endif /* not _AIX */
#endif /* not MSDOS, or __TURBOC__ */
#endif /* not sparc */
#endif /* not GNU C */
#endif /* alloca not defined */
#endif /* YYSTACK_USE_ALLOCA not defined */
#ifdef YYSTACK_USE_ALLOCA
#define YYSTACK_ALLOC alloca
#else
#define YYSTACK_ALLOC malloc
/* Note: there must be only one dollar sign in this file.
It is replaced by the list of actions, each action
as one case of the switch. */
#define yyerrok (yyerrstatus = 0)
#define yyclearin (yychar = YYEMPTY)
#define YYEMPTY -2
#define YYEOF 0
#define YYACCEPT goto yyacceptlab
#define YYERROR goto yyerrlab1
/* Like YYERROR except do call yyerror.
This remains here temporarily to ease the
transition to the new meaning of YYERROR, for GCC.
Once GCC version 2 has supplanted version 1, this can go. */
#define YYFAIL goto yyerrlab
#define YYRECOVERING() (!!yyerrstatus)
do \
if (yychar == YYEMPTY && yylen == 1) \
yychar1 = YYTRANSLATE (yychar); \
YYPOPSTACK; \
goto yybackup; \
} \
else \
while (0)
#define YYTERROR 1
#define YYERRCODE 256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
#ifndef YYPURE
#define YYLEX yylex()
#endif
#ifdef YYPURE
#ifdef YYLSP_NEEDED
#ifdef YYLEX_PARAM
#define YYLEX yylex(&yylval, &yylloc, YYLEX_PARAM)
#else
#define YYLEX yylex(&yylval, &yylloc)
#endif
#else /* not YYLSP_NEEDED */
#ifdef YYLEX_PARAM
#define YYLEX yylex(&yylval, YYLEX_PARAM)
#else
#define YYLEX yylex(&yylval)
#endif
#endif /* not YYLSP_NEEDED */
#endif
/* If nonreentrant, generate the variables here */

Christophe Geuzaine
committed
int yychar; /* the lookahead symbol */
YYSTYPE yylval; /* the semantic value of the */
/* lookahead symbol */
#ifdef YYLSP_NEEDED
YYLTYPE yylloc; /* location data for the lookahead */
/* symbol */
int yynerrs; /* number of parse errors so far */
#endif /* not YYPURE */
#if YYDEBUG != 0
int yydebug; /* nonzero means print parse trace */
/* Since this is uninitialized, it does not stop multiple parsers
from coexisting. */
/* YYINITDEPTH indicates the initial size of the parser's stacks */
#ifndef YYINITDEPTH
#define YYINITDEPTH 200
#endif
/* YYMAXDEPTH is the maximum size the stacks can grow to
(effective only if the built-in stack extension method is used). */
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
/* Define __yy_memcpy. Note that the size argument
should be passed with type unsigned int, because that is what the non-GCC
definitions require. With GCC, __builtin_memcpy takes an arg
of type size_t, but it can handle unsigned int. */
#if __GNUC__ > 1 /* GNU C and GNU C++ define this. */
#define __yy_memcpy(TO,FROM,COUNT) __builtin_memcpy(TO,FROM,COUNT)
#else /* not GNU C or C++ */
#ifndef __cplusplus
/* This is the most reliable way to avoid incompatibilities
in available built-in functions on various systems. */
static void
__yy_memcpy (to, from, count)
char *to;
char *from;
unsigned int count;
{
register char *f = from;
register char *t = to;
register int i = count;
while (i-- > 0)
*t++ = *f++;
#else /* __cplusplus */
/* This is the most reliable way to avoid incompatibilities
in available built-in functions on various systems. */
static void
__yy_memcpy (char *to, char *from, unsigned int count)
{
register char *t = to;
register char *f = from;
register int i = count;
while (i-- > 0)
*t++ = *f++;

Christophe Geuzaine
committed
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
into yyparse. The argument should have type void *.
It should actually point to an object.
Grammar actions can access the variable by casting it
to the proper pointer type. */
#ifdef YYPARSE_PARAM
#ifdef __cplusplus
#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
#define YYPARSE_PARAM_DECL
#else /* not __cplusplus */
#define YYPARSE_PARAM_ARG YYPARSE_PARAM
#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
#endif /* not __cplusplus */
#else /* not YYPARSE_PARAM */
#define YYPARSE_PARAM_ARG
#define YYPARSE_PARAM_DECL
#endif /* not YYPARSE_PARAM */
/* Prevent warning if -Wstrict-prototypes. */
#ifdef __GNUC__
int
YYPARSE_PARAM_DECL
{
register int yystate;
register int yyn;
register short *yyssp;
int yyerrstatus; /* number of tokens to shift before error messages enabled */
int yychar1 = 0; /* lookahead token as an internal (translated) token number */
short yyssa[YYINITDEPTH]; /* the state stack */
YYSTYPE yyvsa[YYINITDEPTH]; /* the semantic value stack */
short *yyss = yyssa; /* refer to the stacks thru separate pointers */
YYSTYPE *yyvs = yyvsa; /* to allow yyoverflow to reallocate them elsewhere */
#ifdef YYLSP_NEEDED
YYLTYPE yylsa[YYINITDEPTH]; /* the location stack */
#ifdef YYPURE
int yychar;
YYSTYPE yylval;
int yynerrs;
#ifdef YYLSP_NEEDED
YYLTYPE yylloc;
#endif
YYSTYPE yyval; /* the variable used to return */
/* semantic values from the action */
/* routines */
int yylen;
#if YYDEBUG != 0
if (yydebug)
fprintf(stderr, "Starting parse\n");
#endif
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. */
yyvsp = yyvs;
/* Push a new state, which is found in yystate . */
/* In all cases, when you get here, the value and location stacks
have just been pushed. so pushing a state here evens the stacks. */
yynewstate:
if (yyssp >= yyss + yystacksize - 1)
{
/* Give user a chance to reallocate the stack */
/* Use copies of these so that the &'s don't force the real ones into memory. */
YYSTYPE *yyvs1 = yyvs;
short *yyss1 = yyss;
#ifdef YYLSP_NEEDED
YYLTYPE *yyls1 = yyls;
#endif
/* Get the current used size of the three stacks, in elements. */
#ifdef yyoverflow
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
/* Each stack pointer address is followed by the size of
the data in use in that stack, in bytes. */
#ifdef YYLSP_NEEDED
/* This used to be a conditional around just the two extra args,
but that might be undefined if yyoverflow is a macro. */
yyoverflow("parser stack overflow",
&yyss1, size * sizeof (*yyssp),
&yyvs1, size * sizeof (*yyvsp),
&yyls1, size * sizeof (*yylsp),
&yystacksize);
#else
yyoverflow("parser stack overflow",
&yyss1, size * sizeof (*yyssp),
&yyvs1, size * sizeof (*yyvsp),
&yystacksize);
#endif
yyss = yyss1; yyvs = yyvs1;
#ifdef YYLSP_NEEDED
yyls = yyls1;
#endif
#else /* no yyoverflow */
/* Extend the stack our own way. */
if (yystacksize >= YYMAXDEPTH)
{
yyerror("parser stack overflow");
if (yyfree_stacks)
{
free (yyss);
free (yyvs);
#ifdef YYLSP_NEEDED
free (yyls);
#endif
}
return 2;
}
yystacksize *= 2;
if (yystacksize > YYMAXDEPTH)
yystacksize = YYMAXDEPTH;
#ifndef YYSTACK_USE_ALLOCA
yyfree_stacks = 1;
#endif
yyss = (short *) YYSTACK_ALLOC (yystacksize * sizeof (*yyssp));
__yy_memcpy ((char *)yyss, (char *)yyss1,
size * (unsigned int) sizeof (*yyssp));
yyvs = (YYSTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yyvsp));
__yy_memcpy ((char *)yyvs, (char *)yyvs1,
size * (unsigned int) sizeof (*yyvsp));
#ifdef YYLSP_NEEDED
yyls = (YYLTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yylsp));
__yy_memcpy ((char *)yyls, (char *)yyls1,
size * (unsigned int) sizeof (*yylsp));
#endif
#endif /* no yyoverflow */
yyssp = yyss + size - 1;
yyvsp = yyvs + size - 1;
#ifdef YYLSP_NEEDED
yylsp = yyls + size - 1;
#if YYDEBUG != 0
if (yydebug)
fprintf(stderr, "Stack size increased to %d\n", yystacksize);
#endif
if (yyssp >= yyss + yystacksize - 1)
YYABORT;
}
#if YYDEBUG != 0
if (yydebug)
fprintf(stderr, "Entering state %d\n", yystate);
#endif
goto yybackup;
/* Do appropriate processing given the current state. */
/* Read a lookahead token if we need one and don't already have one. */
/* yyresume: */
/* First try to decide what to do without reference to lookahead token. */
yyn = yypact[yystate];
goto yydefault;
/* Not known => get a lookahead token if don't already have one. */
/* yychar is either YYEMPTY or YYEOF
or a valid token in external form. */
if (yychar == YYEMPTY)
{
#if YYDEBUG != 0
if (yydebug)
fprintf(stderr, "Reading a token: ");
#endif
yychar = YYLEX;
}
/* Convert token to internal form (in yychar1) for indexing tables with */
{
yychar1 = 0;
#if YYDEBUG != 0
if (yydebug)
fprintf(stderr, "Now at end of input.\n");
#endif
}
else
{
fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]);
/* Give the individual parser a way to print the precise meaning
of a token, for further debugging info. */
#ifdef YYPRINT
}
yyn += yychar1;
goto yydefault;
yyn = yytable[yyn];
/* yyn is what to do for this token type in this state.
Negative => reduce, -yyn is rule number.
Positive => shift, yyn is new state.
New state is final state => don't bother to shift,
just return success.
0, or most negative number => error. */
if (yyn < 0)
{
goto yyerrlab;
yyn = -yyn;
goto yyreduce;
}
if (yyn == YYFINAL)
YYACCEPT;
/* Shift the lookahead token. */
#if YYDEBUG != 0
if (yydebug)
fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]);
#endif
/* Discard the token being shifted unless it is eof. */
if (yychar != YYEOF)
yychar = YYEMPTY;
*++yyvsp = yylval;
/* count tokens shifted since error; after three, turn off error status. */
if (yyerrstatus) yyerrstatus--;
yystate = yyn;
goto yynewstate;
yyn = yydefact[yystate];
if (yyn == 0)
goto yyerrlab;
/* Do a reduction. yyn is the number of a rule to reduce with. */
yyreduce:
yylen = yyr2[yyn];
if (yylen > 0)
yyval = yyvsp[1-yylen]; /* implement default value of the action */
if (yydebug)
{
fprintf (stderr, "Reducing via rule %d (line %d), ",
yyn, yyrline[yyn]);
/* Print the symbols being reduced, and their result. */
for (i = yyprhs[yyn]; yyrhs[i] > 0; i++)
fprintf (stderr, "%s ", yytname[yyrhs[i]]);
fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]);
}
#endif
yymsg(INFO, "Reading STL solid");
STL_Surf = Create_Surface(NEWSURFACE(), MSH_SURF_STL);
STL_Surf->STL = new STL_Data;
return 1;
STL_Surf->STL->Add_Facet(yyvsp[-12].d, yyvsp[-11].d, yyvsp[-10].d,
yyvsp[-8].d, yyvsp[-7].d, yyvsp[-6].d,
yyvsp[-4].d, yyvsp[-3].d, yyvsp[-2].d, CTX.geom.stl_create_elementary);
return 1;
if(CTX.geom.stl_create_elementary){
STL_Surf->STL->ReplaceDuplicate();
if(CTX.geom.stl_create_physical)
STL_Surf->STL->CreatePhysicalSurface();
}
else{
Tree_Add(THEM->Surfaces, &STL_Surf);
}
yymsg(INFO, "Read STL solid");
return 1;
Create_Step_Solid_BRep();
Resolve_BREP ();
Add_Cartesian_Point((int)yyvsp[-8].d, yyvsp[-4].c, yyvsp[-2].v[0], yyvsp[-2].v[1], yyvsp[-2].v[2]);
Add_BSpline_Curve_With_Knots ((int)yyvsp[-22].d, yyvsp[-18].c, (int) yyvsp[-16].d, yyvsp[-14].l, yyvsp[-6].l, yyvsp[-4].l, 0., 1.);
Add_BSpline_Surface_With_Knots ((int)yyvsp[-30].d, yyvsp[-26].c, (int) yyvsp[-24].d, (int) yyvsp[-22].d, yyvsp[-20].l, yyvsp[-10].l,
yyvsp[-8].l, yyvsp[-6].l, yyvsp[-4].l, 0., 1., 0., 1. );
Add_Edge_Curve ((int)yyvsp[-14].d, yyvsp[-10].c , (int)yyvsp[-8].d , (int)yyvsp[-6].d, (int)yyvsp[-4].d);
Add_Face_Outer_Bound((int)yyvsp[-10].d, yyvsp[-6].c, (int)yyvsp[-4].d, yyvsp[-2].i, 1);
// check the norm! Face_Bound : hole outside surface!

Christophe Geuzaine
committed
yymsg(INFO, "Found a face bound");
Add_Face_Outer_Bound((int)yyvsp[-10].d, yyvsp[-6].c, (int)yyvsp[-4].d, yyvsp[-2].i, 0);
Add_Oriented_Edge((int)yyvsp[-14].d, yyvsp[-10].c, (int)yyvsp[-4].d, yyvsp[-2].i);
Add_Advanced_Face((int)yyvsp[-12].d, yyvsp[-8].c, yyvsp[-6].l, (int)yyvsp[-4].d, yyvsp[-2].i);
Add_Vertex_Point((int)yyvsp[-8].d, yyvsp[-4].c, (int)yyvsp[-2].d);
Add_Axis2_Placement3D ((int)yyvsp[-12].d, (int)yyvsp[-4].d, (int)yyvsp[-2].d, (int)yyvsp[-6].d);
Add_Direction((int)yyvsp[-8].d , yyvsp[-4].c, yyvsp[-2].v[0], yyvsp[-2].v[1], yyvsp[-2].v[2]);
Add_Line ((int)yyvsp[-10].d, yyvsp[-6].c , (int) yyvsp[-4].d, (int)yyvsp[-2].d);
yymsg(INFO, "Found a closed shell");
Add_Closed_Shell((int)yyvsp[-8].d, yyvsp[-4].c , yyvsp[-2].l);
Add_Cylinder ((int)yyvsp[-10].d, yyvsp[-6].c , (int)yyvsp[-4].d, yyvsp[-2].d);
Add_Cone ((int)yyvsp[-12].d, yyvsp[-8].c , (int)yyvsp[-6].d, yyvsp[-4].d, yyvsp[-2].d);
Add_Torus ((int)yyvsp[-12].d, yyvsp[-8].c , (int)yyvsp[-6].d, yyvsp[-4].d, yyvsp[-2].d);
Add_Circle((int) yyvsp[-10].d, yyvsp[-6].c, (int) yyvsp[-4].d, yyvsp[-2].d);
Add_Ellipse((int) yyvsp[-12].d, yyvsp[-8].c, (int) yyvsp[-6].d, yyvsp[-4].d, yyvsp[-2].d);