#line 16 "preprocessor.l"
#define YY_INT_ALIGNED …
#define FLEX_SCANNER
#define YY_FLEX_MAJOR_VERSION …
#define YY_FLEX_MINOR_VERSION …
#define YY_FLEX_SUBMINOR_VERSION …
#if YY_FLEX_SUBMINOR_VERSION > 0
#define FLEX_BETA
#endif
#ifdef yy_create_buffer
#define pp_create_buffer_ALREADY_DEFINED
#else
#define yy_create_buffer …
#endif
#ifdef yy_delete_buffer
#define pp_delete_buffer_ALREADY_DEFINED
#else
#define yy_delete_buffer …
#endif
#ifdef yy_scan_buffer
#define pp_scan_buffer_ALREADY_DEFINED
#else
#define yy_scan_buffer …
#endif
#ifdef yy_scan_string
#define pp_scan_string_ALREADY_DEFINED
#else
#define yy_scan_string …
#endif
#ifdef yy_scan_bytes
#define pp_scan_bytes_ALREADY_DEFINED
#else
#define yy_scan_bytes …
#endif
#ifdef yy_init_buffer
#define pp_init_buffer_ALREADY_DEFINED
#else
#define yy_init_buffer …
#endif
#ifdef yy_flush_buffer
#define pp_flush_buffer_ALREADY_DEFINED
#else
#define yy_flush_buffer …
#endif
#ifdef yy_load_buffer_state
#define pp_load_buffer_state_ALREADY_DEFINED
#else
#define yy_load_buffer_state …
#endif
#ifdef yy_switch_to_buffer
#define pp_switch_to_buffer_ALREADY_DEFINED
#else
#define yy_switch_to_buffer …
#endif
#ifdef yypush_buffer_state
#define pppush_buffer_state_ALREADY_DEFINED
#else
#define yypush_buffer_state …
#endif
#ifdef yypop_buffer_state
#define pppop_buffer_state_ALREADY_DEFINED
#else
#define yypop_buffer_state …
#endif
#ifdef yyensure_buffer_stack
#define ppensure_buffer_stack_ALREADY_DEFINED
#else
#define yyensure_buffer_stack …
#endif
#ifdef yylex
#define pplex_ALREADY_DEFINED
#else
#define yylex …
#endif
#ifdef yyrestart
#define pprestart_ALREADY_DEFINED
#else
#define yyrestart …
#endif
#ifdef yylex_init
#define pplex_init_ALREADY_DEFINED
#else
#define yylex_init …
#endif
#ifdef yylex_init_extra
#define pplex_init_extra_ALREADY_DEFINED
#else
#define yylex_init_extra …
#endif
#ifdef yylex_destroy
#define pplex_destroy_ALREADY_DEFINED
#else
#define yylex_destroy …
#endif
#ifdef yyget_debug
#define ppget_debug_ALREADY_DEFINED
#else
#define yyget_debug …
#endif
#ifdef yyset_debug
#define ppset_debug_ALREADY_DEFINED
#else
#define yyset_debug …
#endif
#ifdef yyget_extra
#define ppget_extra_ALREADY_DEFINED
#else
#define yyget_extra …
#endif
#ifdef yyset_extra
#define ppset_extra_ALREADY_DEFINED
#else
#define yyset_extra …
#endif
#ifdef yyget_in
#define ppget_in_ALREADY_DEFINED
#else
#define yyget_in …
#endif
#ifdef yyset_in
#define ppset_in_ALREADY_DEFINED
#else
#define yyset_in …
#endif
#ifdef yyget_out
#define ppget_out_ALREADY_DEFINED
#else
#define yyget_out …
#endif
#ifdef yyset_out
#define ppset_out_ALREADY_DEFINED
#else
#define yyset_out …
#endif
#ifdef yyget_leng
#define ppget_leng_ALREADY_DEFINED
#else
#define yyget_leng …
#endif
#ifdef yyget_text
#define ppget_text_ALREADY_DEFINED
#else
#define yyget_text …
#endif
#ifdef yyget_lineno
#define ppget_lineno_ALREADY_DEFINED
#else
#define yyget_lineno …
#endif
#ifdef yyset_lineno
#define ppset_lineno_ALREADY_DEFINED
#else
#define yyset_lineno …
#endif
#ifdef yyget_column
#define ppget_column_ALREADY_DEFINED
#else
#define yyget_column …
#endif
#ifdef yyset_column
#define ppset_column_ALREADY_DEFINED
#else
#define yyset_column …
#endif
#ifdef yywrap
#define ppwrap_ALREADY_DEFINED
#else
#define yywrap …
#endif
#ifdef yyget_lval
#define ppget_lval_ALREADY_DEFINED
#else
#define yyget_lval …
#endif
#ifdef yyset_lval
#define ppset_lval_ALREADY_DEFINED
#else
#define yyset_lval …
#endif
#ifdef yyget_lloc
#define ppget_lloc_ALREADY_DEFINED
#else
#define yyget_lloc …
#endif
#ifdef yyset_lloc
#define ppset_lloc_ALREADY_DEFINED
#else
#define yyset_lloc …
#endif
#ifdef yyalloc
#define ppalloc_ALREADY_DEFINED
#else
#define yyalloc …
#endif
#ifdef yyrealloc
#define pprealloc_ALREADY_DEFINED
#else
#define yyrealloc …
#endif
#ifdef yyfree
#define ppfree_ALREADY_DEFINED
#else
#define yyfree …
#endif
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#ifndef FLEXINT_H
#define FLEXINT_H
# if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
# ifndef __STDC_LIMIT_MACROS
#define __STDC_LIMIT_MACROS …
# endif
# include <inttypes.h>
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
flex_int8_t;
flex_int16_t;
flex_int32_t;
flex_uint8_t;
flex_uint16_t;
flex_uint32_t;
# ifndef INT8_MIN
#define INT8_MIN …
# endif
# ifndef INT16_MIN
#define INT16_MIN …
# endif
# ifndef INT32_MIN
#define INT32_MIN …
# endif
# ifndef INT8_MAX
#define INT8_MAX …
# endif
# ifndef INT16_MAX
#define INT16_MAX …
# endif
# ifndef INT32_MAX
#define INT32_MAX …
# endif
# ifndef UINT8_MAX
#define UINT8_MAX …
# endif
# ifndef UINT16_MAX
#define UINT16_MAX …
# endif
# ifndef UINT32_MAX
#define UINT32_MAX …
# endif
# ifndef SIZE_MAX
#define SIZE_MAX …
# endif
# endif
#endif
#define yyconst …
#if defined(__GNUC__) && __GNUC__ >= 3
#define yynoreturn …
#else
#define yynoreturn
#endif
#define YY_NULL …
#define YY_SC_TO_UI(c) …
#ifndef YY_TYPEDEF_YY_SCANNER_T
#define YY_TYPEDEF_YY_SCANNER_T
yyscan_t;
#endif
#define yyin …
#define yyout …
#define yyextra …
#define yyleng …
#define yytext …
#define yylineno …
#define yycolumn …
#define yy_flex_debug …
#define BEGIN …
#define YY_START …
#define YYSTATE …
#define YY_STATE_EOF(state) …
#define YY_NEW_FILE …
#define YY_END_OF_BUFFER_CHAR …
#ifndef YY_BUF_SIZE
# ifdef __ia64__
#define YY_BUF_SIZE …
# else
#define YY_BUF_SIZE …
# endif
#endif
#define YY_STATE_BUF_SIZE …
#ifndef YY_TYPEDEF_YY_BUFFER_STATE
#define YY_TYPEDEF_YY_BUFFER_STATE
YY_BUFFER_STATE;
#endif
#ifndef YY_TYPEDEF_YY_SIZE_T
#define YY_TYPEDEF_YY_SIZE_T
yy_size_t;
#endif
#define EOB_ACT_CONTINUE_SCAN …
#define EOB_ACT_END_OF_FILE …
#define EOB_ACT_LAST_MATCH …
#define YY_LESS_LINENO(n) …
#define YY_LINENO_REWIND_TO(ptr) …
#define yyless(n) …
#define unput(c) …
#ifndef YY_STRUCT_YY_BUFFER_STATE
#define YY_STRUCT_YY_BUFFER_STATE
struct yy_buffer_state
{ … };
#endif
#define YY_CURRENT_BUFFER …
#define YY_CURRENT_BUFFER_LVALUE …
void yyrestart(FILE *input_file, yyscan_t yyscanner);
void yy_switch_to_buffer(YY_BUFFER_STATE new_buffer, yyscan_t yyscanner);
YY_BUFFER_STATE yy_create_buffer(FILE *file, int size, yyscan_t yyscanner);
void yy_delete_buffer(YY_BUFFER_STATE b, yyscan_t yyscanner);
void yy_flush_buffer(YY_BUFFER_STATE b, yyscan_t yyscanner);
void yypush_buffer_state(YY_BUFFER_STATE new_buffer, yyscan_t yyscanner);
void yypop_buffer_state(yyscan_t yyscanner);
static void yyensure_buffer_stack(yyscan_t yyscanner);
static void yy_load_buffer_state(yyscan_t yyscanner);
static void yy_init_buffer(YY_BUFFER_STATE b, FILE *file, yyscan_t yyscanner);
#define YY_FLUSH_BUFFER …
YY_BUFFER_STATE yy_scan_buffer(char *base, yy_size_t size, yyscan_t yyscanner);
YY_BUFFER_STATE yy_scan_string(const char *yy_str, yyscan_t yyscanner);
YY_BUFFER_STATE yy_scan_bytes(const char *bytes, int len, yyscan_t yyscanner);
void *yyalloc(yy_size_t, yyscan_t yyscanner);
void *yyrealloc(void *, yy_size_t, yyscan_t yyscanner);
void yyfree(void *, yyscan_t yyscanner);
#define yy_new_buffer …
#define yy_set_interactive(is_interactive) …
#define yy_set_bol(at_bol) …
#define YY_AT_BOL() …
#define ppwrap(yyscanner) …
#define YY_SKIP_YYWRAP
YY_CHAR;
yy_state_type;
#define yytext_ptr …
static yy_state_type yy_get_previous_state(yyscan_t yyscanner);
static yy_state_type yy_try_NUL_trans(yy_state_type current_state, yyscan_t yyscanner);
static int yy_get_next_buffer(yyscan_t yyscanner);
static void yynoreturn yy_fatal_error(const char *msg, yyscan_t yyscanner);
#define YY_DO_BEFORE_ACTION …
#define YY_NUM_RULES …
#define YY_END_OF_BUFFER …
struct yy_trans_info
{ … };
static const flex_int16_t yy_accept[95] = …;
static const YY_CHAR yy_ec[256] = …;
static const YY_CHAR yy_meta[29] = …;
static const flex_int16_t yy_base[100] = …;
static const flex_int16_t yy_def[100] = …;
static const flex_int16_t yy_nxt[224] = …;
static const flex_int16_t yy_chk[224] = …;
#define REJECT …
#define yymore() …
#define YY_MORE_ADJ …
#define YY_RESTORE_YY_MORE_OFFSET
#if defined(_MSC_VER)
# pragma warning(disable : 4005)
#endif
#include "compiler/preprocessor/Tokenizer.h"
#include "compiler/preprocessor/DiagnosticsBase.h"
#include "compiler/preprocessor/Token.h"
#if defined(__GNUC__)
# pragma GCC diagnostic ignored "-Wmissing-noreturn"
#elif defined(_MSC_VER)
# pragma warning(disable : 4244)
#endif
#if defined(__clang__)
# pragma clang diagnostic ignored "-Wimplicit-fallthrough"
# if defined(__APPLE__)
# pragma clang diagnostic ignored "-Wunknown-warning-option"
# endif
# pragma clang diagnostic ignored "-Wextra-semi-stmt"
# pragma clang diagnostic ignored "-Wunreachable-code"
#endif
#ifdef __cplusplus
# if __cplusplus > 199711L
# define register
# endif
#endif
YYSTYPE;
YYLTYPE;
#define yyfileno …
#define YY_USER_INIT …
#define YY_NO_INPUT
#define YY_USER_ACTION …
#define YY_INPUT(buf, result, maxSize) …
#define INITIAL …
#define COMMENT …
#define YY_EXTRA_TYPE …
struct yyguts_t
{ … };
static int yy_init_globals(yyscan_t yyscanner);
#define yylval …
#define yylloc …
int yylex_init(yyscan_t *scanner);
int yylex_init_extra(YY_EXTRA_TYPE user_defined, yyscan_t *scanner);
int yylex_destroy(yyscan_t yyscanner);
int yyget_debug(yyscan_t yyscanner);
void yyset_debug(int debug_flag, yyscan_t yyscanner);
YY_EXTRA_TYPE yyget_extra(yyscan_t yyscanner);
void yyset_extra(YY_EXTRA_TYPE user_defined, yyscan_t yyscanner);
FILE *yyget_in(yyscan_t yyscanner);
void yyset_in(FILE *_in_str, yyscan_t yyscanner);
FILE *yyget_out(yyscan_t yyscanner);
void yyset_out(FILE *_out_str, yyscan_t yyscanner);
int yyget_leng(yyscan_t yyscanner);
char *yyget_text(yyscan_t yyscanner);
int yyget_lineno(yyscan_t yyscanner);
void yyset_lineno(int _line_number, yyscan_t yyscanner);
int yyget_column(yyscan_t yyscanner);
void yyset_column(int _column_no, yyscan_t yyscanner);
YYSTYPE *yyget_lval(yyscan_t yyscanner);
void yyset_lval(YYSTYPE *yylval_param, yyscan_t yyscanner);
YYLTYPE *yyget_lloc(yyscan_t yyscanner);
void yyset_lloc(YYLTYPE *yylloc_param, yyscan_t yyscanner);
#ifndef YY_SKIP_YYWRAP
# ifdef __cplusplus
extern "C" int yywrap(yyscan_t yyscanner);
# else
extern int yywrap(yyscan_t yyscanner);
# endif
#endif
#ifndef YY_NO_UNPUT
#endif
#ifndef yytext_ptr
static void yy_flex_strncpy(char *, const char *, int, yyscan_t yyscanner);
#endif
#ifdef YY_NEED_STRLEN
static int yy_flex_strlen(const char *, yyscan_t yyscanner);
#endif
#ifndef YY_NO_INPUT
# ifdef __cplusplus
static int yyinput(yyscan_t yyscanner);
# else
static int input(yyscan_t yyscanner);
# endif
#endif
#ifndef YY_READ_BUF_SIZE
# ifdef __ia64__
#define YY_READ_BUF_SIZE …
# else
#define YY_READ_BUF_SIZE …
# endif
#endif
#ifndef ECHO
#define ECHO …
#endif
#ifndef YY_INPUT
#define YY_INPUT …
#endif
#ifndef yyterminate
#define yyterminate() …
#endif
#ifndef YY_START_STACK_INCR
#define YY_START_STACK_INCR …
#endif
#ifndef YY_FATAL_ERROR
#define YY_FATAL_ERROR(msg) …
#endif
#ifndef YY_DECL
#define YY_DECL_IS_OURS …
extern int yylex(YYSTYPE *yylval_param, YYLTYPE *yylloc_param, yyscan_t yyscanner);
#define YY_DECL …
#endif
#ifndef YY_USER_ACTION
#define YY_USER_ACTION
#endif
#ifndef YY_BREAK
#define YY_BREAK …
#endif
#define YY_RULE_SETUP …
YY_DECL
{ … }
static int yy_get_next_buffer(yyscan_t yyscanner)
{ … }
static yy_state_type yy_get_previous_state(yyscan_t yyscanner)
{ … }
static yy_state_type yy_try_NUL_trans(yy_state_type yy_current_state, yyscan_t yyscanner)
{ … }
#ifndef YY_NO_UNPUT
#endif
#ifndef YY_NO_INPUT
# ifdef __cplusplus
static int yyinput(yyscan_t yyscanner)
# else
static int input(yyscan_t yyscanner)
# endif
{
int c;
struct yyguts_t *yyg = (struct yyguts_t *)yyscanner;
*yyg->yy_c_buf_p = yyg->yy_hold_char;
if (*yyg->yy_c_buf_p == YY_END_OF_BUFFER_CHAR)
{
if (yyg->yy_c_buf_p < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars])
*yyg->yy_c_buf_p = '\0';
else
{
int offset = (int)(yyg->yy_c_buf_p - yyg->yytext_ptr);
++yyg->yy_c_buf_p;
switch (yy_get_next_buffer(yyscanner))
{
case EOB_ACT_LAST_MATCH:
yyrestart(yyin, yyscanner);
case EOB_ACT_END_OF_FILE:
{
if (yywrap(yyscanner))
return 0;
if (!yyg->yy_did_buffer_switch_on_eof)
YY_NEW_FILE;
# ifdef __cplusplus
return yyinput(yyscanner);
# else
return input(yyscanner);
# endif
}
case EOB_ACT_CONTINUE_SCAN:
yyg->yy_c_buf_p = yyg->yytext_ptr + offset;
break;
}
}
}
c = *(unsigned char *)yyg->yy_c_buf_p;
*yyg->yy_c_buf_p = '\0';
yyg->yy_hold_char = *++yyg->yy_c_buf_p;
return c;
}
#endif
void yyrestart(FILE *input_file, yyscan_t yyscanner)
{ … }
void yy_switch_to_buffer(YY_BUFFER_STATE new_buffer, yyscan_t yyscanner)
{ … }
static void yy_load_buffer_state(yyscan_t yyscanner)
{ … }
YY_BUFFER_STATE yy_create_buffer(FILE *file, int size, yyscan_t yyscanner)
{ … }
void yy_delete_buffer(YY_BUFFER_STATE b, yyscan_t yyscanner)
{ … }
static void yy_init_buffer(YY_BUFFER_STATE b, FILE *file, yyscan_t yyscanner)
{ … }
void yy_flush_buffer(YY_BUFFER_STATE b, yyscan_t yyscanner)
{ … }
void yypush_buffer_state(YY_BUFFER_STATE new_buffer, yyscan_t yyscanner)
{ … }
void yypop_buffer_state(yyscan_t yyscanner)
{ … }
static void yyensure_buffer_stack(yyscan_t yyscanner)
{ … }
YY_BUFFER_STATE yy_scan_buffer(char *base, yy_size_t size, yyscan_t yyscanner)
{ … }
YY_BUFFER_STATE yy_scan_string(const char *yystr, yyscan_t yyscanner)
{ … }
YY_BUFFER_STATE yy_scan_bytes(const char *yybytes, int _yybytes_len, yyscan_t yyscanner)
{ … }
#ifndef YY_EXIT_FAILURE
#define YY_EXIT_FAILURE …
#endif
static void yynoreturn yy_fatal_error(const char *msg, yyscan_t yyscanner)
{ … }
#undef yyless
#define yyless(n) …
YY_EXTRA_TYPE yyget_extra(yyscan_t yyscanner)
{ … }
int yyget_lineno(yyscan_t yyscanner)
{ … }
int yyget_column(yyscan_t yyscanner)
{ … }
FILE *yyget_in(yyscan_t yyscanner)
{ … }
FILE *yyget_out(yyscan_t yyscanner)
{ … }
int yyget_leng(yyscan_t yyscanner)
{ … }
char *yyget_text(yyscan_t yyscanner)
{ … }
void yyset_extra(YY_EXTRA_TYPE user_defined, yyscan_t yyscanner)
{ … }
void yyset_lineno(int _line_number, yyscan_t yyscanner)
{ … }
void yyset_column(int _column_no, yyscan_t yyscanner)
{ … }
void yyset_in(FILE *_in_str, yyscan_t yyscanner)
{ … }
void yyset_out(FILE *_out_str, yyscan_t yyscanner)
{ … }
int yyget_debug(yyscan_t yyscanner)
{ … }
void yyset_debug(int _bdebug, yyscan_t yyscanner)
{ … }
YYSTYPE *yyget_lval(yyscan_t yyscanner)
{ … }
void yyset_lval(YYSTYPE *yylval_param, yyscan_t yyscanner)
{ … }
YYLTYPE *yyget_lloc(yyscan_t yyscanner)
{ … }
void yyset_lloc(YYLTYPE *yylloc_param, yyscan_t yyscanner)
{ … }
int yylex_init(yyscan_t *ptr_yy_globals)
{ … }
int yylex_init_extra(YY_EXTRA_TYPE yy_user_defined, yyscan_t *ptr_yy_globals)
{ … }
static int yy_init_globals(yyscan_t yyscanner)
{ … }
int yylex_destroy(yyscan_t yyscanner)
{ … }
#ifndef yytext_ptr
static void yy_flex_strncpy(char *s1, const char *s2, int n, yyscan_t yyscanner)
{
struct yyguts_t *yyg = (struct yyguts_t *)yyscanner;
(void)yyg;
int i;
for (i = 0; i < n; ++i)
s1[i] = s2[i];
}
#endif
#ifdef YY_NEED_STRLEN
static int yy_flex_strlen(const char *s, yyscan_t yyscanner)
{
int n;
for (n = 0; s[n]; ++n)
;
return n;
}
#endif
void *yyalloc(yy_size_t size, yyscan_t yyscanner)
{ … }
void *yyrealloc(void *ptr, yy_size_t size, yyscan_t yyscanner)
{ … }
void yyfree(void *ptr, yyscan_t yyscanner)
{ … }
#define YYTABLES_NAME …
namespace angle
{
namespace pp
{
Tokenizer::Tokenizer(Diagnostics *diagnostics) : … { … }
Tokenizer::~Tokenizer()
{ … }
bool Tokenizer::init(size_t count, const char *const string[], const int length[])
{ … }
void Tokenizer::setFileNumber(int file)
{ … }
void Tokenizer::setLineNumber(int line)
{ … }
void Tokenizer::setMaxTokenSize(size_t maxTokenSize)
{ … }
void Tokenizer::lex(Token *token)
{ … }
bool Tokenizer::initScanner()
{ … }
void Tokenizer::destroyScanner()
{ … }
}
}