mirror of
https://github.com/reactos/reactos.git
synced 2025-07-31 11:11:44 +00:00
[CMAKE] Generate Flex and Bison files at build time
We have Flex and Bison distributed along with RosBE 2.2 so this should not be a problem
This commit is contained in:
parent
91fceab36e
commit
5375e33490
44 changed files with 54 additions and 68683 deletions
|
@ -10,6 +10,10 @@ if(MSVC)
|
|||
endif()
|
||||
endif()
|
||||
|
||||
FLEX_TARGET(p_scanner parser.l ${CMAKE_CURRENT_BINARY_DIR}/parser.yy.c)
|
||||
BISON_TARGET(p_parser parser.y ${CMAKE_CURRENT_BINARY_DIR}/parser.tab.c COMPILE_FLAGS "-p parser_")
|
||||
ADD_FLEX_BISON_DEPENDENCY(p_scanner p_parser)
|
||||
|
||||
list(APPEND SOURCE
|
||||
client.c
|
||||
expr.c
|
||||
|
@ -25,8 +29,8 @@ list(APPEND SOURCE
|
|||
widl.c
|
||||
write_msft.c
|
||||
write_sltg.c
|
||||
parser.yy.c
|
||||
parser.tab.c
|
||||
${FLEX_p_scanner_OUTPUTS}
|
||||
${BISON_p_parser_OUTPUTS}
|
||||
../port/getopt.c
|
||||
../port/getopt1.c
|
||||
../port/mkstemps.c)
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,289 +0,0 @@
|
|||
/* A Bison parser, made by GNU Bison 3.5.4. */
|
||||
|
||||
/* Bison interface for Yacc-like parsers in C
|
||||
|
||||
Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2020 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 3 of the License, 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, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
/* As a special exception, you may create a larger work that contains
|
||||
part or all of the Bison parser skeleton and distribute that work
|
||||
under terms of your choice, so long as that work isn't itself a
|
||||
parser generator using the skeleton or a modified version thereof
|
||||
as a parser skeleton. Alternatively, if you modify or redistribute
|
||||
the parser skeleton itself, you may (at your option) remove this
|
||||
special exception, which will cause the skeleton and the resulting
|
||||
Bison output files to be licensed under the GNU General Public
|
||||
License without this special exception.
|
||||
|
||||
This special exception was added by the Free Software Foundation in
|
||||
version 2.2 of Bison. */
|
||||
|
||||
/* Undocumented macros, especially those whose name start with YY_,
|
||||
are private implementation details. Do not rely on them. */
|
||||
|
||||
#ifndef YY_PARSER_PARSER_TAB_H_INCLUDED
|
||||
# define YY_PARSER_PARSER_TAB_H_INCLUDED
|
||||
/* Debug traces. */
|
||||
#ifndef YYDEBUG
|
||||
# define YYDEBUG 0
|
||||
#endif
|
||||
#if YYDEBUG
|
||||
extern int parser_debug;
|
||||
#endif
|
||||
|
||||
/* Token type. */
|
||||
#ifndef YYTOKENTYPE
|
||||
# define YYTOKENTYPE
|
||||
enum yytokentype
|
||||
{
|
||||
aIDENTIFIER = 258,
|
||||
aPRAGMA = 259,
|
||||
aKNOWNTYPE = 260,
|
||||
aNUM = 261,
|
||||
aHEXNUM = 262,
|
||||
aDOUBLE = 263,
|
||||
aSTRING = 264,
|
||||
aWSTRING = 265,
|
||||
aSQSTRING = 266,
|
||||
aUUID = 267,
|
||||
aEOF = 268,
|
||||
aACF = 269,
|
||||
SHL = 270,
|
||||
SHR = 271,
|
||||
MEMBERPTR = 272,
|
||||
EQUALITY = 273,
|
||||
INEQUALITY = 274,
|
||||
GREATEREQUAL = 275,
|
||||
LESSEQUAL = 276,
|
||||
LOGICALOR = 277,
|
||||
LOGICALAND = 278,
|
||||
ELLIPSIS = 279,
|
||||
tAGGREGATABLE = 280,
|
||||
tALLNODES = 281,
|
||||
tALLOCATE = 282,
|
||||
tANNOTATION = 283,
|
||||
tAPPOBJECT = 284,
|
||||
tASYNC = 285,
|
||||
tASYNCUUID = 286,
|
||||
tAUTOHANDLE = 287,
|
||||
tBINDABLE = 288,
|
||||
tBOOLEAN = 289,
|
||||
tBROADCAST = 290,
|
||||
tBYTE = 291,
|
||||
tBYTECOUNT = 292,
|
||||
tCALLAS = 293,
|
||||
tCALLBACK = 294,
|
||||
tCASE = 295,
|
||||
tCDECL = 296,
|
||||
tCHAR = 297,
|
||||
tCOCLASS = 298,
|
||||
tCODE = 299,
|
||||
tCOMMSTATUS = 300,
|
||||
tCONST = 301,
|
||||
tCONTEXTHANDLE = 302,
|
||||
tCONTEXTHANDLENOSERIALIZE = 303,
|
||||
tCONTEXTHANDLESERIALIZE = 304,
|
||||
tCONTROL = 305,
|
||||
tCPPQUOTE = 306,
|
||||
tDECODE = 307,
|
||||
tDEFAULT = 308,
|
||||
tDEFAULTBIND = 309,
|
||||
tDEFAULTCOLLELEM = 310,
|
||||
tDEFAULTVALUE = 311,
|
||||
tDEFAULTVTABLE = 312,
|
||||
tDISABLECONSISTENCYCHECK = 313,
|
||||
tDISPLAYBIND = 314,
|
||||
tDISPINTERFACE = 315,
|
||||
tDLLNAME = 316,
|
||||
tDONTFREE = 317,
|
||||
tDOUBLE = 318,
|
||||
tDUAL = 319,
|
||||
tENABLEALLOCATE = 320,
|
||||
tENCODE = 321,
|
||||
tENDPOINT = 322,
|
||||
tENTRY = 323,
|
||||
tENUM = 324,
|
||||
tERRORSTATUST = 325,
|
||||
tEXPLICITHANDLE = 326,
|
||||
tEXTERN = 327,
|
||||
tFALSE = 328,
|
||||
tFASTCALL = 329,
|
||||
tFAULTSTATUS = 330,
|
||||
tFLOAT = 331,
|
||||
tFORCEALLOCATE = 332,
|
||||
tHANDLE = 333,
|
||||
tHANDLET = 334,
|
||||
tHELPCONTEXT = 335,
|
||||
tHELPFILE = 336,
|
||||
tHELPSTRING = 337,
|
||||
tHELPSTRINGCONTEXT = 338,
|
||||
tHELPSTRINGDLL = 339,
|
||||
tHIDDEN = 340,
|
||||
tHYPER = 341,
|
||||
tID = 342,
|
||||
tIDEMPOTENT = 343,
|
||||
tIGNORE = 344,
|
||||
tIIDIS = 345,
|
||||
tIMMEDIATEBIND = 346,
|
||||
tIMPLICITHANDLE = 347,
|
||||
tIMPORT = 348,
|
||||
tIMPORTLIB = 349,
|
||||
tIN = 350,
|
||||
tIN_LINE = 351,
|
||||
tINLINE = 352,
|
||||
tINPUTSYNC = 353,
|
||||
tINT = 354,
|
||||
tINT32 = 355,
|
||||
tINT3264 = 356,
|
||||
tINT64 = 357,
|
||||
tINTERFACE = 358,
|
||||
tLCID = 359,
|
||||
tLENGTHIS = 360,
|
||||
tLIBRARY = 361,
|
||||
tLICENSED = 362,
|
||||
tLOCAL = 363,
|
||||
tLONG = 364,
|
||||
tMAYBE = 365,
|
||||
tMESSAGE = 366,
|
||||
tMETHODS = 367,
|
||||
tMODULE = 368,
|
||||
tNAMESPACE = 369,
|
||||
tNOCODE = 370,
|
||||
tNONBROWSABLE = 371,
|
||||
tNONCREATABLE = 372,
|
||||
tNONEXTENSIBLE = 373,
|
||||
tNOTIFY = 374,
|
||||
tNOTIFYFLAG = 375,
|
||||
tNULL = 376,
|
||||
tOBJECT = 377,
|
||||
tODL = 378,
|
||||
tOLEAUTOMATION = 379,
|
||||
tOPTIMIZE = 380,
|
||||
tOPTIONAL = 381,
|
||||
tOUT = 382,
|
||||
tPARTIALIGNORE = 383,
|
||||
tPASCAL = 384,
|
||||
tPOINTERDEFAULT = 385,
|
||||
tPRAGMA_WARNING = 386,
|
||||
tPROGID = 387,
|
||||
tPROPERTIES = 388,
|
||||
tPROPGET = 389,
|
||||
tPROPPUT = 390,
|
||||
tPROPPUTREF = 391,
|
||||
tPROXY = 392,
|
||||
tPTR = 393,
|
||||
tPUBLIC = 394,
|
||||
tRANGE = 395,
|
||||
tREADONLY = 396,
|
||||
tREF = 397,
|
||||
tREGISTER = 398,
|
||||
tREPRESENTAS = 399,
|
||||
tREQUESTEDIT = 400,
|
||||
tRESTRICTED = 401,
|
||||
tRETVAL = 402,
|
||||
tSAFEARRAY = 403,
|
||||
tSHORT = 404,
|
||||
tSIGNED = 405,
|
||||
tSINGLENODE = 406,
|
||||
tSIZEIS = 407,
|
||||
tSIZEOF = 408,
|
||||
tSMALL = 409,
|
||||
tSOURCE = 410,
|
||||
tSTATIC = 411,
|
||||
tSTDCALL = 412,
|
||||
tSTRICTCONTEXTHANDLE = 413,
|
||||
tSTRING = 414,
|
||||
tSTRUCT = 415,
|
||||
tSWITCH = 416,
|
||||
tSWITCHIS = 417,
|
||||
tSWITCHTYPE = 418,
|
||||
tTHREADING = 419,
|
||||
tTRANSMITAS = 420,
|
||||
tTRUE = 421,
|
||||
tTYPEDEF = 422,
|
||||
tUIDEFAULT = 423,
|
||||
tUNION = 424,
|
||||
tUNIQUE = 425,
|
||||
tUNSIGNED = 426,
|
||||
tUSESGETLASTERROR = 427,
|
||||
tUSERMARSHAL = 428,
|
||||
tUUID = 429,
|
||||
tV1ENUM = 430,
|
||||
tVARARG = 431,
|
||||
tVERSION = 432,
|
||||
tVIPROGID = 433,
|
||||
tVOID = 434,
|
||||
tWCHAR = 435,
|
||||
tWIREMARSHAL = 436,
|
||||
tAPARTMENT = 437,
|
||||
tNEUTRAL = 438,
|
||||
tSINGLE = 439,
|
||||
tFREE = 440,
|
||||
tBOTH = 441,
|
||||
CAST = 442,
|
||||
PPTR = 443,
|
||||
POS = 444,
|
||||
NEG = 445,
|
||||
ADDRESSOF = 446
|
||||
};
|
||||
#endif
|
||||
|
||||
/* Value type. */
|
||||
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
||||
union YYSTYPE
|
||||
{
|
||||
#line 144 "parser.y"
|
||||
|
||||
attr_t *attr;
|
||||
attr_list_t *attr_list;
|
||||
str_list_t *str_list;
|
||||
expr_t *expr;
|
||||
expr_list_t *expr_list;
|
||||
type_t *type;
|
||||
var_t *var;
|
||||
var_list_t *var_list;
|
||||
declarator_t *declarator;
|
||||
declarator_list_t *declarator_list;
|
||||
statement_t *statement;
|
||||
statement_list_t *stmt_list;
|
||||
warning_t *warning;
|
||||
warning_list_t *warning_list;
|
||||
ifref_t *ifref;
|
||||
ifref_list_t *ifref_list;
|
||||
char *str;
|
||||
UUID *uuid;
|
||||
unsigned int num;
|
||||
double dbl;
|
||||
interface_info_t ifinfo;
|
||||
typelib_t *typelib;
|
||||
struct _import_t *import;
|
||||
struct _decl_spec_t *declspec;
|
||||
enum storage_class stgclass;
|
||||
|
||||
#line 277 "parser.tab.h"
|
||||
|
||||
};
|
||||
typedef union YYSTYPE YYSTYPE;
|
||||
# define YYSTYPE_IS_TRIVIAL 1
|
||||
# define YYSTYPE_IS_DECLARED 1
|
||||
#endif
|
||||
|
||||
|
||||
extern YYSTYPE parser_lval;
|
||||
|
||||
int parser_parse (void);
|
||||
|
||||
#endif /* !YY_PARSER_PARSER_TAB_H_INCLUDED */
|
File diff suppressed because it is too large
Load diff
|
@ -1,698 +0,0 @@
|
|||
#ifndef parser_HEADER_H
|
||||
#define parser_HEADER_H 1
|
||||
#define parser_IN_HEADER 1
|
||||
|
||||
#line 6 "parser.yy.h"
|
||||
|
||||
#line 8 "parser.yy.h"
|
||||
|
||||
#define YY_INT_ALIGNED short int
|
||||
|
||||
/* A lexical scanner generated by flex */
|
||||
|
||||
#define FLEX_SCANNER
|
||||
#define YY_FLEX_MAJOR_VERSION 2
|
||||
#define YY_FLEX_MINOR_VERSION 6
|
||||
#define YY_FLEX_SUBMINOR_VERSION 4
|
||||
#if YY_FLEX_SUBMINOR_VERSION > 0
|
||||
#define FLEX_BETA
|
||||
#endif
|
||||
|
||||
#ifdef yy_create_buffer
|
||||
#define parser__create_buffer_ALREADY_DEFINED
|
||||
#else
|
||||
#define yy_create_buffer parser__create_buffer
|
||||
#endif
|
||||
|
||||
#ifdef yy_delete_buffer
|
||||
#define parser__delete_buffer_ALREADY_DEFINED
|
||||
#else
|
||||
#define yy_delete_buffer parser__delete_buffer
|
||||
#endif
|
||||
|
||||
#ifdef yy_scan_buffer
|
||||
#define parser__scan_buffer_ALREADY_DEFINED
|
||||
#else
|
||||
#define yy_scan_buffer parser__scan_buffer
|
||||
#endif
|
||||
|
||||
#ifdef yy_scan_string
|
||||
#define parser__scan_string_ALREADY_DEFINED
|
||||
#else
|
||||
#define yy_scan_string parser__scan_string
|
||||
#endif
|
||||
|
||||
#ifdef yy_scan_bytes
|
||||
#define parser__scan_bytes_ALREADY_DEFINED
|
||||
#else
|
||||
#define yy_scan_bytes parser__scan_bytes
|
||||
#endif
|
||||
|
||||
#ifdef yy_init_buffer
|
||||
#define parser__init_buffer_ALREADY_DEFINED
|
||||
#else
|
||||
#define yy_init_buffer parser__init_buffer
|
||||
#endif
|
||||
|
||||
#ifdef yy_flush_buffer
|
||||
#define parser__flush_buffer_ALREADY_DEFINED
|
||||
#else
|
||||
#define yy_flush_buffer parser__flush_buffer
|
||||
#endif
|
||||
|
||||
#ifdef yy_load_buffer_state
|
||||
#define parser__load_buffer_state_ALREADY_DEFINED
|
||||
#else
|
||||
#define yy_load_buffer_state parser__load_buffer_state
|
||||
#endif
|
||||
|
||||
#ifdef yy_switch_to_buffer
|
||||
#define parser__switch_to_buffer_ALREADY_DEFINED
|
||||
#else
|
||||
#define yy_switch_to_buffer parser__switch_to_buffer
|
||||
#endif
|
||||
|
||||
#ifdef yypush_buffer_state
|
||||
#define parser_push_buffer_state_ALREADY_DEFINED
|
||||
#else
|
||||
#define yypush_buffer_state parser_push_buffer_state
|
||||
#endif
|
||||
|
||||
#ifdef yypop_buffer_state
|
||||
#define parser_pop_buffer_state_ALREADY_DEFINED
|
||||
#else
|
||||
#define yypop_buffer_state parser_pop_buffer_state
|
||||
#endif
|
||||
|
||||
#ifdef yyensure_buffer_stack
|
||||
#define parser_ensure_buffer_stack_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyensure_buffer_stack parser_ensure_buffer_stack
|
||||
#endif
|
||||
|
||||
#ifdef yylex
|
||||
#define parser_lex_ALREADY_DEFINED
|
||||
#else
|
||||
#define yylex parser_lex
|
||||
#endif
|
||||
|
||||
#ifdef yyrestart
|
||||
#define parser_restart_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyrestart parser_restart
|
||||
#endif
|
||||
|
||||
#ifdef yylex_init
|
||||
#define parser_lex_init_ALREADY_DEFINED
|
||||
#else
|
||||
#define yylex_init parser_lex_init
|
||||
#endif
|
||||
|
||||
#ifdef yylex_init_extra
|
||||
#define parser_lex_init_extra_ALREADY_DEFINED
|
||||
#else
|
||||
#define yylex_init_extra parser_lex_init_extra
|
||||
#endif
|
||||
|
||||
#ifdef yylex_destroy
|
||||
#define parser_lex_destroy_ALREADY_DEFINED
|
||||
#else
|
||||
#define yylex_destroy parser_lex_destroy
|
||||
#endif
|
||||
|
||||
#ifdef yyget_debug
|
||||
#define parser_get_debug_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyget_debug parser_get_debug
|
||||
#endif
|
||||
|
||||
#ifdef yyset_debug
|
||||
#define parser_set_debug_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyset_debug parser_set_debug
|
||||
#endif
|
||||
|
||||
#ifdef yyget_extra
|
||||
#define parser_get_extra_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyget_extra parser_get_extra
|
||||
#endif
|
||||
|
||||
#ifdef yyset_extra
|
||||
#define parser_set_extra_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyset_extra parser_set_extra
|
||||
#endif
|
||||
|
||||
#ifdef yyget_in
|
||||
#define parser_get_in_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyget_in parser_get_in
|
||||
#endif
|
||||
|
||||
#ifdef yyset_in
|
||||
#define parser_set_in_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyset_in parser_set_in
|
||||
#endif
|
||||
|
||||
#ifdef yyget_out
|
||||
#define parser_get_out_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyget_out parser_get_out
|
||||
#endif
|
||||
|
||||
#ifdef yyset_out
|
||||
#define parser_set_out_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyset_out parser_set_out
|
||||
#endif
|
||||
|
||||
#ifdef yyget_leng
|
||||
#define parser_get_leng_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyget_leng parser_get_leng
|
||||
#endif
|
||||
|
||||
#ifdef yyget_text
|
||||
#define parser_get_text_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyget_text parser_get_text
|
||||
#endif
|
||||
|
||||
#ifdef yyget_lineno
|
||||
#define parser_get_lineno_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyget_lineno parser_get_lineno
|
||||
#endif
|
||||
|
||||
#ifdef yyset_lineno
|
||||
#define parser_set_lineno_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyset_lineno parser_set_lineno
|
||||
#endif
|
||||
|
||||
#ifdef yywrap
|
||||
#define parser_wrap_ALREADY_DEFINED
|
||||
#else
|
||||
#define yywrap parser_wrap
|
||||
#endif
|
||||
|
||||
#ifdef yyalloc
|
||||
#define parser_alloc_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyalloc parser_alloc
|
||||
#endif
|
||||
|
||||
#ifdef yyrealloc
|
||||
#define parser_realloc_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyrealloc parser_realloc
|
||||
#endif
|
||||
|
||||
#ifdef yyfree
|
||||
#define parser_free_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyfree parser_free
|
||||
#endif
|
||||
|
||||
#ifdef yytext
|
||||
#define parser_text_ALREADY_DEFINED
|
||||
#else
|
||||
#define yytext parser_text
|
||||
#endif
|
||||
|
||||
#ifdef yyleng
|
||||
#define parser_leng_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyleng parser_leng
|
||||
#endif
|
||||
|
||||
#ifdef yyin
|
||||
#define parser_in_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyin parser_in
|
||||
#endif
|
||||
|
||||
#ifdef yyout
|
||||
#define parser_out_ALREADY_DEFINED
|
||||
#else
|
||||
#define yyout parser_out
|
||||
#endif
|
||||
|
||||
#ifdef yy_flex_debug
|
||||
#define parser__flex_debug_ALREADY_DEFINED
|
||||
#else
|
||||
#define yy_flex_debug parser__flex_debug
|
||||
#endif
|
||||
|
||||
#ifdef yylineno
|
||||
#define parser_lineno_ALREADY_DEFINED
|
||||
#else
|
||||
#define yylineno parser_lineno
|
||||
#endif
|
||||
|
||||
/* First, we deal with platform-specific or compiler-specific issues. */
|
||||
|
||||
/* begin standard C headers. */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
/* end standard C headers. */
|
||||
|
||||
/* begin standard C++ headers. */
|
||||
|
||||
/* flex integer type definitions */
|
||||
|
||||
#ifndef YYFLEX_INTTYPES_DEFINED
|
||||
#define YYFLEX_INTTYPES_DEFINED
|
||||
|
||||
/* Prefer C99 integer types if available. */
|
||||
# if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
|
||||
/* Include <inttypes.h> and not <stdint.h> because Solaris 2.6 has the former
|
||||
* and not the latter.
|
||||
*/
|
||||
#include <inttypes.h>
|
||||
# define YYFLEX_USE_STDINT
|
||||
# else
|
||||
# if defined(_MSC_VER) && _MSC_VER >= 1600
|
||||
/* Visual C++ 2010 does not define __STDC_VERSION__ and has <stdint.h> but not
|
||||
* <inttypes.h>.
|
||||
*/
|
||||
#include <stdint.h>
|
||||
# define YYFLEX_USE_STDINT
|
||||
# endif
|
||||
# endif
|
||||
# ifdef YYFLEX_USE_STDINT
|
||||
typedef int8_t flex_int8_t;
|
||||
typedef uint8_t flex_uint8_t;
|
||||
typedef int16_t flex_int16_t;
|
||||
typedef uint16_t flex_uint16_t;
|
||||
typedef int32_t flex_int32_t;
|
||||
typedef uint32_t flex_uint32_t;
|
||||
# else
|
||||
typedef unsigned char flex_uint8_t;
|
||||
typedef short int flex_int16_t;
|
||||
typedef unsigned short int flex_uint16_t;
|
||||
# ifdef __STDC__
|
||||
typedef signed char flex_int8_t;
|
||||
/* ISO C only requires at least 16 bits for int. */
|
||||
#include <limits.h>
|
||||
# if UINT_MAX >= 4294967295
|
||||
# define YYFLEX_INT32_DEFINED
|
||||
typedef int flex_int32_t;
|
||||
typedef unsigned int flex_uint32_t;
|
||||
# endif
|
||||
# else
|
||||
typedef char flex_int8_t;
|
||||
# endif
|
||||
# ifndef YYFLEX_INT32_DEFINED
|
||||
typedef long int flex_int32_t;
|
||||
typedef unsigned long int flex_uint32_t;
|
||||
# endif
|
||||
# endif
|
||||
#endif /* YYFLEX_INTTYPES_DEFINED */
|
||||
|
||||
/* TODO: this is always defined, so inline it */
|
||||
#define yyconst const
|
||||
|
||||
#if defined(__GNUC__) && __GNUC__ >= 3
|
||||
#define yynoreturn __attribute__((__noreturn__))
|
||||
#else
|
||||
#define yynoreturn
|
||||
#endif
|
||||
|
||||
/* Size of default input buffer. */
|
||||
#ifndef YY_BUF_SIZE
|
||||
#ifdef __ia64__
|
||||
/* On IA-64, the buffer size is 16k, not 8k.
|
||||
* Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
|
||||
* Ditto for the __ia64__ case accordingly.
|
||||
*/
|
||||
#define YY_BUF_SIZE 32768
|
||||
#else
|
||||
#define YY_BUF_SIZE 16384
|
||||
#endif /* __ia64__ */
|
||||
#endif
|
||||
|
||||
#ifndef YY_TYPEDEF_YY_BUFFER_STATE
|
||||
#define YY_TYPEDEF_YY_BUFFER_STATE
|
||||
typedef struct yy_buffer_state *YY_BUFFER_STATE;
|
||||
#endif
|
||||
|
||||
#ifndef YY_TYPEDEF_YY_SIZE_T
|
||||
#define YY_TYPEDEF_YY_SIZE_T
|
||||
typedef size_t yy_size_t;
|
||||
#endif
|
||||
|
||||
extern int yyleng;
|
||||
|
||||
extern FILE *yyin, *yyout;
|
||||
|
||||
#ifndef YY_STRUCT_YY_BUFFER_STATE
|
||||
#define YY_STRUCT_YY_BUFFER_STATE
|
||||
struct yy_buffer_state
|
||||
{
|
||||
FILE *yy_input_file;
|
||||
|
||||
char *yy_ch_buf; /* input buffer */
|
||||
char *yy_buf_pos; /* current position in input buffer */
|
||||
|
||||
/* Size of input buffer in bytes, not including room for EOB
|
||||
* characters.
|
||||
*/
|
||||
int yy_buf_size;
|
||||
|
||||
/* Number of characters read into yy_ch_buf, not including EOB
|
||||
* characters.
|
||||
*/
|
||||
int yy_n_chars;
|
||||
|
||||
/* Whether we "own" the buffer - i.e., we know we created it,
|
||||
* and can realloc() it to grow it, and should free() it to
|
||||
* delete it.
|
||||
*/
|
||||
int yy_is_our_buffer;
|
||||
|
||||
/* Whether this is an "interactive" input source; if so, and
|
||||
* if we're using stdio for input, then we want to use getc()
|
||||
* instead of fread(), to make sure we stop fetching input after
|
||||
* each newline.
|
||||
*/
|
||||
int yy_is_interactive;
|
||||
|
||||
/* Whether we're considered to be at the beginning of a line.
|
||||
* If so, '^' rules will be active on the next match, otherwise
|
||||
* not.
|
||||
*/
|
||||
int yy_at_bol;
|
||||
|
||||
int yy_bs_lineno; /**< The line count. */
|
||||
int yy_bs_column; /**< The column count. */
|
||||
|
||||
/* Whether to try to fill the input buffer when we reach the
|
||||
* end of it.
|
||||
*/
|
||||
int yy_fill_buffer;
|
||||
|
||||
int yy_buffer_status;
|
||||
|
||||
};
|
||||
#endif /* !YY_STRUCT_YY_BUFFER_STATE */
|
||||
|
||||
void yyrestart ( FILE *input_file );
|
||||
void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer );
|
||||
YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size );
|
||||
void yy_delete_buffer ( YY_BUFFER_STATE b );
|
||||
void yy_flush_buffer ( YY_BUFFER_STATE b );
|
||||
void yypush_buffer_state ( YY_BUFFER_STATE new_buffer );
|
||||
void yypop_buffer_state ( void );
|
||||
|
||||
YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size );
|
||||
YY_BUFFER_STATE yy_scan_string ( const char *yy_str );
|
||||
YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len );
|
||||
|
||||
void *yyalloc ( yy_size_t );
|
||||
void *yyrealloc ( void *, yy_size_t );
|
||||
void yyfree ( void * );
|
||||
|
||||
/* Begin user sect3 */
|
||||
|
||||
extern int yylineno;
|
||||
|
||||
extern char *yytext;
|
||||
#ifdef yytext_ptr
|
||||
#undef yytext_ptr
|
||||
#endif
|
||||
#define yytext_ptr yytext
|
||||
|
||||
#ifdef YY_HEADER_EXPORT_START_CONDITIONS
|
||||
#define INITIAL 0
|
||||
#define QUOTE 1
|
||||
#define WSTRQUOTE 2
|
||||
#define ATTR 3
|
||||
#define PP_LINE 4
|
||||
#define PP_PRAGMA 5
|
||||
#define SQUOTE 6
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef YY_NO_UNISTD_H
|
||||
/* Special case for "unistd.h", since it is non-ANSI. We include it way
|
||||
* down here because we want the user's section 1 to have been scanned first.
|
||||
* The user has a chance to override it with an option.
|
||||
*/
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#ifndef YY_EXTRA_TYPE
|
||||
#define YY_EXTRA_TYPE void *
|
||||
#endif
|
||||
|
||||
/* Accessor methods to globals.
|
||||
These are made visible to non-reentrant scanners for convenience. */
|
||||
|
||||
int yylex_destroy ( void );
|
||||
|
||||
int yyget_debug ( void );
|
||||
|
||||
void yyset_debug ( int debug_flag );
|
||||
|
||||
YY_EXTRA_TYPE yyget_extra ( void );
|
||||
|
||||
void yyset_extra ( YY_EXTRA_TYPE user_defined );
|
||||
|
||||
FILE *yyget_in ( void );
|
||||
|
||||
void yyset_in ( FILE * _in_str );
|
||||
|
||||
FILE *yyget_out ( void );
|
||||
|
||||
void yyset_out ( FILE * _out_str );
|
||||
|
||||
int yyget_leng ( void );
|
||||
|
||||
char *yyget_text ( void );
|
||||
|
||||
int yyget_lineno ( void );
|
||||
|
||||
void yyset_lineno ( int _line_number );
|
||||
|
||||
/* Macros after this point can all be overridden by user definitions in
|
||||
* section 1.
|
||||
*/
|
||||
|
||||
#ifndef YY_SKIP_YYWRAP
|
||||
#ifdef __cplusplus
|
||||
extern "C" int yywrap ( void );
|
||||
#else
|
||||
extern int yywrap ( void );
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef yytext_ptr
|
||||
static void yy_flex_strncpy ( char *, const char *, int );
|
||||
#endif
|
||||
|
||||
#ifdef YY_NEED_STRLEN
|
||||
static int yy_flex_strlen ( const char * );
|
||||
#endif
|
||||
|
||||
#ifndef YY_NO_INPUT
|
||||
|
||||
#endif
|
||||
|
||||
/* Amount of stuff to slurp up with each read. */
|
||||
#ifndef YY_READ_BUF_SIZE
|
||||
#ifdef __ia64__
|
||||
/* On IA-64, the buffer size is 16k, not 8k */
|
||||
#define YY_READ_BUF_SIZE 16384
|
||||
#else
|
||||
#define YY_READ_BUF_SIZE 8192
|
||||
#endif /* __ia64__ */
|
||||
#endif
|
||||
|
||||
/* Number of entries by which start-condition stack grows. */
|
||||
#ifndef YY_START_STACK_INCR
|
||||
#define YY_START_STACK_INCR 25
|
||||
#endif
|
||||
|
||||
/* Default declaration of generated scanner - a define so the user can
|
||||
* easily add parameters.
|
||||
*/
|
||||
#ifndef YY_DECL
|
||||
#define YY_DECL_IS_OURS 1
|
||||
|
||||
extern int yylex (void);
|
||||
|
||||
#define YY_DECL int yylex (void)
|
||||
#endif /* !YY_DECL */
|
||||
|
||||
/* yy_get_previous_state - get the state just before the EOB char was reached */
|
||||
|
||||
#undef YY_NEW_FILE
|
||||
#undef YY_FLUSH_BUFFER
|
||||
#undef yy_set_bol
|
||||
#undef yy_new_buffer
|
||||
#undef yy_set_interactive
|
||||
#undef YY_DO_BEFORE_ACTION
|
||||
|
||||
#ifdef YY_DECL_IS_OURS
|
||||
#undef YY_DECL_IS_OURS
|
||||
#undef YY_DECL
|
||||
#endif
|
||||
|
||||
#ifndef parser__create_buffer_ALREADY_DEFINED
|
||||
#undef yy_create_buffer
|
||||
#endif
|
||||
#ifndef parser__delete_buffer_ALREADY_DEFINED
|
||||
#undef yy_delete_buffer
|
||||
#endif
|
||||
#ifndef parser__scan_buffer_ALREADY_DEFINED
|
||||
#undef yy_scan_buffer
|
||||
#endif
|
||||
#ifndef parser__scan_string_ALREADY_DEFINED
|
||||
#undef yy_scan_string
|
||||
#endif
|
||||
#ifndef parser__scan_bytes_ALREADY_DEFINED
|
||||
#undef yy_scan_bytes
|
||||
#endif
|
||||
#ifndef parser__init_buffer_ALREADY_DEFINED
|
||||
#undef yy_init_buffer
|
||||
#endif
|
||||
#ifndef parser__flush_buffer_ALREADY_DEFINED
|
||||
#undef yy_flush_buffer
|
||||
#endif
|
||||
#ifndef parser__load_buffer_state_ALREADY_DEFINED
|
||||
#undef yy_load_buffer_state
|
||||
#endif
|
||||
#ifndef parser__switch_to_buffer_ALREADY_DEFINED
|
||||
#undef yy_switch_to_buffer
|
||||
#endif
|
||||
#ifndef parser_push_buffer_state_ALREADY_DEFINED
|
||||
#undef yypush_buffer_state
|
||||
#endif
|
||||
#ifndef parser_pop_buffer_state_ALREADY_DEFINED
|
||||
#undef yypop_buffer_state
|
||||
#endif
|
||||
#ifndef parser_ensure_buffer_stack_ALREADY_DEFINED
|
||||
#undef yyensure_buffer_stack
|
||||
#endif
|
||||
#ifndef parser_lex_ALREADY_DEFINED
|
||||
#undef yylex
|
||||
#endif
|
||||
#ifndef parser_restart_ALREADY_DEFINED
|
||||
#undef yyrestart
|
||||
#endif
|
||||
#ifndef parser_lex_init_ALREADY_DEFINED
|
||||
#undef yylex_init
|
||||
#endif
|
||||
#ifndef parser_lex_init_extra_ALREADY_DEFINED
|
||||
#undef yylex_init_extra
|
||||
#endif
|
||||
#ifndef parser_lex_destroy_ALREADY_DEFINED
|
||||
#undef yylex_destroy
|
||||
#endif
|
||||
#ifndef parser_get_debug_ALREADY_DEFINED
|
||||
#undef yyget_debug
|
||||
#endif
|
||||
#ifndef parser_set_debug_ALREADY_DEFINED
|
||||
#undef yyset_debug
|
||||
#endif
|
||||
#ifndef parser_get_extra_ALREADY_DEFINED
|
||||
#undef yyget_extra
|
||||
#endif
|
||||
#ifndef parser_set_extra_ALREADY_DEFINED
|
||||
#undef yyset_extra
|
||||
#endif
|
||||
#ifndef parser_get_in_ALREADY_DEFINED
|
||||
#undef yyget_in
|
||||
#endif
|
||||
#ifndef parser_set_in_ALREADY_DEFINED
|
||||
#undef yyset_in
|
||||
#endif
|
||||
#ifndef parser_get_out_ALREADY_DEFINED
|
||||
#undef yyget_out
|
||||
#endif
|
||||
#ifndef parser_set_out_ALREADY_DEFINED
|
||||
#undef yyset_out
|
||||
#endif
|
||||
#ifndef parser_get_leng_ALREADY_DEFINED
|
||||
#undef yyget_leng
|
||||
#endif
|
||||
#ifndef parser_get_text_ALREADY_DEFINED
|
||||
#undef yyget_text
|
||||
#endif
|
||||
#ifndef parser_get_lineno_ALREADY_DEFINED
|
||||
#undef yyget_lineno
|
||||
#endif
|
||||
#ifndef parser_set_lineno_ALREADY_DEFINED
|
||||
#undef yyset_lineno
|
||||
#endif
|
||||
#ifndef parser_get_column_ALREADY_DEFINED
|
||||
#undef yyget_column
|
||||
#endif
|
||||
#ifndef parser_set_column_ALREADY_DEFINED
|
||||
#undef yyset_column
|
||||
#endif
|
||||
#ifndef parser_wrap_ALREADY_DEFINED
|
||||
#undef yywrap
|
||||
#endif
|
||||
#ifndef parser_get_lval_ALREADY_DEFINED
|
||||
#undef yyget_lval
|
||||
#endif
|
||||
#ifndef parser_set_lval_ALREADY_DEFINED
|
||||
#undef yyset_lval
|
||||
#endif
|
||||
#ifndef parser_get_lloc_ALREADY_DEFINED
|
||||
#undef yyget_lloc
|
||||
#endif
|
||||
#ifndef parser_set_lloc_ALREADY_DEFINED
|
||||
#undef yyset_lloc
|
||||
#endif
|
||||
#ifndef parser_alloc_ALREADY_DEFINED
|
||||
#undef yyalloc
|
||||
#endif
|
||||
#ifndef parser_realloc_ALREADY_DEFINED
|
||||
#undef yyrealloc
|
||||
#endif
|
||||
#ifndef parser_free_ALREADY_DEFINED
|
||||
#undef yyfree
|
||||
#endif
|
||||
#ifndef parser_text_ALREADY_DEFINED
|
||||
#undef yytext
|
||||
#endif
|
||||
#ifndef parser_leng_ALREADY_DEFINED
|
||||
#undef yyleng
|
||||
#endif
|
||||
#ifndef parser_in_ALREADY_DEFINED
|
||||
#undef yyin
|
||||
#endif
|
||||
#ifndef parser_out_ALREADY_DEFINED
|
||||
#undef yyout
|
||||
#endif
|
||||
#ifndef parser__flex_debug_ALREADY_DEFINED
|
||||
#undef yy_flex_debug
|
||||
#endif
|
||||
#ifndef parser_lineno_ALREADY_DEFINED
|
||||
#undef yylineno
|
||||
#endif
|
||||
#ifndef parser_tables_fload_ALREADY_DEFINED
|
||||
#undef yytables_fload
|
||||
#endif
|
||||
#ifndef parser_tables_destroy_ALREADY_DEFINED
|
||||
#undef yytables_destroy
|
||||
#endif
|
||||
#ifndef parser_TABLES_NAME_ALREADY_DEFINED
|
||||
#undef yyTABLES_NAME
|
||||
#endif
|
||||
|
||||
#line 239 "parser.l"
|
||||
|
||||
|
||||
#line 697 "parser.yy.h"
|
||||
#undef parser_IN_HEADER
|
||||
#endif /* parser_HEADER_H */
|
|
@ -30,15 +30,17 @@ if(CMAKE_CROSSCOMPILING)
|
|||
include_directories(${REACTOS_SOURCE_DIR}/sdk/include/reactos/wine)
|
||||
endif()
|
||||
|
||||
FLEX_TARGET(pp_scanner ppl.l ${CMAKE_CURRENT_BINARY_DIR}/ppl.yy.c)
|
||||
BISON_TARGET(pp_parser ppy.y ${CMAKE_CURRENT_BINARY_DIR}/ppy.tab.c COMPILE_FLAGS "-p ppy_")
|
||||
ADD_FLEX_BISON_DEPENDENCY(pp_scanner pp_parser)
|
||||
|
||||
list(APPEND SOURCE
|
||||
preproc.c
|
||||
wpp.c
|
||||
ppl.yy.c
|
||||
ppy.tab.c)
|
||||
wpp.c)
|
||||
|
||||
if(CMAKE_CROSSCOMPILING)
|
||||
add_library(wpp ${SOURCE})
|
||||
add_library(wpp ${SOURCE} ${FLEX_pp_scanner_OUTPUT_SOURCE} ${BISON_pp_parser_OUTPUT_SOURCE})
|
||||
else()
|
||||
add_library(wpphost ${SOURCE})
|
||||
add_library(wpphost ${SOURCE} ${FLEX_pp_scanner_OUTPUTS} ${BISON_pp_parser_OUTPUTS})
|
||||
target_link_libraries(wpphost PRIVATE host_includes)
|
||||
endif()
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1,124 +0,0 @@
|
|||
/* A Bison parser, made by GNU Bison 3.0.2. */
|
||||
|
||||
/* Bison interface for Yacc-like parsers in C
|
||||
|
||||
Copyright (C) 1984, 1989-1990, 2000-2013 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 3 of the License, 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, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
/* As a special exception, you may create a larger work that contains
|
||||
part or all of the Bison parser skeleton and distribute that work
|
||||
under terms of your choice, so long as that work isn't itself a
|
||||
parser generator using the skeleton or a modified version thereof
|
||||
as a parser skeleton. Alternatively, if you modify or redistribute
|
||||
the parser skeleton itself, you may (at your option) remove this
|
||||
special exception, which will cause the skeleton and the resulting
|
||||
Bison output files to be licensed under the GNU General Public
|
||||
License without this special exception.
|
||||
|
||||
This special exception was added by the Free Software Foundation in
|
||||
version 2.2 of Bison. */
|
||||
|
||||
#ifndef YY_PPY_PPY_TAB_H_INCLUDED
|
||||
# define YY_PPY_PPY_TAB_H_INCLUDED
|
||||
/* Debug traces. */
|
||||
#ifndef YYDEBUG
|
||||
# define YYDEBUG 0
|
||||
#endif
|
||||
#if YYDEBUG
|
||||
extern int ppy_debug;
|
||||
#endif
|
||||
|
||||
/* Token type. */
|
||||
#ifndef YYTOKENTYPE
|
||||
# define YYTOKENTYPE
|
||||
enum yytokentype
|
||||
{
|
||||
tRCINCLUDE = 258,
|
||||
tIF = 259,
|
||||
tIFDEF = 260,
|
||||
tIFNDEF = 261,
|
||||
tELSE = 262,
|
||||
tELIF = 263,
|
||||
tENDIF = 264,
|
||||
tDEFINED = 265,
|
||||
tNL = 266,
|
||||
tINCLUDE = 267,
|
||||
tLINE = 268,
|
||||
tGCCLINE = 269,
|
||||
tERROR = 270,
|
||||
tWARNING = 271,
|
||||
tPRAGMA = 272,
|
||||
tPPIDENT = 273,
|
||||
tUNDEF = 274,
|
||||
tMACROEND = 275,
|
||||
tCONCAT = 276,
|
||||
tELIPSIS = 277,
|
||||
tSTRINGIZE = 278,
|
||||
tIDENT = 279,
|
||||
tLITERAL = 280,
|
||||
tMACRO = 281,
|
||||
tDEFINE = 282,
|
||||
tDQSTRING = 283,
|
||||
tSQSTRING = 284,
|
||||
tIQSTRING = 285,
|
||||
tUINT = 286,
|
||||
tSINT = 287,
|
||||
tULONG = 288,
|
||||
tSLONG = 289,
|
||||
tULONGLONG = 290,
|
||||
tSLONGLONG = 291,
|
||||
tRCINCLUDEPATH = 292,
|
||||
tLOGOR = 293,
|
||||
tLOGAND = 294,
|
||||
tEQ = 295,
|
||||
tNE = 296,
|
||||
tLTE = 297,
|
||||
tGTE = 298,
|
||||
tLSHIFT = 299,
|
||||
tRSHIFT = 300
|
||||
};
|
||||
#endif
|
||||
|
||||
/* Value type. */
|
||||
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
||||
typedef union YYSTYPE YYSTYPE;
|
||||
union YYSTYPE
|
||||
{
|
||||
#line 126 "ppy.y" /* yacc.c:1909 */
|
||||
|
||||
int sint;
|
||||
unsigned int uint;
|
||||
long slong;
|
||||
unsigned long ulong;
|
||||
wrc_sll_t sll;
|
||||
wrc_ull_t ull;
|
||||
int *iptr;
|
||||
char *cptr;
|
||||
cval_t cval;
|
||||
marg_t *marg;
|
||||
mtext_t *mtext;
|
||||
|
||||
#line 114 "ppy.tab.h" /* yacc.c:1909 */
|
||||
};
|
||||
# define YYSTYPE_IS_TRIVIAL 1
|
||||
# define YYSTYPE_IS_DECLARED 1
|
||||
#endif
|
||||
|
||||
|
||||
extern YYSTYPE ppy_lval;
|
||||
|
||||
int ppy_parse (void);
|
||||
|
||||
#endif /* !YY_PPY_PPY_TAB_H_INCLUDED */
|
Loading…
Add table
Add a link
Reference in a new issue