yast2-core
Classes | Macros | Typedefs | Enumerations | Functions | Variables
parser.cc File Reference
#include <stdio.h>
#include <fcntl.h>
#include <unistd.h>
#include <fstream>
#include <string>
#include <list>
#include "YCP.h"
#include "ycp/Scanner.h"
#include "ycp/y2log.h"
#include "ycp/pathsearch.h"
#include "ycp/ExecutionEnvironment.h"
#include "ycp/StaticDeclaration.h"
#include "ycp/YCode.h"
#include "ycp/Type.h"
#include "ycp/YExpression.h"
#include "ycp/YStatement.h"
#include "ycp/YBlock.h"
#include "ycp/SymbolTable.h"
#include "ycp/YSymbolEntry.h"
#include "ycp/Point.h"
#include "ycp/Bytecode.h"
#include "ycp/Parser.h"

Classes

struct  yystype_type
 
struct  stack
 general stack handling More...
 
struct  blockstack_t
 stack for blocks More...
 
struct  switchstack_t
 stack for switch More...
 
struct  scannerstack_t
 stack for scanners More...
 
union  yyalloc
 

Macros

#define YYBISON   1
 
#define YYBISON_VERSION   "2.7"
 
#define YYSKELETON_NAME   "yacc.c"
 
#define YYPURE   1
 
#define YYPUSH   0
 
#define YYPULL   1
 
#define DO_DEBUG   0
 
#define YYDEBUG   0
 
#define YYERROR_VERBOSE   1
 
#define YYINITDEPTH   1000
 
#define YYMAXDEPTH   50000
 
#define YYSTYPE   yystype_type
 
#define YYPARSE_PARAM   vp_parser
 
#define YYLEX_PARAM   vp_parser
 
#define p_parser   ((Parser *) vp_parser)
 
#define LINE_NOW   (p_parser->m_lineno)
 
#define FILE_NOW   (p_parser->scanner()->filename ())
 
#define yyerror(text)   yyerror_with_lineinfo (p_parser, -1, text)
 
#define yywarning(text, lineno)   yywarning_with_lineinfo (p_parser, lineno, text)
 
#define yyConstAssignError(name, lineno)   yyerror_assign_const (p_parser, lineno, name)
 
#define yyLerror(text, lineno)   yyerror_with_lineinfo (p_parser, lineno, text)
 
#define yyCerror(code, type, lineno)   yyerror_with_code (p_parser, lineno, code, type)
 
#define yyVerror(name, lineno)   yyerror_with_name (p_parser, lineno, name)
 
#define yyFerror(name, lineno)   yyerror_with_file (p_parser, lineno, name)
 
#define yyTerror(text, lineno, tentry)   yyerror_with_tableentry (p_parser, lineno, text, tentry)
 
#define yyTwarning(tentry)   yywarning_with_tableentry (p_parser, 0, tentry)
 
#define yyTypeMismatch(text, expected, seen, lineno)   yyerror_type_mismatch (p_parser, lineno, text, expected, seen)
 
#define yyCantCast(from, to, lineno)   yyerror_cant_cast (p_parser, lineno, from, to)
 
#define yyNoModule(module, lineno)   yyerror_no_module (p_parser, lineno, module)
 
#define TOKEN_COMMENT(source_dollar)   attach_comment((&(source_dollar) + 1)->c , source_dollar.com)
 
#define TOKEN_COMMENT_TO(source_dollar, target_dollar)   attach_comment(target_dollar.c , source_dollar.com)
 
#define RULE_COMMENT(source_dollar)   attach_comment((yyval).c , source_dollar.com)
 
#define LAST_TOKEN_COMMENT(source_dollar)   attach_comment_after((&(source_dollar) - 1)->c, source_dollar.com)
 
#define check_unary_op(result, e1, op)   i_check_unary_op (result, e1, op, p_parser)
 
#define check_binary_op(result, e1, op, e2)   i_check_binary_op (result, e1, op, e2, p_parser)
 
#define check_compare_op(result, e1, op, e2)   i_check_compare_op (result, e1, op, e2, p_parser)
 
#define check_void_assign(lhs, rhs)   i_check_void_assign (lhs, rhs, p_parser)
 
#define blockstack_push(s, e)   _blockstack_push(&(s), e)
 
#define blockstack_pop(s)   _blockstack_pop(p_parser, &(s))
 
#define blockstack_at_toplevel()   (p_parser->m_blockstack_depth == 1)
 
#define switchstack_push(s, e)   _switchstack_push(&(s), e)
 
#define switchstack_pop(s)   _switchstack_pop(&(s))
 
#define scannerstack_push(s, e)   _scannerstack_push(&(s), e)
 
#define scannerstack_pop(s)   _scannerstack_pop (&(s))
 
#define scannerstack_empty()   (p_parser->m_scanner_stack == 0)
 
#define YY_NULL   0
 
#define YYERROR_VERBOSE   1
 
#define YY_YY_PARSER_HH_INCLUDED
 
#define YYTOKENTYPE
 
#define SCANNER_ERROR   258
 
#define END_OF_FILE   259
 
#define EMPTY   260
 
#define LIST   261
 
#define MAP   262
 
#define STRUCT   263
 
#define BLOCK   264
 
#define DEFINE   265
 
#define UNDEFINE   266
 
#define I18N   267
 
#define RETURN   268
 
#define CONTINUE   269
 
#define BREAK   270
 
#define IF   271
 
#define DO   272
 
#define WHILE   273
 
#define REPEAT   274
 
#define UNTIL   275
 
#define IS   276
 
#define ISNIL   277
 
#define SYMBOL   278
 
#define DCSYMBOL   279
 
#define DCQUOTED_BLOCK   280
 
#define QUOTED_BLOCK   281
 
#define QUOTED_EXPRESSION   282
 
#define CLOSEBRACKET   283
 
#define TYPEDEF   284
 
#define MODULE   285
 
#define IMPORT   286
 
#define EXPORT   287
 
#define MAPEXPR   288
 
#define INCLUDE   289
 
#define GLOBAL   290
 
#define TEXTDOMAIN   291
 
#define CONST   292
 
#define FULLNAME   293
 
#define STATIC   294
 
#define EXTERN   295
 
#define LOOKUP   296
 
#define SELECT   297
 
#define SWITCH   298
 
#define CASE   299
 
#define DEFAULT   300
 
#define SYM_NAMESPACE   301
 
#define IDENTIFIER   302
 
#define STRING   303
 
#define C_VOID   304
 
#define C_BOOLEAN   305
 
#define C_INTEGER   306
 
#define C_FLOAT   307
 
#define C_BYTEBLOCK   308
 
#define C_PATH   309
 
#define C_SYMBOL   310
 
#define C_TYPE   311
 
#define OR   312
 
#define AND   313
 
#define NEQ   314
 
#define EQUALS   315
 
#define GE   316
 
#define LE   317
 
#define RIGHT   318
 
#define LEFT   319
 
#define ELSE   320
 
#define UMINUS   321
 
#define YYSIZE_T   unsigned int
 
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
 
#define YY_(Msgid)   Msgid
 
#define YYUSE(E)   ((void) (E))
 
#define YYID(N)   (N)
 
#define YYSTACK_ALLOC   YYMALLOC
 
#define YYSTACK_FREE   YYFREE
 
#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM
 
#define YYMALLOC   malloc
 
#define YYFREE   free
 
#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
 
#define YYSTACK_BYTES(N)
 
#define YYCOPY_NEEDED   1
 
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
 
#define YYCOPY(Dst, Src, Count)
 
#define YYFINAL   55
 
#define YYLAST   1346
 
#define YYNTOKENS   90
 
#define YYNNTS   48
 
#define YYNRULES   155
 
#define YYNSTATES   309
 
#define YYUNDEFTOK   2
 
#define YYMAXUTOK   321
 
#define YYTRANSLATE(YYX)   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
 
#define YYPACT_NINF   -245
 
#define YYTABLE_NINF   -152
 
#define yypact_value_is_default(Yystate)   (!!((Yystate) == (-245)))
 
#define yytable_value_is_error(Yytable_value)   YYID (0)
 
#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()   (!!yyerrstatus)
 
#define YYBACKUP(Token, Value)
 
#define YYTERROR   1
 
#define YYERRCODE   256
 
#define YY_LOCATION_PRINT(File, Loc)   ((void) 0)
 
#define YYLEX   yylex (&yylval, YYLEX_PARAM)
 
#define YYDPRINTF(Args)
 
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
 
#define YY_STACK_PRINT(Bottom, Top)
 
#define YY_REDUCE_PRINT(Rule)
 
#define YYCASE_(N, S)
 
#define YY_INITIAL_VALUE(Value)   = Value
 
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
 
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
 
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
 
#define YYSYNTAX_ERROR
 

Typedefs

typedef struct stack stack_t
 general stack handling More...
 
typedef unsigned char yytype_uint8
 
typedef short int yytype_int8
 
typedef unsigned short int yytype_uint16
 
typedef short int yytype_int16
 

Enumerations

enum  scan_states { SCAN_FILE, SCAN_START_INCLUDE, SCAN_INCLUDE }
 
enum  yytokentype {
  SCANNER_ERROR = 258, END_OF_FILE = 259, EMPTY = 260, LIST = 261,
  MAP = 262, STRUCT = 263, BLOCK = 264, DEFINE = 265,
  UNDEFINE = 266, I18N = 267, RETURN = 268, CONTINUE = 269,
  BREAK = 270, IF = 271, DO = 272, WHILE = 273,
  REPEAT = 274, UNTIL = 275, IS = 276, ISNIL = 277,
  SYMBOL = 278, DCSYMBOL = 279, DCQUOTED_BLOCK = 280, QUOTED_BLOCK = 281,
  QUOTED_EXPRESSION = 282, CLOSEBRACKET = 283, TYPEDEF = 284, MODULE = 285,
  IMPORT = 286, EXPORT = 287, MAPEXPR = 288, INCLUDE = 289,
  GLOBAL = 290, TEXTDOMAIN = 291, CONST = 292, FULLNAME = 293,
  STATIC = 294, EXTERN = 295, LOOKUP = 296, SELECT = 297,
  SWITCH = 298, CASE = 299, DEFAULT = 300, SYM_NAMESPACE = 301,
  IDENTIFIER = 302, STRING = 303, C_VOID = 304, C_BOOLEAN = 305,
  C_INTEGER = 306, C_FLOAT = 307, C_BYTEBLOCK = 308, C_PATH = 309,
  C_SYMBOL = 310, C_TYPE = 311, OR = 312, AND = 313,
  NEQ = 314, EQUALS = 315, GE = 316, LE = 317,
  RIGHT = 318, LEFT = 319, ELSE = 320, UMINUS = 321,
  SCANNER_ERROR = 258, END_OF_FILE = 259, EMPTY = 260, LIST = 261,
  MAP = 262, STRUCT = 263, BLOCK = 264, DEFINE = 265,
  UNDEFINE = 266, I18N = 267, RETURN = 268, CONTINUE = 269,
  BREAK = 270, IF = 271, DO = 272, WHILE = 273,
  REPEAT = 274, UNTIL = 275, IS = 276, ISNIL = 277,
  SYMBOL = 278, DCSYMBOL = 279, DCQUOTED_BLOCK = 280, QUOTED_BLOCK = 281,
  QUOTED_EXPRESSION = 282, CLOSEBRACKET = 283, TYPEDEF = 284, MODULE = 285,
  IMPORT = 286, EXPORT = 287, MAPEXPR = 288, INCLUDE = 289,
  GLOBAL = 290, TEXTDOMAIN = 291, CONST = 292, FULLNAME = 293,
  STATIC = 294, EXTERN = 295, LOOKUP = 296, SELECT = 297,
  SWITCH = 298, CASE = 299, DEFAULT = 300, SYM_NAMESPACE = 301,
  IDENTIFIER = 302, STRING = 303, C_VOID = 304, C_BOOLEAN = 305,
  C_INTEGER = 306, C_FLOAT = 307, C_BYTEBLOCK = 308, C_PATH = 309,
  C_SYMBOL = 310, C_TYPE = 311, OR = 312, AND = 313,
  NEQ = 314, EQUALS = 315, GE = 316, LE = 317,
  RIGHT = 318, LEFT = 319, ELSE = 320, UMINUS = 321
}
 

Functions

static void yyerror_with_lineinfo (Parser *parser, int lineno, const char *s)
 
static void yywarning_with_lineinfo (Parser *parser, int lineno, const char *s)
 
static void yyerror_with_code (Parser *parser, int lineno, YCodePtr c, constTypePtr t)
 
static void yyerror_with_name (Parser *parser, int lineno, const char *s)
 
static void yyerror_with_file (Parser *parser, int lineno, const char *s)
 
static void yyerror_with_tableentry (Parser *parser, int lineno, const char *s, TableEntry *entry)
 
static void yywarning_with_tableentry (Parser *parser, int lineno, TableEntry *entry)
 
static void yyerror_type_mismatch (Parser *parser, int lineno, const char *s, constTypePtr expected_type, constTypePtr seen_type)
 
static void yyerror_assign_const (Parser *parser, int lineno, const char *s)
 
static void yyerror_cant_cast (Parser *parser, int lineno, constTypePtr from, constTypePtr to)
 
static void yyerror_no_module (Parser *parser, int lineno, const char *module)
 
static constTypePtr attach_parameter (Parser *parser, YCodePtr code, YYSTYPE *parm, YYSTYPE *parm1=0)
 
static YBlockPtr start_block (Parser *parser, constTypePtr type)
 
static bool parsing_comments ()
 
static void attach_comment (YCodePtr code, const std::string &comment)
 
static void attach_comment_after (YCodePtr code, const std::string &comment)
 
int yylex (YYSTYPE *, void *)
 
static void i_check_unary_op (YYSTYPE *result, YYSTYPE *e1, const char *op, Parser *parser)
 
static void i_check_binary_op (YYSTYPE *result, YYSTYPE *e1, const char *op, YYSTYPE *e2, Parser *parser)
 
static void i_check_compare_op (YYSTYPE *result, YYSTYPE *e1, YECompare::c_op op, YYSTYPE *e2, Parser *parser)
 
static void i_check_void_assign (YYSTYPE *lhs, YYSTYPE *rhs, Parser *parser)
 
static void stack_push (stack_t **stack, stack_t *element)
 push element to stack More...
 
static stack_tstack_pop (stack_t **stack)
 pop element to stack More...
 
static void _blockstack_push (blockstack_t **blockstackptr, blockstack_t *blockelement)
 
static blockstack_t_blockstack_pop (Parser *parser, blockstack_t **blockstackptr)
 
static void _switchstack_push (switchstack_t **switchstack, stack_t *e)
 
static switchstack_t_switchstack_pop (switchstack_t **switchstack)
 
static void _scannerstack_push (scannerstack_t **scannerstackptr, stack_t *element)
 
static scannerstack_t_scannerstack_pop (scannerstack_t **scannerstackptr)
 
int yyparse ()
 
static YYSIZE_T yytnamerr (char *yyres, const char *yystr)
 
static int yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, yytype_int16 *yyssp, int yytoken)
 
 YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp)
 
 switch (yytype)
 
YYSTYPE yylval YY_INITIAL_VALUE (yyval_default)
 
 YYDPRINTF ((stderr,"Starting parse\n"))
 
 if (yyss+yystacksize-1<=yyssp)
 
 YYDPRINTF ((stderr,"Entering state %d\n", yystate))
 
 if (yychar==YYEMPTY)
 
 if (yychar<=YYEOF)
 
 YY_SYMBOL_PRINT ("Next token is", yytoken,&yylval,&yylloc)
 
 if (yyn<=0)
 
 YY_SYMBOL_PRINT ("Shifting", yytoken,&yylval,&yylloc)
 
 YY_REDUCE_PRINT (yyn)
 
 switch (yyn)
 
 YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn],&yyval,&yyloc)
 
 YYPOPSTACK (yylen)
 
 YY_STACK_PRINT (yyss, yyssp)
 
 if (!yyerrstatus)
 
 if (yyerrstatus==3)
 
 for (;;)
 
YY_IGNORE_MAYBE_UNINITIALIZED_END YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp)
 
 yydestruct ("Cleanup: discarding lookahead", yytoken,&yylval)
 
 while (yyssp!=yyss)
 
 YYSTACK_FREE (yyss)
 
 YYSTACK_FREE (yymsg)
 
return YYID (yyresult)
 

Variables

static constTypePtr declared_return_type = Type::Unspec
 set by function declaration in order to predefine a definitions block return type More...
 
static constTypePtr found_return_type = Type::Unspec
 set when a return statement is encountered More...
 
StaticDeclaration static_declarations
 
static bool in_switch = false
 
static bool inside_module = false
 
static int repeat_count = 0
 
static int do_while_count = 0
 
static const yytype_uint8 yytranslate []
 
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 []
 
static YYSIZE_T const char * yystr
 
YYSIZE_T yylen = 0
 
 continue
 
static char *char * yydest
 
const char * yysrc
 
const char * yys = yysrc
 
return yyd
 
static void const char * yymsg = "Deleting"
 
int yytype
 
YYSTYPEyyvaluep
 
int void * YYPARSE_PARAM
 
static YYSTYPE yyval_default
 
int yynerrs = 0
 
int yystate = 0
 
int yyerrstatus = 0
 
yytype_int16 yyssa [YYINITDEPTH]
 
yytype_int16yyss
 
yytype_int16yyssp = yyss = yyssa
 
YYSTYPE yyvsa [YYINITDEPTH]
 
YYSTYPEyyvs
 
YYSTYPEyyvsp = yyvs = yyvsa
 
YYSIZE_T yystacksize = YYINITDEPTH
 
int yyn = yytoken
 
int yyresult = 2
 
int yytoken = 0
 
YYSTYPE yyval = yyvsp[1-yylen]
 
char yymsgbuf [128]
 
YYSIZE_T yymsg_alloc = sizeof yymsgbuf
 
 yychar = YYEMPTY
 
goto yysetstate
 
yynewstate __pad0__
 
yysetstate __pad1__
 
 YYACCEPT
 
goto yybackup
 
yybackup __pad2__
 
goto yydefault
 
 else
 
YY_IGNORE_MAYBE_UNINITIALIZED_END
goto 
yynewstate
 
yydefault __pad3__
 
goto yyerrlab
 
goto yyreduce
 
yyreduce __pad4__
 
yyerrlab __pad5__
 
goto yyerrlab1
 
yyerrorlab __pad6__
 
yyerrlab1 __pad7__
 
yyacceptlab __pad8__
 
goto yyreturn
 
yyabortlab __pad9__
 
yyexhaustedlab __pad10__
 
yyreturn __pad11__
 

Macro Definition Documentation

#define AND   313

Referenced by while().

#define BLOCK   264

Referenced by while().

#define blockstack_at_toplevel ( )    (p_parser->m_blockstack_depth == 1)

Referenced by switch().

#define blockstack_pop (   s)    _blockstack_pop(p_parser, &(s))

Referenced by switch().

#define blockstack_push (   s,
 
)    _blockstack_push(&(s), e)

Referenced by start_block().

#define BREAK   270

Referenced by while().

#define C_BOOLEAN   305

Referenced by while(), and yylex().

#define C_BYTEBLOCK   308

Referenced by while(), and yylex().

#define C_FLOAT   307

Referenced by while(), and yylex().

#define C_INTEGER   306

Referenced by while(), and yylex().

#define C_PATH   309

Referenced by while(), and yylex().

#define C_SYMBOL   310

Referenced by while(), and yylex().

#define C_TYPE   311

Referenced by while().

#define C_VOID   304

Referenced by while(), and yylex().

#define CASE   299

Referenced by while().

#define check_binary_op (   result,
  e1,
  op,
  e2 
)    i_check_binary_op (result, e1, op, e2, p_parser)

Referenced by switch().

#define check_compare_op (   result,
  e1,
  op,
  e2 
)    i_check_compare_op (result, e1, op, e2, p_parser)

Referenced by switch().

#define check_unary_op (   result,
  e1,
  op 
)    i_check_unary_op (result, e1, op, p_parser)

Referenced by switch().

#define check_void_assign (   lhs,
  rhs 
)    i_check_void_assign (lhs, rhs, p_parser)

Referenced by switch().

#define CLOSEBRACKET   283

Referenced by while().

#define CONST   292

Referenced by while().

#define CONTINUE   269

Referenced by while().

#define DCQUOTED_BLOCK   280

Referenced by while().

#define DCSYMBOL   279
#define DEFAULT   300

Referenced by while().

#define DEFINE   265

Referenced by while().

#define DO   272

Referenced by while().

#define DO_DEBUG   0

Referenced by switch().

#define ELSE   320

Referenced by while().

#define EMPTY   260

Referenced by while().

#define END_OF_FILE   259

Referenced by parsefile(), while(), and yylex().

#define EQUALS   315

Referenced by while().

#define EXPORT   287

Referenced by while().

#define EXTERN   295

Referenced by while().

#define FILE_NOW   (p_parser->scanner()->filename ())

Referenced by switch().

#define FULLNAME   293
#define GE   316

Referenced by while().

#define GLOBAL   290

Referenced by while().

#define I18N   267

Referenced by while().

#define IDENTIFIER   302

Referenced by while().

#define IF   271

Referenced by while().

#define IMPORT   286

Referenced by while().

#define INCLUDE   289

Referenced by while().

#define IS   276

Referenced by while().

#define ISNIL   277
#define LAST_TOKEN_COMMENT (   source_dollar)    attach_comment_after((&(source_dollar) - 1)->c, source_dollar.com)

Referenced by switch().

#define LE   317

Referenced by while().

#define LEFT   319

Referenced by while().

#define LINE_NOW   (p_parser->m_lineno)

Referenced by switch().

#define LIST   261

Referenced by while().

#define LOOKUP   296

Referenced by while().

#define MAP   262

Referenced by while().

#define MAPEXPR   288

Referenced by while().

#define MODULE   285

Referenced by while().

#define NEQ   314

Referenced by while().

#define OR   312

Referenced by while().

#define p_parser   ((Parser *) vp_parser)

Referenced by switch().

#define QUOTED_BLOCK   281

Referenced by while().

#define QUOTED_EXPRESSION   282

Referenced by while().

#define REPEAT   274

Referenced by while().

#define RETURN   268

Referenced by while().

#define RIGHT   318

Referenced by while().

#define RULE_COMMENT (   source_dollar)    attach_comment((yyval).c , source_dollar.com)

Referenced by switch().

#define SCANNER_ERROR   258

Referenced by while(), and yylex().

#define scannerstack_empty ( )    (p_parser->m_scanner_stack == 0)
#define scannerstack_pop (   s)    _scannerstack_pop (&(s))

Referenced by yylex().

#define scannerstack_push (   s,
 
)    _scannerstack_push(&(s), e)

Referenced by switch().

#define SELECT   297

Referenced by while().

#define STATIC   294

Referenced by while().

#define STRING   303

Referenced by while().

#define STRUCT   263

Referenced by while().

#define SWITCH   298

Referenced by while().

#define switchstack_pop (   s)    _switchstack_pop(&(s))

Referenced by switch().

#define switchstack_push (   s,
 
)    _switchstack_push(&(s), e)

Referenced by switch().

#define SYM_NAMESPACE   301

Referenced by while().

#define SYMBOL   278

Referenced by while().

#define TEXTDOMAIN   291

Referenced by while().

#define TOKEN_COMMENT (   source_dollar)    attach_comment((&(source_dollar) + 1)->c , source_dollar.com)

Referenced by switch().

#define TOKEN_COMMENT_TO (   source_dollar,
  target_dollar 
)    attach_comment(target_dollar.c , source_dollar.com)

Referenced by switch().

#define TYPEDEF   284

Referenced by while().

#define UMINUS   321
#define UNDEFINE   266

Referenced by while().

#define UNTIL   275

Referenced by while().

#define WHILE   273

Referenced by while().

#define YY_ (   Msgid)    Msgid

Referenced by if(), and yysyntax_error().

#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
#define YY_INITIAL_VALUE (   Value)    = Value
#define YY_LOCATION_PRINT (   File,
  Loc 
)    ((void) 0)
#define YY_NULL   0

Referenced by yysyntax_error().

#define YY_REDUCE_PRINT (   Rule)
#define YY_STACK_PRINT (   Bottom,
  Top 
)

Referenced by for().

#define YY_SYMBOL_PRINT (   Title,
  Type,
  Value,
  Location 
)
#define YY_YY_PARSER_HH_INCLUDED
#define YYABORT   goto yyabortlab

Referenced by for(), if(), and switch().

#define YYACCEPT   goto yyacceptlab

Referenced by switch().

#define YYBACKUP (   Token,
  Value 
)
Value:
{ \
yychar = (Token); \
yylval = (Value); \
goto yybackup; \
} \
{ \
yyerror (YY_("syntax error: cannot back up")); \
} \
while (YYID (0))
#define YYERROR
Definition: parser.cc:1441
while(yyssp!=yyss)
Definition: parser.cc:6265
yytype_int16 * yyssp
Definition: parser.cc:2026
YYSIZE_T yylen
Definition: parser.cc:1696
#define YYID(N)
Definition: parser.cc:616
yychar
Definition: parser.cc:2065
goto yybackup
Definition: parser.cc:2145
#define YYEMPTY
Definition: parser.cc:1436
#define YY_(Msgid)
Definition: parser.cc:603
int yystate
Definition: parser.cc:2012
#define yyerror(text)
Definition: parser.cc:143
if(yyss+yystacksize-1<=yyssp)
Definition: parser.cc:2079
else
Definition: parser.cc:2175
#define YYPOPSTACK(N)
Definition: parser.cc:2050
#define YYBISON   1
#define YYBISON_VERSION   "2.7"
#define yyCantCast (   from,
  to,
  lineno 
)    yyerror_cant_cast (p_parser, lineno, from, to)

Referenced by switch().

#define YYCASE_ (   N,
 
)
Value:
case N: \
yyformat = S; \
break

Referenced by yysyntax_error().

#define yyCerror (   code,
  type,
  lineno 
)    yyerror_with_code (p_parser, lineno, code, type)
#define yyclearin   (yychar = YYEMPTY)
#define yyConstAssignError (   name,
  lineno 
)    yyerror_assign_const (p_parser, lineno, name)

Referenced by switch().

#define YYCOPY (   Dst,
  Src,
  Count 
)
Value:
do \
{ \
for (yyi = 0; yyi < (Count); yyi++) \
(Dst)[yyi] = (Src)[yyi]; \
} \
while (YYID (0))
while(yyssp!=yyss)
Definition: parser.cc:6265
#define YYID(N)
Definition: parser.cc:616
for(;;)
Definition: parser.cc:6190
#define YYSIZE_T
Definition: parser.cc:589
#define YYCOPY_NEEDED   1
#define YYDEBUG   0
#define YYDPRINTF (   Args)

Referenced by if().

#define YYEMPTY   (-2)

Referenced by if(), and yysyntax_error().

#define YYEOF   0

Referenced by if().

#define YYERRCODE   256
#define yyerrok   (yyerrstatus = 0)
#define yyerror (   text)    yyerror_with_lineinfo (p_parser, -1, text)

Referenced by if().

#define YYERROR   goto yyerrorlab
#define YYERROR_VERBOSE   1
#define YYERROR_VERBOSE   1
#define YYFAIL   goto yyerrlab
#define yyFerror (   name,
  lineno 
)    yyerror_with_file (p_parser, lineno, name)

Referenced by switch().

#define YYFINAL   55
#define YYFREE   free
#define YYID (   N)    (N)
#define YYINITDEPTH   1000
#define YYLAST   1346

Referenced by for(), and yysyntax_error().

#define yyLerror (   text,
  lineno 
)    yyerror_with_lineinfo (p_parser, lineno, text)

Referenced by switch().

#define YYLEX   yylex (&yylval, YYLEX_PARAM)

Referenced by if().

#define YYLEX_PARAM   vp_parser
#define YYMALLOC   malloc
#define YYMAXDEPTH   50000

Referenced by if().

#define YYMAXUTOK   321
#define YYNNTS   48
#define yyNoModule (   module,
  lineno 
)    yyerror_no_module (p_parser, lineno, module)

Referenced by switch().

#define YYNRULES   155
#define YYNSTATES   309
#define YYNTOKENS   90

Referenced by yysyntax_error().

#define YYPACT_NINF   -245
#define yypact_value_is_default (   Yystate)    (!!((Yystate) == (-245)))

Referenced by for(), and yysyntax_error().

#define YYPARSE_PARAM   vp_parser
#define YYPOPSTACK (   N)    (yyvsp -= (N), yyssp -= (N))

Referenced by for(), and while().

#define YYPULL   1
#define YYPURE   1
#define YYPUSH   0
#define YYRECOVERING ( )    (!!yyerrstatus)
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
#define YYSIZE_T   unsigned int

Referenced by if(), yysyntax_error(), and yytnamerr().

#define YYSKELETON_NAME   "yacc.c"
#define YYSTACK_ALLOC   YYMALLOC

Referenced by if().

#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM

Referenced by yysyntax_error().

#define YYSTACK_BYTES (   N)
Value:
((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
short int yytype_int16
Definition: parser.cc:576
#define YYSTYPE
Definition: parser.cc:113
#define YYSTACK_GAP_MAXIMUM
Definition: parser.cc:715

Referenced by if().

#define YYSTACK_FREE   YYFREE

Referenced by if().

#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
#define YYSTACK_RELOCATE (   Stack_alloc,
  Stack 
)
Value:
do \
{ \
YYSIZE_T yynewbytes; \
YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
Stack = &yyptr->Stack_alloc; \
yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / sizeof (*yyptr); \
} \
while (YYID (0))
while(yyssp!=yyss)
Definition: parser.cc:6265
#define YYID(N)
Definition: parser.cc:616
YYSIZE_T yystacksize
Definition: parser.cc:2033
#define YYCOPY(Dst, Src, Count)
Definition: parser.cc:751
#define YYSIZE_T
Definition: parser.cc:589
#define YYSTACK_GAP_MAXIMUM
Definition: parser.cc:715

Referenced by if().

#define YYSTYPE   yystype_type
#define YYSYNTAX_ERROR
Value:
static void const char * yymsg
Definition: parser.cc:1932
YYSIZE_T yymsg_alloc
Definition: parser.cc:2047
yytype_int16 * yyssp
Definition: parser.cc:2026
static int yysyntax_error(YYSIZE_T *yymsg_alloc, char **yymsg, yytype_int16 *yyssp, int yytoken)
Definition: parser.cc:1789
int yytoken
Definition: parser.cc:2038

Referenced by if().

#define YYTABLE_NINF   -152
#define yytable_value_is_error (   Yytable_value)    YYID (0)

Referenced by if(), and yysyntax_error().

#define yyTerror (   text,
  lineno,
  tentry 
)    yyerror_with_tableentry (p_parser, lineno, text, tentry)

Referenced by switch().

#define YYTERROR   1

Referenced by for(), and yysyntax_error().

#define YYTOKENTYPE
#define YYTRANSLATE (   YYX)    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
#define yyTwarning (   tentry)    yywarning_with_tableentry (p_parser, 0, tentry)

Referenced by switch().

#define yyTypeMismatch (   text,
  expected,
  seen,
  lineno 
)    yyerror_type_mismatch (p_parser, lineno, text, expected, seen)

Referenced by switch().

#define YYUNDEFTOK   2
#define YYUSE (   E)    ((void) (E))
#define yyVerror (   name,
  lineno 
)    yyerror_with_name (p_parser, lineno, name)

Referenced by switch().

#define yywarning (   text,
  lineno 
)    yywarning_with_lineinfo (p_parser, lineno, text)

Referenced by switch().

Typedef Documentation

typedef struct stack stack_t

general stack handling

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

Enumeration Type Documentation

Enumerator
SCAN_FILE 

a plain file

SCAN_START_INCLUDE 

before the first token of an include file (see start_block())

SCAN_INCLUDE 

inside an include file

Enumerator
SCANNER_ERROR 
END_OF_FILE 
EMPTY 
LIST 
MAP 
STRUCT 
BLOCK 
DEFINE 
UNDEFINE 
I18N 
RETURN 
CONTINUE 
BREAK 
IF 
DO 
WHILE 
REPEAT 
UNTIL 
IS 
ISNIL 
SYMBOL 
DCSYMBOL 
DCQUOTED_BLOCK 
QUOTED_BLOCK 
QUOTED_EXPRESSION 
CLOSEBRACKET 
TYPEDEF 
MODULE 
IMPORT 
EXPORT 
MAPEXPR 
INCLUDE 
GLOBAL 
TEXTDOMAIN 
CONST 
FULLNAME 
STATIC 
EXTERN 
LOOKUP 
SELECT 
SWITCH 
CASE 
DEFAULT 
SYM_NAMESPACE 
IDENTIFIER 
STRING 
C_VOID 
C_BOOLEAN 
C_INTEGER 
C_FLOAT 
C_BYTEBLOCK 
C_PATH 
C_SYMBOL 
C_TYPE 
OR 
AND 
NEQ 
EQUALS 
GE 
LE 
RIGHT 
LEFT 
ELSE 
UMINUS 
SCANNER_ERROR 
END_OF_FILE 
EMPTY 
LIST 
MAP 
STRUCT 
BLOCK 
DEFINE 
UNDEFINE 
I18N 
RETURN 
CONTINUE 
BREAK 
IF 
DO 
WHILE 
REPEAT 
UNTIL 
IS 
ISNIL 
SYMBOL 
DCSYMBOL 
DCQUOTED_BLOCK 
QUOTED_BLOCK 
QUOTED_EXPRESSION 
CLOSEBRACKET 
TYPEDEF 
MODULE 
IMPORT 
EXPORT 
MAPEXPR 
INCLUDE 
GLOBAL 
TEXTDOMAIN 
CONST 
FULLNAME 
STATIC 
EXTERN 
LOOKUP 
SELECT 
SWITCH 
CASE 
DEFAULT 
SYM_NAMESPACE 
IDENTIFIER 
STRING 
C_VOID 
C_BOOLEAN 
C_INTEGER 
C_FLOAT 
C_BYTEBLOCK 
C_PATH 
C_SYMBOL 
C_TYPE 
OR 
AND 
NEQ 
EQUALS 
GE 
LE 
RIGHT 
LEFT 
ELSE 
UMINUS 

Function Documentation

static blockstack_t* _blockstack_pop ( Parser parser,
blockstack_t **  blockstackptr 
)
static
static void _blockstack_push ( blockstack_t **  blockstackptr,
blockstack_t blockelement 
)
static

References stack_push().

static scannerstack_t* _scannerstack_pop ( scannerstack_t **  scannerstackptr)
static

References stack_pop().

static void _scannerstack_push ( scannerstack_t **  scannerstackptr,
stack_t element 
)
static

References stack_push().

static switchstack_t* _switchstack_pop ( switchstack_t **  switchstack)
static

References stack_pop().

static void _switchstack_push ( switchstack_t **  switchstack,
stack_t e 
)
static

References stack_push().

static void attach_comment ( YCodePtr  code,
const std::string &  comment 
)
static

References y2error.

static void attach_comment_after ( YCodePtr  code,
const std::string &  comment 
)
static

References y2error.

static constTypePtr attach_parameter ( Parser parser,
YCodePtr  code,
YYSTYPE parm,
YYSTYPE parm1 = 0 
)
static
for ( ;;  )
static void i_check_binary_op ( YYSTYPE result,
YYSTYPE e1,
const char *  op,
YYSTYPE e2,
Parser parser 
)
static
static void i_check_compare_op ( YYSTYPE result,
YYSTYPE e1,
YECompare::c_op  op,
YYSTYPE e2,
Parser parser 
)
static
static void i_check_unary_op ( YYSTYPE result,
YYSTYPE e1,
const char *  op,
Parser parser 
)
static
static void i_check_void_assign ( YYSTYPE lhs,
YYSTYPE rhs,
Parser parser 
)
static
if ( yyss+yystacksize-1<=  yyssp)
if ( yychar  = YYEMPTY)

References YYDPRINTF, and YYLEX.

if ( yychar<=  YYEOF)

References YYDPRINTF, and YYEOF.

if ( yyn<=  0)
if ( yyerrstatus)
if ( yyerrstatus  = = 3)

References YYABORT, yydestruct(), YYEMPTY, and YYEOF.

static bool parsing_comments ( )
static

Referenced by switch().

static stack_t * stack_pop ( stack_t **  stack)
static

pop element to stack

References y2debug.

Referenced by _blockstack_pop(), _scannerstack_pop(), and _switchstack_pop().

static void stack_push ( stack_t **  stack,
stack_t element 
)
static

push element to stack

Referenced by _blockstack_push(), _scannerstack_push(), and _switchstack_push().

static YBlockPtr start_block ( Parser parser,
constTypePtr  type 
)
static
switch ( yytype  )
switch ( yyn  )

References StaticDeclaration::active_predefined(), Type::Any, attach_parameter(), YBlock::attachStatement(), YBlock::b_module, YBlock::b_using, blockstack_at_toplevel, blockstack_pop, Type::Boolean, builtinTable, SymbolEntry::c_builtin, YECompare::C_EQ, SymbolEntry::c_filename, SymbolEntry::c_function, YECompare::C_GE, SymbolEntry::c_global, YECompare::C_GT, YECompare::C_LE, YECompare::C_LT, SymbolEntry::c_module, YECompare::C_NEQ, SymbolEntry::c_predefined, SymbolEntry::c_reference, SymbolEntry::c_self, SymbolEntry::c_typedef, SymbolEntry::c_unspec, SymbolEntry::c_variable, check_binary_op, check_compare_op, check_unary_op, check_void_assign, SymbolTable::countUsage(), DECL_DEPRECATED, DECL_LOOP, DECL_SYMBOL, declared_return_type, DO_DEBUG, do_while_count, Scanner::doStrdup(), YaST::ee, FILE_NOW, scannerstack_t::filename, SymbolTable::find(), YCPPathSearch::findInclude(), declaration::flags, Type::Float, found_return_type, Type::Function(), Scanner::globalTable(), if(), in_switch, blockstack_t::includeDepth, inside_module, Type::Integer, YCPElement::isNull(), TableEntry::isOverloaded(), LAST_TOKEN_COMMENT, formalparamstack::line, LINE_NOW, scannerstack_t::linenumber, Type::List, Type::ListUnspec, Type::Locale, Scanner::localTable(), Type::Map, Type::MapUnspec, formalparamstack::name, formalparamstack::next, TableEntry::next_overloaded(), Type::Nil, scannerstack_t::old_textdomain, p_parser, parsing_comments(), TableEntry::remove(), repeat_count, RULE_COMMENT, SCAN_INCLUDE, SCAN_START_INCLUDE, scannerstack_t::scanner, scannerstack_push, blockstack_t::self, TableEntry::sentry(), YaST::ExecutionEnvironment::setFilename(), YaST::ExecutionEnvironment::setLinenumber(), start_block(), scannerstack_t::state, switchstack_t::statement, Type::String, switchstack_pop, switchstack_push, Type::Symbol, Y2Namespace::table(), declaration::tentry, Type::Term, blockstack_t::theBlock, TOKEN_COMMENT, TOKEN_COMMENT_TO, SymbolTable::toString(), formalparamstack::type, YEVariable::type(), declaration::type, YECall::type(), Type::Unspec, Type::Void, while(), y2debug, y2internal, y2warning, YCode::ycBoolean, YCode::ycFloat, YCode::ycInteger, YCode::ycList, YCode::ycMap, YCode::ycString, YCode::ycVoid, YCode::yeBuiltin, YCode::yeFunction, YCode::yeFunctionPointer, YCode::yeTerm, YCode::ysFunction, YCode::ysVariable, YYABORT, YYACCEPT, yyCantCast, yyConstAssignError, yyFerror, yyLerror, yyNoModule, yyTerror, yyTwarning, yyTypeMismatch, yyval, yyVerror, and yywarning.

while ( yyssp!  = yyss)

References yydestruct(), and YYPOPSTACK.

Referenced by switch().

YYSTYPE yylval YY_INITIAL_VALUE ( yyval_default  )
YY_REDUCE_PRINT ( yyn  )
YY_STACK_PRINT ( yyss  ,
yyssp   
)
YY_SYMBOL_PRINT ( yymsg  ,
yytype  ,
yyvaluep  ,
yylocationp   
)
YY_SYMBOL_PRINT ( "Next token is"  ,
yytoken  ,
yylval,
yylloc 
)
YY_SYMBOL_PRINT ( "Shifting"  ,
yytoken  ,
yylval,
yylloc 
)
YY_SYMBOL_PRINT ( )
YY_IGNORE_MAYBE_UNINITIALIZED_END YY_SYMBOL_PRINT ( "Shifting"  ,
yystos  [yyn],
yyvsp  ,
yylsp   
)
yydestruct ( "Cleanup: discarding lookahead"  ,
yytoken  ,
yylval 
)

Referenced by for(), if(), and while().

YYDPRINTF ( (stderr,"Starting parse\n")  )
YYDPRINTF ( (stderr,"Entering state %d\n", yystate)  )
static void yyerror_assign_const ( Parser parser,
int  lineno,
const char *  s 
)
static
static void yyerror_cant_cast ( Parser parser,
int  lineno,
constTypePtr  from,
constTypePtr  to 
)
static
static void yyerror_no_module ( Parser parser,
int  lineno,
const char *  module 
)
static
static void yyerror_type_mismatch ( Parser parser,
int  lineno,
const char *  s,
constTypePtr  expected_type,
constTypePtr  seen_type 
)
static
static void yyerror_with_code ( Parser parser,
int  lineno,
YCodePtr  c,
constTypePtr  t 
)
static
static void yyerror_with_file ( Parser parser,
int  lineno,
const char *  s 
)
static
static void yyerror_with_lineinfo ( Parser parser,
int  lineno,
const char *  s 
)
static
static void yyerror_with_name ( Parser parser,
int  lineno,
const char *  s 
)
static
static void yyerror_with_tableentry ( Parser parser,
int  lineno,
const char *  s,
TableEntry entry 
)
static
return YYID ( yyresult  )
int yylex ( YYSTYPE lvalp_void,
void *  void_pr 
)
int yyparse ( )

Referenced by Parser::parse().

YYPOPSTACK ( yylen  )
YYSTACK_FREE ( yyss  )
YYSTACK_FREE ( yymsg  )
static int yysyntax_error ( YYSIZE_T yymsg_alloc,
char **  yymsg,
yytype_int16 yyssp,
int  yytoken 
)
static
static YYSIZE_T yytnamerr ( char *  yyres,
const char *  yystr 
)
static

References yyn, YYSIZE_T, and yystr.

Referenced by yysyntax_error().

static void yywarning_with_lineinfo ( Parser parser,
int  lineno,
const char *  s 
)
static
static void yywarning_with_tableentry ( Parser parser,
int  lineno,
TableEntry entry 
)
static

Variable Documentation

yynewstate __pad0__
yyexhaustedlab __pad10__
yyreturn __pad11__
yysetstate __pad1__
yybackup __pad2__
yydefault __pad3__
yyreduce __pad4__
yyerrlab __pad5__
yyerrorlab __pad6__
yyerrlab1 __pad7__
yyacceptlab __pad8__
yyabortlab __pad9__
continue
constTypePtr declared_return_type = Type::Unspec
static

set by function declaration in order to predefine a definitions block return type

Referenced by switch().

int do_while_count = 0
static

Referenced by switch().

else
Initial value:
{
yychar
Definition: parser.cc:2065
int yytoken
Definition: parser.cc:2038
#define YYTRANSLATE(YYX)
Definition: parser.cc:781
constTypePtr found_return_type = Type::Unspec
static

set when a return statement is encountered

Referenced by switch().

bool in_switch = false
static

Referenced by switch().

bool inside_module = false
static

Referenced by switch().

int repeat_count = 0
static

Referenced by switch().

StaticDeclaration static_declarations
YYACCEPT
goto yybackup
yychar = YYEMPTY
const yytype_int16 yycheck[]
static
return yyd
const yytype_uint8 yydefact[]
static
goto yydefault
const yytype_int16 yydefgoto[]
static
Initial value:
=
{
-1, 23, 51, 41, 214, 42, 43, 44, 25, 54,
35, 61, 62, 128, 243, 129, 288, 181, 267, 183,
269, 290, 296, 206, 207, 212, 130, 131, 132, 133,
201, 246, 247, 248, 134, 33, 26, 27, 52, 95,
28, 47, 29, 102, 173, 30, 31, 188
}
char* char* yydest
static
goto yyerrlab

Referenced by if().

goto yyerrlab1
yyerrstatus = 0
int yylen = 0
char * yymsg = "Deleting"
static

Referenced by if(), and yysyntax_error().

YYSIZE_T yymsg_alloc = sizeof yymsgbuf
char yymsgbuf[128]

Referenced by if().

yyn = yytoken

Referenced by for(), if(), yysyntax_error(), and yytnamerr().

yynerrs = 0

Referenced by if().

goto yynewstate
const yytype_int16 yypact[]
static
int void* YYPARSE_PARAM
const yytype_int16 yypgoto[]
static
Initial value:
=
{
-245, -245, -6, 53, -245, 72, 3, -245, -46, -245,
-245, -50, -245, -244, -245, -245, -245, -245, -245, -245,
-245, -245, -245, -4, -134, -245, -245, -245, -245, -245,
-245, -245, -245, -61, -245, 158, -245, -245, -85, 166,
-245, -245, -60, -245, -245, -245, -56, -14
}
const yytype_uint8 yyr1[]
static
Initial value:
=
{
0, 90, 91, 91, 91, 92, 92, 92, 92, 93,
94, 94, 94, 94, 95, 96, 96, 96, 96, 96,
96, 96, 96, 96, 96, 96, 96, 96, 96, 97,
97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
97, 99, 98, 100, 98, 101, 102, 102, 103, 104,
103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
103, 103, 103, 103, 103, 105, 106, 105, 107, 108,
105, 109, 110, 105, 105, 105, 105, 105, 111, 105,
112, 112, 113, 113, 113, 113, 113, 113, 113, 113,
113, 113, 114, 114, 115, 115, 116, 116, 116, 116,
117, 118, 119, 119, 120, 120, 121, 121, 122, 122,
123, 124, 124, 125, 125, 126, 126, 126, 126, 126,
126, 126, 126, 127, 127, 128, 128, 129, 129, 130,
130, 131, 131, 133, 132, 134, 134, 134, 134, 134,
135, 135, 136, 136, 137, 137
}
const yytype_uint8 yyr2[]
static
Initial value:
=
{
0, 2, 1, 1, 0, 1, 1, 1, 1, 5,
0, 1, 1, 1, 4, 1, 8, 8, 1, 3,
3, 6, 1, 7, 3, 1, 1, 1, 1, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 2,
3, 3, 3, 3, 3, 3, 3, 3, 2, 2,
5, 0, 3, 0, 3, 2, 2, 0, 1, 0,
4, 3, 3, 3, 3, 3, 3, 4, 1, 2,
2, 1, 1, 3, 2, 6, 0, 6, 0, 0,
9, 0, 0, 9, 2, 2, 2, 3, 0, 6,
2, 0, 1, 1, 3, 1, 5, 3, 2, 2,
3, 4, 2, 2, 1, 3, 4, 2, 2, 4,
4, 4, 1, 0, 1, 0, 0, 1, 1, 3,
2, 3, 6, 1, 2, 1, 1, 1, 1, 1,
1, 1, 1, 2, 4, 1, 3, 1, 0, 2,
4, 3, 5, 0, 5, 0, 2, 1, 4, 3,
1, 1, 1, 1, 1, 3
}
goto yyreduce

Referenced by if().

yyresult = 2
goto yyreturn
const char* yys = yysrc
goto yysetstate
const char* yysrc
yytype_int16* yyss

Referenced by if().

yyssp = yyss = yyssa

Referenced by for(), and yysyntax_error().

yystacksize = YYINITDEPTH
else yystate = 0

Referenced by for().

const yytype_uint8 yystos[]
static
YYSIZE_T const char* yystr
static

Referenced by yytnamerr().

const yytype_int16 yytable[]
static
const char* const yytname[]
static
Initial value:
=
{
"$end", "error", "$undefined", "SCANNER_ERROR", "END_OF_FILE", "EMPTY",
"LIST", "MAP", "STRUCT", "BLOCK", "DEFINE", "UNDEFINE", "I18N", "RETURN",
"CONTINUE", "BREAK", "IF", "DO", "WHILE", "REPEAT", "UNTIL", "IS",
"ISNIL", "SYMBOL", "DCSYMBOL", "DCQUOTED_BLOCK", "QUOTED_BLOCK",
"QUOTED_EXPRESSION", "CLOSEBRACKET", "TYPEDEF", "MODULE", "IMPORT",
"EXPORT", "MAPEXPR", "INCLUDE", "GLOBAL", "TEXTDOMAIN", "CONST",
"FULLNAME", "STATIC", "EXTERN", "LOOKUP", "SELECT", "SWITCH", "CASE",
"DEFAULT", "SYM_NAMESPACE", "IDENTIFIER", "STRING", "C_VOID",
"C_BOOLEAN", "C_INTEGER", "C_FLOAT", "C_BYTEBLOCK", "C_PATH", "C_SYMBOL",
"C_TYPE", "'='", "'?'", "OR", "AND", "'|'", "'^'", "'&'", "NEQ",
"EQUALS", "'<'", "'>'", "GE", "LE", "RIGHT", "LEFT", "'+'", "'-'", "'*'",
"'/'", "'%'", "'!'", "ELSE", "'~'", "UMINUS", "':'", "'['", "'('", "')'",
"','", "'{'", "'}'", "';'", "']'", "$accept", "ycp", "expression",
"bracket_expression", "castable_expression", "casted_expression",
"compact_expression", "infix_expression", "block", "@1", "@2",
"block_end", "statements", "statement", "$@3", "control_statement", "@4",
"$@5", "@6", "$@7", "@8", "@9", "opt_else", "type", "type_gt", "types",
"definition", "function_start", "opt_global_identifier", "opt_global",
"opt_define", "tupletypes", "tupletype", "formal_param", "assignment",
"string", "constant", "list", "list_elements", "opt_comma", "map",
"map_elements", "function_call", "@10", "parameters", "function_name",
"identifier", "identifier_list", YY_NULL
}
#define YY_NULL
Definition: parser.cc:355
int yytoken = 0

Referenced by yysyntax_error().

const yytype_uint8 yytranslate[]
static
int yytype
yyval = yyvsp[1-yylen]

Referenced by switch().

YYSTYPE yyval_default
static
Initial value:
{
int yychar
yychar
Definition: parser.cc:2065
YYSTYPE* yyvaluep
YYSTYPE* yyvs

Referenced by if().


Generated on a sunny day for yast2-core by doxygen 1.8.5