"optlab/optlab.html" did not exist on "53d3adcb764c58502618e3a50f9cdb0a926e342b"
Newer
Older
113, 114, -1, 116, 117, 118, 119, 120, 121, 122,
123, 124, -1, -1, -1, -1, -1, 130, -1, -1,
-1, 134, 110, 111, 112, 113, 114, -1, 116, 117,
118, 119, 120, 121, 122, 123, 124, -1, -1, -1,
-1, -1, 130, -1, -1, -1, 134, 110, 111, 112,
113, 114, -1, 116, 117, 118, 119, 120, 121, 122,
123, 124, -1, -1, -1, -1, -1, 130, -1, -1,
-1, 134, 110, 111, 112, 113, 114, -1, 116, 117,
118, 119, 120, 121, 122, 123, 124, -1, -1, -1,
-1, -1, 130, -1, -1, -1, 134, 110, 111, 112,
113, 114, -1, 116, 117, 118, 119, 120, 121, 122,
123, 124, -1, -1, -1, -1, -1, 130, -1, 132,
110, 111, 112, 113, 114, -1, 116, 117, 118, 119,
120, 121, 122, 123, 124, -1, -1, -1, -1, -1,
130, -1, 132, 110, 111, 112, 113, 114, -1, 116,
117, 118, 119, 120, 121, 122, 123, 124, -1, -1,
-1, -1, -1, 130, -1, 132, 110, 111, 112, 113,
114, -1, 116, 117, 118, 119, 120, 121, 122, 123,
124, -1, -1, -1, -1, -1, 130, -1, 132, 110,
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
111, 112, 113, 114, -1, 116, 117, 118, 119, 120,
121, 122, 123, 124, -1, -1, -1, -1, -1, 130,
-1, 132, 110, 111, 112, 113, 114, -1, 116, 117,
118, 119, 120, 121, 122, 123, 124, -1, -1, -1,
-1, -1, 130, -1, 132, 110, 111, 112, 113, 114,
-1, 116, 117, 118, 119, 120, 121, 122, 123, 124,
-1, -1, -1, -1, -1, 130, -1, 132, 110, 111,
112, 113, 114, -1, 116, 117, 118, 119, 120, 121,
122, 123, 124, -1, -1, -1, -1, -1, 130, -1,
132, 110, 111, 112, 113, 114, -1, 116, 117, 118,
119, 120, 121, 122, 123, 124, -1, -1, -1, -1,
-1, 130, -1, 132, 110, 111, 112, 113, 114, -1,
116, 117, 118, 119, 120, 121, 122, 123, 124, -1,
-1, -1, -1, -1, 130, -1, 132, 110, 111, 112,
113, 114, -1, 116, 117, 118, 119, 120, 121, 122,
123, 124, -1, -1, -1, -1, -1, 130, -1, 132,
110, 111, 112, 113, 114, -1, 116, 117, 118, 119,
120, 121, 122, 123, 124, -1, -1, -1, -1, -1,
130, -1, 132, 110, 111, 112, 113, 114, -1, 116,
117, 118, 119, 120, 121, 122, 123, 124, -1, -1,
-1, -1, -1, 130, -1, 132, 110, 111, 112, 113,
114, -1, 116, 117, 118, 119, 120, 121, 122, 123,
124, -1, -1, -1, -1, -1, 130, -1, 132, 110,
111, 112, 113, 114, -1, 116, 117, 118, 119, 120,
121, 122, 123, 124, -1, -1, -1, -1, -1, 130,
-1, 132, 110, 111, 112, 113, 114, -1, 116, 117,
118, 119, 120, 121, 122, 123, 124, -1, -1, -1,
-1, -1, 130, -1, 132, 110, 111, 112, 113, 114,
-1, 116, 117, 118, 119, 120, 121, 122, 123, 124,
-1, -1, -1, -1, -1, 130, -1, 132, 110, 111,
112, 113, 114, -1, 116, 117, 118, 119, 120, 121,
122, 123, 124, -1, -1, -1, -1, -1, 130, -1,
132, 110, 111, 112, 113, 114, -1, 116, 117, 118,
119, 120, 121, 122, 123, 124, -1, -1, -1, -1,
-1, 130, -1, 132, 110, 111, 112, 113, 114, -1,
116, 117, 118, 119, 120, 121, 122, 123, 124, -1,
-1, -1, -1, -1, 130, -1, 132, 110, 111, 112,
113, 114, -1, 116, 117, 118, 119, 120, 121, 122,
123, 124, -1, -1, -1, -1, -1, 130, -1, 132,
110, 111, 112, 113, 114, -1, 116, 117, 118, 119,
120, 121, 122, 123, 124, -1, -1, -1, -1, -1,
130, -1, 132, 110, 111, 112, 113, 114, -1, 116,
117, 118, 119, 120, 121, 122, 123, 124, -1, -1,
-1, -1, -1, 130, -1, 132, 110, 111, 112, 113,
114, -1, 116, 117, 118, 119, 120, 121, 122, 123,
124, -1, -1, -1, -1, -1, 130, -1, 132, 110,
111, 112, 113, 114, -1, 116, 117, 118, 119, 120,
121, 122, 123, 124, -1, -1, -1, -1, -1, 130,
-1, 132, 110, 111, 112, 113, 114, -1, 116, 117,
118, 119, 120, 121, 122, 123, 124, -1, -1, -1,
-1, -1, 130, -1, 132, 110, 111, 112, 113, 114,
-1, 116, 117, 118, 119, 120, 121, 122, 123, 124,
-1, -1, -1, -1, -1, 130, -1, 132, 110, 111,
112, 113, 114, -1, 116, 117, 118, 119, 120, 121,
122, 123, 124, -1, -1, -1, -1, -1, 130, -1,
132, 110, 111, 112, 113, 114, -1, 116, 117, 118,
119, 120, 121, 122, 123, 124, -1, -1, -1, -1,
-1, 130, -1, 132, 110, 111, 112, 113, 114, -1,
116, 117, 118, 119, 120, 121, 122, 123, 124, -1,
-1, -1, -1, -1, 130, -1, 132, 110, 111, 112,
113, 114, -1, 116, 117, 118, 119, 120, 121, 122,
123, 124, -1, -1, -1, -1, -1, 130, -1, 132,
110, 111, 112, 113, 114, -1, 116, 117, 118, 119,
120, 121, 122, 123, 124, -1, -1, -1, -1, -1,
130, -1, 132, 110, 111, 112, 113, 114, -1, 116,
117, 118, 119, 120, 121, 122, 123, 124, -1, -1,
-1, -1, -1, 130, -1, 132, 110, 111, 112, 113,
114, -1, 116, 117, 118, 119, 120, 121, 122, 123,
124, -1, -1, -1, -1, -1, 130, -1, 132, 110,
111, 112, 113, 114, -1, 116, 117, 118, 119, 120,
121, 122, 123, 124, -1, -1, -1, -1, -1, 130,
-1, 132, 110, 111, 112, 113, 114, -1, 116, 117,
118, 119, 120, 121, 122, 123, 124, -1, -1, -1,
-1, -1, 130, -1, 132, 110, 111, 112, 113, 114,
-1, 116, 117, 118, 119, 120, 121, 122, 123, 124,
-1, -1, -1, -1, -1, 130, -1, 132, 110, 111,
112, 113, 114, -1, 116, 117, 118, 119, 120, 121,
122, 123, 124, -1, -1, -1, -1, -1, 130, -1,
132, 110, 111, 112, 113, 114, -1, 116, 117, 118,
119, 120, 121, 122, 123, 124, -1, -1, -1, -1,
-1, 130, -1, 132, 110, 111, 112, 113, 114, -1,
116, 117, 118, 119, 120, 121, 122, 123, 124, -1,
-1, -1, -1, -1, 130, -1, 132, 110, 111, 112,
113, 114, -1, 116, 117, 118, 119, 120, 121, 122,
123, 124, -1, -1, -1, -1, -1, 130, -1, 132,
110, 111, 112, 113, 114, -1, 116, 117, 118, 119,
120, 121, 122, 123, 124, -1, -1, -1, -1, -1,
130, -1, 132, 110, 111, 112, 113, 114, -1, 116,
117, 118, 119, 120, 121, 122, 123, 124, -1, -1,
-1, -1, -1, 130, -1, 132, 110, 111, 112, 113,
114, -1, 116, 117, 118, 119, 120, 121, 122, 123,
124, -1, -1, -1, -1, -1, 130, -1, 132, 110,
111, 112, 113, 114, -1, 116, 117, 118, 119, 120,
121, 122, 123, 124, -1, -1, -1, -1, -1, 130,
-1, 132, 110, 111, 112, 113, 114, -1, 116, 117,
118, 119, 120, 121, 122, 123, 124, -1, -1, -1,
-1, -1, 130, -1, 132, 110, 111, 112, 113, 114,
-1, 116, 117, 118, 119, 120, 121, 122, 123, 124,
-1, -1, -1, -1, -1, 130, -1, 132, 110, 111,
112, 113, 114, -1, 116, 117, 118, 119, 120, 121,
122, 123, 124, -1, -1, -1, -1, -1, 130, -1,
132, 110, 111, 112, 113, 114, -1, 116, 117, 118,
119, 120, 121, 122, 123, 124, -1, -1, -1, -1,
-1, 130, -1, 132, 110, 111, 112, 113, 114, -1,
116, 117, 118, 119, 120, 121, 122, 123, 124, -1,
-1, -1, -1, -1, 130, -1, 132, 110, 111, 112,
113, 114, -1, 116, 117, 118, 119, 120, 121, 122,
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
#line 3 "/usr/share/bison.simple"
/* This file comes from bison-1.28. */
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
/* Skeleton output parser for bison,
Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
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 YYEOF 0
#define YYACCEPT goto yyacceptlab
/* 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) \
{ yychar = (token), yylval = (value); \
yychar1 = YYTRANSLATE (yychar); \
YYPOPSTACK; \
goto yybackup; \
} \
else \
while (0)
#define YYTERROR 1
#define YYERRCODE 256
#else /* not YYLSP_NEEDED */
#ifdef YYLEX_PARAM
#define YYLEX yylex(&yylval, YYLEX_PARAM)
#define YYLEX yylex(&yylval)
#endif
#endif /* not YYLSP_NEEDED */
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). */
/* 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;
/* This is the most reliable way to avoid incompatibilities
in available built-in functions on various systems. */
register char *t = to;
register char *f = from;
register int i = count;

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__
{
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 */
YYLTYPE *yyls = yylsa;
YYLTYPE *yylsp;
#ifdef YYPURE
int yychar;
YYSTYPE yylval;
int yynerrs;
#ifdef YYLSP_NEEDED
YYLTYPE yylloc;
#endif
#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:
/* 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
/* 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;
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;
#endif
#if YYDEBUG != 0
if (yydebug)
fprintf(stderr, "Stack size increased to %d\n", yystacksize);
#endif
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 */
if (yychar <= 0) /* This means end of input. */
{
yychar1 = 0;
yychar = YYEOF; /* Don't call YYLEX any more */
#if YYDEBUG != 0
if (yydebug)
fprintf(stderr, "Now at end of input.\n");
#endif
}
else
{
yychar1 = YYTRANSLATE(yychar);
#if YYDEBUG != 0
if (yydebug)
{
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
YYPRINT (stderr, yychar, yylval);
#endif
fprintf (stderr, ")\n");
}
#endif
}
yyn += yychar1;
if (yyn < 0 || yyn > YYLAST || yycheck[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 */
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
char tmpstring[1024];
int i = PrintListOfDouble(yyvsp[-4].c, yyvsp[-2].l, tmpstring);
if(i < 0)
yymsg(GERROR, "Too few arguments in Printf");
else if(i > 0)
yymsg(GERROR, "%d extra argument%s in Printf", i, (i>1)?"s":"");
else
Msg(DIRECT, tmpstring);
Free(yyvsp[-4].c);
List_Delete(yyvsp[-2].l);
if(!strcmp(yyvsp[-5].c, "View") && !CheckViewErrorFlags(View)){
EndView(View, 0, yyname, yyvsp[-4].c);
}
Free(yyvsp[-5].c); Free(yyvsp[-4].c);
if(!strcmp(yyvsp[-7].c, "View") && !CheckViewErrorFlags(View)){
EndView(View, 0, yyname, yyvsp[-6].c);
}
Free(yyvsp[-7].c); Free(yyvsp[-6].c); Free(yyvsp[-5].c);
View = BeginView(1);
for(int i = 0; i < VIEW_NB_ELEMENT_TYPES; i++){
ViewErrorFlags[i] = 0;
}
{ ViewCoord[ViewCoordIdx] = yyvsp[0].d; ViewCoordIdx++; ;
break;}
{ ViewCoord[ViewCoordIdx] = yyvsp[0].d; ViewCoordIdx++; ;
break;}
{ if(ViewValueList) List_Add(ViewValueList, &yyvsp[0].d); ;
break;}
{ if(ViewValueList) List_Add(ViewValueList, &yyvsp[0].d); ;
break;}
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
if(!strcmp(yyvsp[0].c, "SP")){
ViewElementIdx = 0; ViewNumNodes = 1; ViewNumComp = 1;
ViewValueList = View->SP; ViewNumList = &View->NbSP;
}
else if(!strcmp(yyvsp[0].c, "VP")){
ViewElementIdx = 1; ViewNumNodes = 1; ViewNumComp = 3;
ViewValueList = View->VP; ViewNumList = &View->NbVP;
}
else if(!strcmp(yyvsp[0].c, "TP")){
ViewElementIdx = 2; ViewNumNodes = 1; ViewNumComp = 9;
ViewValueList = View->TP; ViewNumList = &View->NbTP;
}
else if(!strcmp(yyvsp[0].c, "SL")){
ViewElementIdx = 3; ViewNumNodes = 2; ViewNumComp = 1;
ViewValueList = View->SL; ViewNumList = &View->NbSL;
}
else if(!strcmp(yyvsp[0].c, "VL")){
ViewElementIdx = 4; ViewNumNodes = 2; ViewNumComp = 3;
ViewValueList = View->VL; ViewNumList = &View->NbVL;
}
else if(!strcmp(yyvsp[0].c, "TL")){
ViewElementIdx = 5; ViewNumNodes = 2; ViewNumComp = 9;
ViewValueList = View->TL; ViewNumList = &View->NbTL;
}
else if(!strcmp(yyvsp[0].c, "ST")){
ViewElementIdx = 6; ViewNumNodes = 3; ViewNumComp = 1;
ViewValueList = View->ST; ViewNumList = &View->NbST;
}
else if(!strcmp(yyvsp[0].c, "VT")){
ViewElementIdx = 7; ViewNumNodes = 3; ViewNumComp = 3;
ViewValueList = View->VT; ViewNumList = &View->NbVT;
}
else if(!strcmp(yyvsp[0].c, "TT")){
ViewElementIdx = 8; ViewNumNodes = 3; ViewNumComp = 9;
ViewValueList = View->TT; ViewNumList = &View->NbTT;
}
else if(!strcmp(yyvsp[0].c, "SQ")){
ViewElementIdx = 9; ViewNumNodes = 4; ViewNumComp = 1;
ViewValueList = View->SQ; ViewNumList = &View->NbSQ;
}
else if(!strcmp(yyvsp[0].c, "VQ")){
ViewElementIdx = 10; ViewNumNodes = 4; ViewNumComp = 3;
ViewValueList = View->VQ; ViewNumList = &View->NbVQ;
}
else if(!strcmp(yyvsp[0].c, "TQ")){
ViewElementIdx = 11; ViewNumNodes = 4; ViewNumComp = 9;
ViewValueList = View->TQ; ViewNumList = &View->NbTQ;
}
else if(!strcmp(yyvsp[0].c, "SS")){
ViewElementIdx = 12; ViewNumNodes = 4; ViewNumComp = 1;
ViewValueList = View->SS; ViewNumList = &View->NbSS;
}
else if(!strcmp(yyvsp[0].c, "VS")){
ViewElementIdx = 13; ViewNumNodes = 4; ViewNumComp = 3;
ViewValueList = View->VS; ViewNumList = &View->NbVS;
}
else if(!strcmp(yyvsp[0].c, "TS")){
ViewElementIdx = 14; ViewNumNodes = 4; ViewNumComp = 9;
ViewValueList = View->TS; ViewNumList = &View->NbTS;
}
else if(!strcmp(yyvsp[0].c, "SH")){
ViewElementIdx = 15; ViewNumNodes = 8; ViewNumComp = 1;
ViewValueList = View->SH; ViewNumList = &View->NbSH;
}
else if(!strcmp(yyvsp[0].c, "VH")){
ViewElementIdx = 16; ViewNumNodes = 8; ViewNumComp = 3;
ViewValueList = View->VH; ViewNumList = &View->NbVH;
}
else if(!strcmp(yyvsp[0].c, "TH")){
ViewElementIdx = 17; ViewNumNodes = 8; ViewNumComp = 9;
ViewValueList = View->TH; ViewNumList = &View->NbTH;
}
else if(!strcmp(yyvsp[0].c, "SI")){
ViewElementIdx = 18; ViewNumNodes = 6; ViewNumComp = 1;
ViewValueList = View->SI; ViewNumList = &View->NbSI;
}
else if(!strcmp(yyvsp[0].c, "VI")){
ViewElementIdx = 19; ViewNumNodes = 6; ViewNumComp = 3;
ViewValueList = View->VI; ViewNumList = &View->NbVI;
}
else if(!strcmp(yyvsp[0].c, "TI")){
ViewElementIdx = 20; ViewNumNodes = 6; ViewNumComp = 9;
ViewValueList = View->TI; ViewNumList = &View->NbTI;
}
else if(!strcmp(yyvsp[0].c, "SY")){
ViewElementIdx = 21; ViewNumNodes = 5; ViewNumComp = 1;
ViewValueList = View->SY; ViewNumList = &View->NbSY;
}
else if(!strcmp(yyvsp[0].c, "VY")){
ViewElementIdx = 22; ViewNumNodes = 5; ViewNumComp = 3;
ViewValueList = View->VY; ViewNumList = &View->NbVY;
}
else if(!strcmp(yyvsp[0].c, "TY")){
ViewElementIdx = 23; ViewNumNodes = 5; ViewNumComp = 9;
ViewValueList = View->TY; ViewNumList = &View->NbTY;
}
else if(!strcmp(yyvsp[0].c, "SL2")){
ViewElementIdx = 3; ViewNumNodes = 3; ViewNumComp = 1;
ViewValueList = View->SL2; ViewNumList = &View->NbSL2;
}
else if(!strcmp(yyvsp[0].c, "VL2")){
ViewElementIdx = 4; ViewNumNodes = 3; ViewNumComp = 3;
ViewValueList = View->VL2; ViewNumList = &View->NbVL2;
}
else if(!strcmp(yyvsp[0].c, "TL2")){
ViewElementIdx = 5; ViewNumNodes = 3; ViewNumComp = 9;
ViewValueList = View->TL2; ViewNumList = &View->NbTL2;
}
else if(!strcmp(yyvsp[0].c, "ST2")){
ViewElementIdx = 6; ViewNumNodes = 6; ViewNumComp = 1;
ViewValueList = View->ST2; ViewNumList = &View->NbST2;
}
else if(!strcmp(yyvsp[0].c, "VT2")){
ViewElementIdx = 7; ViewNumNodes = 6; ViewNumComp = 3;
ViewValueList = View->VT2; ViewNumList = &View->NbVT2;
}
else if(!strcmp(yyvsp[0].c, "TT2")){
ViewElementIdx = 8; ViewNumNodes = 6; ViewNumComp = 9;
ViewValueList = View->TT2; ViewNumList = &View->NbTT2;
}
else if(!strcmp(yyvsp[0].c, "SQ2")){
ViewElementIdx = 9; ViewNumNodes = 9; ViewNumComp = 1;
ViewValueList = View->SQ2; ViewNumList = &View->NbSQ2;
}
else if(!strcmp(yyvsp[0].c, "VQ2")){
ViewElementIdx = 10; ViewNumNodes = 9; ViewNumComp = 3;
ViewValueList = View->VQ2; ViewNumList = &View->NbVQ2;
}
else if(!strcmp(yyvsp[0].c, "TQ2")){
ViewElementIdx = 11; ViewNumNodes = 9; ViewNumComp = 9;
ViewValueList = View->TQ2; ViewNumList = &View->NbTQ2;
}
else if(!strcmp(yyvsp[0].c, "SS2")){
ViewElementIdx = 12; ViewNumNodes = 10; ViewNumComp = 1;
ViewValueList = View->SS2; ViewNumList = &View->NbSS2;
}
else if(!strcmp(yyvsp[0].c, "VS2")){
ViewElementIdx = 13; ViewNumNodes = 10; ViewNumComp = 3;
ViewValueList = View->VS2; ViewNumList = &View->NbVS2;
}
else if(!strcmp(yyvsp[0].c, "TS2")){
ViewElementIdx = 14; ViewNumNodes = 10; ViewNumComp = 9;
ViewValueList = View->TS2; ViewNumList = &View->NbTS2;
}
else if(!strcmp(yyvsp[0].c, "SH2")){
ViewElementIdx = 15; ViewNumNodes = 27; ViewNumComp = 1;
ViewValueList = View->SH2; ViewNumList = &View->NbSH2;
}
else if(!strcmp(yyvsp[0].c, "VH2")){
ViewElementIdx = 16; ViewNumNodes = 27; ViewNumComp = 3;
ViewValueList = View->VH2; ViewNumList = &View->NbVH2;
}
else if(!strcmp(yyvsp[0].c, "TH2")){
ViewElementIdx = 17; ViewNumNodes = 27; ViewNumComp = 9;
ViewValueList = View->TH2; ViewNumList = &View->NbTH2;
}
else if(!strcmp(yyvsp[0].c, "SI2")){
ViewElementIdx = 18; ViewNumNodes = 18; ViewNumComp = 1;
ViewValueList = View->SI2; ViewNumList = &View->NbSI2;
}
else if(!strcmp(yyvsp[0].c, "VI2")){
ViewElementIdx = 19; ViewNumNodes = 18; ViewNumComp = 3;
ViewValueList = View->VI2; ViewNumList = &View->NbVI2;
}
else if(!strcmp(yyvsp[0].c, "TI2")){
ViewElementIdx = 20; ViewNumNodes = 18; ViewNumComp = 9;
ViewValueList = View->TI2; ViewNumList = &View->NbTI2;
}
else if(!strcmp(yyvsp[0].c, "SY2")){
ViewElementIdx = 21; ViewNumNodes = 14; ViewNumComp = 1;
ViewValueList = View->SY2; ViewNumList = &View->NbSY2;
}
else if(!strcmp(yyvsp[0].c, "VY2")){
ViewElementIdx = 22; ViewNumNodes = 14; ViewNumComp = 3;
ViewValueList = View->VY2; ViewNumList = &View->NbVY2;
}
else if(!strcmp(yyvsp[0].c, "TY2")){
ViewElementIdx = 23; ViewNumNodes = 14; ViewNumComp = 9;
ViewValueList = View->TY2; ViewNumList = &View->NbTY2;
}
else{
yymsg(GERROR, "Unknown element type '%s'", yyvsp[0].c);
ViewElementIdx = -1; ViewNumNodes = 0; ViewNumComp = 0;
ViewValueList = NULL; ViewNumList = NULL;
}
Free(yyvsp[0].c);
ViewCoordIdx = 0;
if(ViewValueList){
if(ViewCoordIdx != 3 * ViewNumNodes){
yymsg(GERROR, "Wrong number of node coordinates (%d != %d)",
ViewCoordIdx, 3 * ViewNumNodes);
double d = 0;
for(int i = 0; i < 3 * ViewNumNodes; i++)
List_Add(ViewValueList, &d);
}
else{