Blame libcpu/i386_lex.c

Packit Service 97d2fb
Packit Service 97d2fb
#line 3 "i386_lex.c"
Packit Service 97d2fb
Packit Service 97d2fb
#define  YY_INT_ALIGNED short int
Packit Service 97d2fb
Packit Service 97d2fb
/* A lexical scanner generated by flex */
Packit Service 97d2fb
Packit Service 97d2fb
#define yy_create_buffer i386__create_buffer
Packit Service 97d2fb
#define yy_delete_buffer i386__delete_buffer
Packit Service 97d2fb
#define yy_scan_buffer i386__scan_buffer
Packit Service 97d2fb
#define yy_scan_string i386__scan_string
Packit Service 97d2fb
#define yy_scan_bytes i386__scan_bytes
Packit Service 97d2fb
#define yy_init_buffer i386__init_buffer
Packit Service 97d2fb
#define yy_flush_buffer i386__flush_buffer
Packit Service 97d2fb
#define yy_load_buffer_state i386__load_buffer_state
Packit Service 97d2fb
#define yy_switch_to_buffer i386__switch_to_buffer
Packit Service 97d2fb
#define yypush_buffer_state i386_push_buffer_state
Packit Service 97d2fb
#define yypop_buffer_state i386_pop_buffer_state
Packit Service 97d2fb
#define yyensure_buffer_stack i386_ensure_buffer_stack
Packit Service 97d2fb
#define yy_flex_debug i386__flex_debug
Packit Service 97d2fb
#define yyin i386_in
Packit Service 97d2fb
#define yyleng i386_leng
Packit Service 97d2fb
#define yylex i386_lex
Packit Service 97d2fb
#define yylineno i386_lineno
Packit Service 97d2fb
#define yyout i386_out
Packit Service 97d2fb
#define yyrestart i386_restart
Packit Service 97d2fb
#define yytext i386_text
Packit Service 97d2fb
#define yywrap i386_wrap
Packit Service 97d2fb
#define yyalloc i386_alloc
Packit Service 97d2fb
#define yyrealloc i386_realloc
Packit Service 97d2fb
#define yyfree i386_free
Packit Service 97d2fb
Packit Service 97d2fb
#define FLEX_SCANNER
Packit Service 97d2fb
#define YY_FLEX_MAJOR_VERSION 2
Packit Service 97d2fb
#define YY_FLEX_MINOR_VERSION 6
Packit Service 97d2fb
#define YY_FLEX_SUBMINOR_VERSION 4
Packit Service 97d2fb
#if YY_FLEX_SUBMINOR_VERSION > 0
Packit Service 97d2fb
#define FLEX_BETA
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yy_create_buffer
Packit Service 97d2fb
#define i386__create_buffer_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yy_create_buffer i386__create_buffer
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yy_delete_buffer
Packit Service 97d2fb
#define i386__delete_buffer_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yy_delete_buffer i386__delete_buffer
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yy_scan_buffer
Packit Service 97d2fb
#define i386__scan_buffer_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yy_scan_buffer i386__scan_buffer
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yy_scan_string
Packit Service 97d2fb
#define i386__scan_string_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yy_scan_string i386__scan_string
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yy_scan_bytes
Packit Service 97d2fb
#define i386__scan_bytes_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yy_scan_bytes i386__scan_bytes
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yy_init_buffer
Packit Service 97d2fb
#define i386__init_buffer_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yy_init_buffer i386__init_buffer
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yy_flush_buffer
Packit Service 97d2fb
#define i386__flush_buffer_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yy_flush_buffer i386__flush_buffer
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yy_load_buffer_state
Packit Service 97d2fb
#define i386__load_buffer_state_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yy_load_buffer_state i386__load_buffer_state
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yy_switch_to_buffer
Packit Service 97d2fb
#define i386__switch_to_buffer_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yy_switch_to_buffer i386__switch_to_buffer
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yypush_buffer_state
Packit Service 97d2fb
#define i386_push_buffer_state_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yypush_buffer_state i386_push_buffer_state
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yypop_buffer_state
Packit Service 97d2fb
#define i386_pop_buffer_state_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yypop_buffer_state i386_pop_buffer_state
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyensure_buffer_stack
Packit Service 97d2fb
#define i386_ensure_buffer_stack_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyensure_buffer_stack i386_ensure_buffer_stack
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yylex
Packit Service 97d2fb
#define i386_lex_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yylex i386_lex
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyrestart
Packit Service 97d2fb
#define i386_restart_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyrestart i386_restart
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yylex_init
Packit Service 97d2fb
#define i386_lex_init_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yylex_init i386_lex_init
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yylex_init_extra
Packit Service 97d2fb
#define i386_lex_init_extra_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yylex_init_extra i386_lex_init_extra
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yylex_destroy
Packit Service 97d2fb
#define i386_lex_destroy_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yylex_destroy i386_lex_destroy
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyget_debug
Packit Service 97d2fb
#define i386_get_debug_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyget_debug i386_get_debug
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyset_debug
Packit Service 97d2fb
#define i386_set_debug_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyset_debug i386_set_debug
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyget_extra
Packit Service 97d2fb
#define i386_get_extra_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyget_extra i386_get_extra
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyset_extra
Packit Service 97d2fb
#define i386_set_extra_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyset_extra i386_set_extra
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyget_in
Packit Service 97d2fb
#define i386_get_in_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyget_in i386_get_in
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyset_in
Packit Service 97d2fb
#define i386_set_in_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyset_in i386_set_in
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyget_out
Packit Service 97d2fb
#define i386_get_out_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyget_out i386_get_out
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyset_out
Packit Service 97d2fb
#define i386_set_out_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyset_out i386_set_out
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyget_leng
Packit Service 97d2fb
#define i386_get_leng_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyget_leng i386_get_leng
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyget_text
Packit Service 97d2fb
#define i386_get_text_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyget_text i386_get_text
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyget_lineno
Packit Service 97d2fb
#define i386_get_lineno_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyget_lineno i386_get_lineno
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyset_lineno
Packit Service 97d2fb
#define i386_set_lineno_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyset_lineno i386_set_lineno
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yywrap
Packit Service 97d2fb
#define i386_wrap_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yywrap i386_wrap
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyalloc
Packit Service 97d2fb
#define i386_alloc_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyalloc i386_alloc
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyrealloc
Packit Service 97d2fb
#define i386_realloc_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyrealloc i386_realloc
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyfree
Packit Service 97d2fb
#define i386_free_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyfree i386_free
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yytext
Packit Service 97d2fb
#define i386_text_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yytext i386_text
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyleng
Packit Service 97d2fb
#define i386_leng_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyleng i386_leng
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyin
Packit Service 97d2fb
#define i386_in_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyin i386_in
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yyout
Packit Service 97d2fb
#define i386_out_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yyout i386_out
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yy_flex_debug
Packit Service 97d2fb
#define i386__flex_debug_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yy_flex_debug i386__flex_debug
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef yylineno
Packit Service 97d2fb
#define i386_lineno_ALREADY_DEFINED
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yylineno i386_lineno
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
/* First, we deal with  platform-specific or compiler-specific issues. */
Packit Service 97d2fb
Packit Service 97d2fb
/* begin standard C headers. */
Packit Service 97d2fb
#include <stdio.h>
Packit Service 97d2fb
#include <string.h>
Packit Service 97d2fb
#include <errno.h>
Packit Service 97d2fb
#include <stdlib.h>
Packit Service 97d2fb
Packit Service 97d2fb
/* end standard C headers. */
Packit Service 97d2fb
Packit Service 97d2fb
/* flex integer type definitions */
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef FLEXINT_H
Packit Service 97d2fb
#define FLEXINT_H
Packit Service 97d2fb
Packit Service 97d2fb
/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
Packit Service 97d2fb
Packit Service 97d2fb
#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
Packit Service 97d2fb
Packit Service 97d2fb
/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
Packit Service 97d2fb
 * if you want the limit (max/min) macros for int types. 
Packit Service 97d2fb
 */
Packit Service 97d2fb
#ifndef __STDC_LIMIT_MACROS
Packit Service 97d2fb
#define __STDC_LIMIT_MACROS 1
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#include <inttypes.h>
Packit Service 97d2fb
typedef int8_t flex_int8_t;
Packit Service 97d2fb
typedef uint8_t flex_uint8_t;
Packit Service 97d2fb
typedef int16_t flex_int16_t;
Packit Service 97d2fb
typedef uint16_t flex_uint16_t;
Packit Service 97d2fb
typedef int32_t flex_int32_t;
Packit Service 97d2fb
typedef uint32_t flex_uint32_t;
Packit Service 97d2fb
#else
Packit Service 97d2fb
typedef signed char flex_int8_t;
Packit Service 97d2fb
typedef short int flex_int16_t;
Packit Service 97d2fb
typedef int flex_int32_t;
Packit Service 97d2fb
typedef unsigned char flex_uint8_t; 
Packit Service 97d2fb
typedef unsigned short int flex_uint16_t;
Packit Service 97d2fb
typedef unsigned int flex_uint32_t;
Packit Service 97d2fb
Packit Service 97d2fb
/* Limits of integral types. */
Packit Service 97d2fb
#ifndef INT8_MIN
Packit Service 97d2fb
#define INT8_MIN               (-128)
Packit Service 97d2fb
#endif
Packit Service 97d2fb
#ifndef INT16_MIN
Packit Service 97d2fb
#define INT16_MIN              (-32767-1)
Packit Service 97d2fb
#endif
Packit Service 97d2fb
#ifndef INT32_MIN
Packit Service 97d2fb
#define INT32_MIN              (-2147483647-1)
Packit Service 97d2fb
#endif
Packit Service 97d2fb
#ifndef INT8_MAX
Packit Service 97d2fb
#define INT8_MAX               (127)
Packit Service 97d2fb
#endif
Packit Service 97d2fb
#ifndef INT16_MAX
Packit Service 97d2fb
#define INT16_MAX              (32767)
Packit Service 97d2fb
#endif
Packit Service 97d2fb
#ifndef INT32_MAX
Packit Service 97d2fb
#define INT32_MAX              (2147483647)
Packit Service 97d2fb
#endif
Packit Service 97d2fb
#ifndef UINT8_MAX
Packit Service 97d2fb
#define UINT8_MAX              (255U)
Packit Service 97d2fb
#endif
Packit Service 97d2fb
#ifndef UINT16_MAX
Packit Service 97d2fb
#define UINT16_MAX             (65535U)
Packit Service 97d2fb
#endif
Packit Service 97d2fb
#ifndef UINT32_MAX
Packit Service 97d2fb
#define UINT32_MAX             (4294967295U)
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef SIZE_MAX
Packit Service 97d2fb
#define SIZE_MAX               (~(size_t)0)
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#endif /* ! C99 */
Packit Service 97d2fb
Packit Service 97d2fb
#endif /* ! FLEXINT_H */
Packit Service 97d2fb
Packit Service 97d2fb
/* begin standard C++ headers. */
Packit Service 97d2fb
Packit Service 97d2fb
/* TODO: this is always defined, so inline it */
Packit Service 97d2fb
#define yyconst const
Packit Service 97d2fb
Packit Service 97d2fb
#if defined(__GNUC__) && __GNUC__ >= 3
Packit Service 97d2fb
#define yynoreturn __attribute__((__noreturn__))
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define yynoreturn
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
/* Returned upon end-of-file. */
Packit Service 97d2fb
#define YY_NULL 0
Packit Service 97d2fb
Packit Service 97d2fb
/* Promotes a possibly negative, possibly signed char to an
Packit Service 97d2fb
 *   integer in range [0..255] for use as an array index.
Packit Service 97d2fb
 */
Packit Service 97d2fb
#define YY_SC_TO_UI(c) ((YY_CHAR) (c))
Packit Service 97d2fb
Packit Service 97d2fb
/* Enter a start condition.  This macro really ought to take a parameter,
Packit Service 97d2fb
 * but we do it the disgusting crufty way forced on us by the ()-less
Packit Service 97d2fb
 * definition of BEGIN.
Packit Service 97d2fb
 */
Packit Service 97d2fb
#define BEGIN (yy_start) = 1 + 2 *
Packit Service 97d2fb
/* Translate the current start state into a value that can be later handed
Packit Service 97d2fb
 * to BEGIN to return to the state.  The YYSTATE alias is for lex
Packit Service 97d2fb
 * compatibility.
Packit Service 97d2fb
 */
Packit Service 97d2fb
#define YY_START (((yy_start) - 1) / 2)
Packit Service 97d2fb
#define YYSTATE YY_START
Packit Service 97d2fb
/* Action number for EOF rule of a given start state. */
Packit Service 97d2fb
#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
Packit Service 97d2fb
/* Special action meaning "start processing a new file". */
Packit Service 97d2fb
#define YY_NEW_FILE yyrestart( yyin  )
Packit Service 97d2fb
#define YY_END_OF_BUFFER_CHAR 0
Packit Service 97d2fb
Packit Service 97d2fb
/* Size of default input buffer. */
Packit Service 97d2fb
#ifndef YY_BUF_SIZE
Packit Service 97d2fb
#ifdef __ia64__
Packit Service 97d2fb
/* On IA-64, the buffer size is 16k, not 8k.
Packit Service 97d2fb
 * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
Packit Service 97d2fb
 * Ditto for the __ia64__ case accordingly.
Packit Service 97d2fb
 */
Packit Service 97d2fb
#define YY_BUF_SIZE 32768
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define YY_BUF_SIZE 16384
Packit Service 97d2fb
#endif /* __ia64__ */
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
/* The state buf must be large enough to hold one state per character in the main buffer.
Packit Service 97d2fb
 */
Packit Service 97d2fb
#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef YY_TYPEDEF_YY_BUFFER_STATE
Packit Service 97d2fb
#define YY_TYPEDEF_YY_BUFFER_STATE
Packit Service 97d2fb
typedef struct yy_buffer_state *YY_BUFFER_STATE;
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef YY_TYPEDEF_YY_SIZE_T
Packit Service 97d2fb
#define YY_TYPEDEF_YY_SIZE_T
Packit Service 97d2fb
typedef size_t yy_size_t;
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
extern int yyleng;
Packit Service 97d2fb
Packit Service 97d2fb
extern FILE *yyin, *yyout;
Packit Service 97d2fb
Packit Service 97d2fb
#define EOB_ACT_CONTINUE_SCAN 0
Packit Service 97d2fb
#define EOB_ACT_END_OF_FILE 1
Packit Service 97d2fb
#define EOB_ACT_LAST_MATCH 2
Packit Service 97d2fb
    
Packit Service 97d2fb
    /* Note: We specifically omit the test for yy_rule_can_match_eol because it requires
Packit Service 97d2fb
     *       access to the local variable yy_act. Since yyless() is a macro, it would break
Packit Service 97d2fb
     *       existing scanners that call yyless() from OUTSIDE yylex.
Packit Service 97d2fb
     *       One obvious solution it to make yy_act a global. I tried that, and saw
Packit Service 97d2fb
     *       a 5% performance hit in a non-yylineno scanner, because yy_act is
Packit Service 97d2fb
     *       normally declared as a register variable-- so it is not worth it.
Packit Service 97d2fb
     */
Packit Service 97d2fb
    #define  YY_LESS_LINENO(n) \
Packit Service 97d2fb
            do { \
Packit Service 97d2fb
                int yyl;\
Packit Service 97d2fb
                for ( yyl = n; yyl < yyleng; ++yyl )\
Packit Service 97d2fb
                    if ( yytext[yyl] == '\n' )\
Packit Service 97d2fb
                        --yylineno;\
Packit Service 97d2fb
            }while(0)
Packit Service 97d2fb
    #define YY_LINENO_REWIND_TO(dst) \
Packit Service 97d2fb
            do {\
Packit Service 97d2fb
                const char *p;\
Packit Service 97d2fb
                for ( p = yy_cp-1; p >= (dst); --p)\
Packit Service 97d2fb
                    if ( *p == '\n' )\
Packit Service 97d2fb
                        --yylineno;\
Packit Service 97d2fb
            }while(0)
Packit Service 97d2fb
    
Packit Service 97d2fb
/* Return all but the first "n" matched characters back to the input stream. */
Packit Service 97d2fb
#define yyless(n) \
Packit Service 97d2fb
	do \
Packit Service 97d2fb
		{ \
Packit Service 97d2fb
		/* Undo effects of setting up yytext. */ \
Packit Service 97d2fb
        int yyless_macro_arg = (n); \
Packit Service 97d2fb
        YY_LESS_LINENO(yyless_macro_arg);\
Packit Service 97d2fb
		*yy_cp = (yy_hold_char); \
Packit Service 97d2fb
		YY_RESTORE_YY_MORE_OFFSET \
Packit Service 97d2fb
		(yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
Packit Service 97d2fb
		YY_DO_BEFORE_ACTION; /* set up yytext again */ \
Packit Service 97d2fb
		} \
Packit Service 97d2fb
	while ( 0 )
Packit Service 97d2fb
#define unput(c) yyunput( c, (yytext_ptr)  )
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef YY_STRUCT_YY_BUFFER_STATE
Packit Service 97d2fb
#define YY_STRUCT_YY_BUFFER_STATE
Packit Service 97d2fb
struct yy_buffer_state
Packit Service 97d2fb
	{
Packit Service 97d2fb
	FILE *yy_input_file;
Packit Service 97d2fb
Packit Service 97d2fb
	char *yy_ch_buf;		/* input buffer */
Packit Service 97d2fb
	char *yy_buf_pos;		/* current position in input buffer */
Packit Service 97d2fb
Packit Service 97d2fb
	/* Size of input buffer in bytes, not including room for EOB
Packit Service 97d2fb
	 * characters.
Packit Service 97d2fb
	 */
Packit Service 97d2fb
	int yy_buf_size;
Packit Service 97d2fb
Packit Service 97d2fb
	/* Number of characters read into yy_ch_buf, not including EOB
Packit Service 97d2fb
	 * characters.
Packit Service 97d2fb
	 */
Packit Service 97d2fb
	int yy_n_chars;
Packit Service 97d2fb
Packit Service 97d2fb
	/* Whether we "own" the buffer - i.e., we know we created it,
Packit Service 97d2fb
	 * and can realloc() it to grow it, and should free() it to
Packit Service 97d2fb
	 * delete it.
Packit Service 97d2fb
	 */
Packit Service 97d2fb
	int yy_is_our_buffer;
Packit Service 97d2fb
Packit Service 97d2fb
	/* Whether this is an "interactive" input source; if so, and
Packit Service 97d2fb
	 * if we're using stdio for input, then we want to use getc()
Packit Service 97d2fb
	 * instead of fread(), to make sure we stop fetching input after
Packit Service 97d2fb
	 * each newline.
Packit Service 97d2fb
	 */
Packit Service 97d2fb
	int yy_is_interactive;
Packit Service 97d2fb
Packit Service 97d2fb
	/* Whether we're considered to be at the beginning of a line.
Packit Service 97d2fb
	 * If so, '^' rules will be active on the next match, otherwise
Packit Service 97d2fb
	 * not.
Packit Service 97d2fb
	 */
Packit Service 97d2fb
	int yy_at_bol;
Packit Service 97d2fb
Packit Service 97d2fb
    int yy_bs_lineno; /**< The line count. */
Packit Service 97d2fb
    int yy_bs_column; /**< The column count. */
Packit Service 97d2fb
Packit Service 97d2fb
	/* Whether to try to fill the input buffer when we reach the
Packit Service 97d2fb
	 * end of it.
Packit Service 97d2fb
	 */
Packit Service 97d2fb
	int yy_fill_buffer;
Packit Service 97d2fb
Packit Service 97d2fb
	int yy_buffer_status;
Packit Service 97d2fb
Packit Service 97d2fb
#define YY_BUFFER_NEW 0
Packit Service 97d2fb
#define YY_BUFFER_NORMAL 1
Packit Service 97d2fb
	/* When an EOF's been seen but there's still some text to process
Packit Service 97d2fb
	 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
Packit Service 97d2fb
	 * shouldn't try reading from the input source any more.  We might
Packit Service 97d2fb
	 * still have a bunch of tokens to match, though, because of
Packit Service 97d2fb
	 * possible backing-up.
Packit Service 97d2fb
	 *
Packit Service 97d2fb
	 * When we actually see the EOF, we change the status to "new"
Packit Service 97d2fb
	 * (via yyrestart()), so that the user can continue scanning by
Packit Service 97d2fb
	 * just pointing yyin at a new input file.
Packit Service 97d2fb
	 */
Packit Service 97d2fb
#define YY_BUFFER_EOF_PENDING 2
Packit Service 97d2fb
Packit Service 97d2fb
	};
Packit Service 97d2fb
#endif /* !YY_STRUCT_YY_BUFFER_STATE */
Packit Service 97d2fb
Packit Service 97d2fb
/* Stack of input buffers. */
Packit Service 97d2fb
static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
Packit Service 97d2fb
static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
Packit Service 97d2fb
static YY_BUFFER_STATE * yy_buffer_stack = NULL; /**< Stack as an array. */
Packit Service 97d2fb
Packit Service 97d2fb
/* We provide macros for accessing buffer states in case in the
Packit Service 97d2fb
 * future we want to put the buffer states in a more general
Packit Service 97d2fb
 * "scanner state".
Packit Service 97d2fb
 *
Packit Service 97d2fb
 * Returns the top of the stack, or NULL.
Packit Service 97d2fb
 */
Packit Service 97d2fb
#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
Packit Service 97d2fb
                          ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
Packit Service 97d2fb
                          : NULL)
Packit Service 97d2fb
/* Same as previous macro, but useful when we know that the buffer stack is not
Packit Service 97d2fb
 * NULL or when we need an lvalue. For internal use only.
Packit Service 97d2fb
 */
Packit Service 97d2fb
#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
Packit Service 97d2fb
Packit Service 97d2fb
/* yy_hold_char holds the character lost when yytext is formed. */
Packit Service 97d2fb
static char yy_hold_char;
Packit Service 97d2fb
static int yy_n_chars;		/* number of characters read into yy_ch_buf */
Packit Service 97d2fb
int yyleng;
Packit Service 97d2fb
Packit Service 97d2fb
/* Points to current character in buffer. */
Packit Service 97d2fb
static char *yy_c_buf_p = NULL;
Packit Service 97d2fb
static int yy_init = 0;		/* whether we need to initialize */
Packit Service 97d2fb
static int yy_start = 0;	/* start state number */
Packit Service 97d2fb
Packit Service 97d2fb
/* Flag which is used to allow yywrap()'s to do buffer switches
Packit Service 97d2fb
 * instead of setting up a fresh yyin.  A bit of a hack ...
Packit Service 97d2fb
 */
Packit Service 97d2fb
static int yy_did_buffer_switch_on_eof;
Packit Service 97d2fb
Packit Service 97d2fb
void yyrestart ( FILE *input_file  );
Packit Service 97d2fb
void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer  );
Packit Service 97d2fb
YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size  );
Packit Service 97d2fb
void yy_delete_buffer ( YY_BUFFER_STATE b  );
Packit Service 97d2fb
void yy_flush_buffer ( YY_BUFFER_STATE b  );
Packit Service 97d2fb
void yypush_buffer_state ( YY_BUFFER_STATE new_buffer  );
Packit Service 97d2fb
void yypop_buffer_state ( void );
Packit Service 97d2fb
Packit Service 97d2fb
static void yyensure_buffer_stack ( void );
Packit Service 97d2fb
static void yy_load_buffer_state ( void );
Packit Service 97d2fb
static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file  );
Packit Service 97d2fb
#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER )
Packit Service 97d2fb
Packit Service 97d2fb
YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size  );
Packit Service 97d2fb
YY_BUFFER_STATE yy_scan_string ( const char *yy_str  );
Packit Service 97d2fb
YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len  );
Packit Service 97d2fb
Packit Service 97d2fb
void *yyalloc ( yy_size_t  );
Packit Service 97d2fb
void *yyrealloc ( void *, yy_size_t  );
Packit Service 97d2fb
void yyfree ( void *  );
Packit Service 97d2fb
Packit Service 97d2fb
#define yy_new_buffer yy_create_buffer
Packit Service 97d2fb
#define yy_set_interactive(is_interactive) \
Packit Service 97d2fb
	{ \
Packit Service 97d2fb
	if ( ! YY_CURRENT_BUFFER ){ \
Packit Service 97d2fb
        yyensure_buffer_stack (); \
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE =    \
Packit Service 97d2fb
            yy_create_buffer( yyin, YY_BUF_SIZE ); \
Packit Service 97d2fb
	} \
Packit Service 97d2fb
	YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
Packit Service 97d2fb
	}
Packit Service 97d2fb
#define yy_set_bol(at_bol) \
Packit Service 97d2fb
	{ \
Packit Service 97d2fb
	if ( ! YY_CURRENT_BUFFER ){\
Packit Service 97d2fb
        yyensure_buffer_stack (); \
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE =    \
Packit Service 97d2fb
            yy_create_buffer( yyin, YY_BUF_SIZE ); \
Packit Service 97d2fb
	} \
Packit Service 97d2fb
	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
Packit Service 97d2fb
	}
Packit Service 97d2fb
#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
Packit Service 97d2fb
Packit Service 97d2fb
/* Begin user sect3 */
Packit Service 97d2fb
Packit Service 97d2fb
#define i386_wrap() (/*CONSTCOND*/1)
Packit Service 97d2fb
#define YY_SKIP_YYWRAP
Packit Service 97d2fb
typedef flex_uint8_t YY_CHAR;
Packit Service 97d2fb
Packit Service 97d2fb
FILE *yyin = NULL, *yyout = NULL;
Packit Service 97d2fb
Packit Service 97d2fb
typedef int yy_state_type;
Packit Service 97d2fb
Packit Service 97d2fb
extern int yylineno;
Packit Service 97d2fb
int yylineno = 1;
Packit Service 97d2fb
Packit Service 97d2fb
extern char *yytext;
Packit Service 97d2fb
#ifdef yytext_ptr
Packit Service 97d2fb
#undef yytext_ptr
Packit Service 97d2fb
#endif
Packit Service 97d2fb
#define yytext_ptr yytext
Packit Service 97d2fb
Packit Service 97d2fb
static yy_state_type yy_get_previous_state ( void );
Packit Service 97d2fb
static yy_state_type yy_try_NUL_trans ( yy_state_type current_state  );
Packit Service 97d2fb
static int yy_get_next_buffer ( void );
Packit Service 97d2fb
static void yynoreturn yy_fatal_error ( const char* msg  );
Packit Service 97d2fb
Packit Service 97d2fb
/* Done after the current pattern has been matched and before the
Packit Service 97d2fb
 * corresponding action - sets up yytext.
Packit Service 97d2fb
 */
Packit Service 97d2fb
#define YY_DO_BEFORE_ACTION \
Packit Service 97d2fb
	(yytext_ptr) = yy_bp; \
Packit Service 97d2fb
	yyleng = (int) (yy_cp - yy_bp); \
Packit Service 97d2fb
	(yy_hold_char) = *yy_cp; \
Packit Service 97d2fb
	*yy_cp = '\0'; \
Packit Service 97d2fb
	(yy_c_buf_p) = yy_cp;
Packit Service 97d2fb
#define YY_NUM_RULES 21
Packit Service 97d2fb
#define YY_END_OF_BUFFER 22
Packit Service 97d2fb
/* This struct is not used in this scanner,
Packit Service 97d2fb
   but its presence is necessary. */
Packit Service 97d2fb
struct yy_trans_info
Packit Service 97d2fb
	{
Packit Service 97d2fb
	flex_int32_t yy_verify;
Packit Service 97d2fb
	flex_int32_t yy_nxt;
Packit Service 97d2fb
	};
Packit Service 97d2fb
static const flex_int16_t yy_accept[62] =
Packit Service 97d2fb
    {   0,
Packit Service 97d2fb
        0,    0,    0,    0,   22,   20,   17,   15,   20,    5,
Packit Service 97d2fb
       20,   14,   16,   19,   18,   15,   12,    7,    8,   13,
Packit Service 97d2fb
       11,   11,   19,   14,   16,   17,    6,    0,    0,    0,
Packit Service 97d2fb
        5,    0,    9,   18,   11,   11,    0,    0,    0,    0,
Packit Service 97d2fb
       11,    0,    0,    0,    0,   11,    1,    0,    0,    0,
Packit Service 97d2fb
       11,    0,    0,    0,   11,    2,    3,    0,   10,    4,
Packit Service 97d2fb
        0
Packit Service 97d2fb
    } ;
Packit Service 97d2fb
Packit Service 97d2fb
static const YY_CHAR yy_ec[256] =
Packit Service 97d2fb
    {   0,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
Packit Service 97d2fb
        2,    2,    2,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    2,    1,    1,    4,    1,    5,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    6,    1,    1,    7,    8,    9,   10,
Packit Service 97d2fb
       10,   10,   10,   10,   10,   10,   10,   11,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,   12,   13,   13,   14,   13,   13,
Packit Service 97d2fb
       13,   13,   15,   13,   13,   16,   13,   17,   13,   13,
Packit Service 97d2fb
       13,   13,   13,   13,   13,   18,   13,   13,   13,   13,
Packit Service 97d2fb
        1,    1,    1,    1,   13,    1,   19,   13,   13,   13,
Packit Service 97d2fb
Packit Service 97d2fb
       20,   21,   13,   13,   22,   13,   23,   13,   24,   25,
Packit Service 97d2fb
       26,   27,   13,   28,   29,   13,   30,   13,   13,   31,
Packit Service 97d2fb
       32,   13,   33,    1,   34,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
Packit Service 97d2fb
        1,    1,    1,    1,    1
Packit Service 97d2fb
    } ;
Packit Service 97d2fb
Packit Service 97d2fb
static const YY_CHAR yy_meta[35] =
Packit Service 97d2fb
    {   0,
Packit Service 97d2fb
        1,    1,    1,    1,    1,    1,    2,    2,    2,    2,
Packit Service 97d2fb
        3,    2,    2,    2,    2,    2,    2,    2,    2,    2,
Packit Service 97d2fb
        2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
Packit Service 97d2fb
        2,    2,    1,    3
Packit Service 97d2fb
    } ;
Packit Service 97d2fb
Packit Service 97d2fb
static const flex_int16_t yy_base[65] =
Packit Service 97d2fb
    {   0,
Packit Service 97d2fb
        0,   32,   65,    3,  113,  114,    9,   11,   19,    7,
Packit Service 97d2fb
       78,   16,  114,  114,   18,   20,  114,  114,  114,  114,
Packit Service 97d2fb
        0,   94,   76,   23,  114,   25,  114,   90,   80,    0,
Packit Service 97d2fb
       41,   73,  114,   36,    0,   88,   76,   44,   42,   37,
Packit Service 97d2fb
       49,   37,   38,   37,   31,   40,  114,   33,   32,   28,
Packit Service 97d2fb
       37,   16,   14,   12,   17,  114,  114,    5,    0,  114,
Packit Service 97d2fb
      114,   99,  101,    2
Packit Service 97d2fb
    } ;
Packit Service 97d2fb
Packit Service 97d2fb
static const flex_int16_t yy_def[65] =
Packit Service 97d2fb
    {   0,
Packit Service 97d2fb
       62,   62,   61,    3,   61,   61,   61,   61,   61,   61,
Packit Service 97d2fb
       63,   61,   61,   61,   61,   61,   61,   61,   61,   61,
Packit Service 97d2fb
       64,   64,   63,   61,   61,   61,   61,   61,   61,   61,
Packit Service 97d2fb
       61,   63,   61,   61,   64,   64,   61,   61,   61,   61,
Packit Service 97d2fb
       64,   61,   61,   61,   61,   64,   61,   61,   61,   61,
Packit Service 97d2fb
       64,   61,   61,   61,   64,   61,   61,   61,   64,   61,
Packit Service 97d2fb
        0,   61,   61,   61
Packit Service 97d2fb
    } ;
Packit Service 97d2fb
Packit Service 97d2fb
static const flex_int16_t yy_nxt[149] =
Packit Service 97d2fb
    {   0,
Packit Service 97d2fb
       61,    7,    8,   35,    9,   24,   25,   10,   10,   10,
Packit Service 97d2fb
       26,   26,   26,   26,   31,   31,   31,   26,   26,   34,
Packit Service 97d2fb
       34,   34,   34,   27,   34,   34,   26,   26,   60,   39,
Packit Service 97d2fb
       59,   40,   11,    7,   12,   13,    9,   34,   34,   10,
Packit Service 97d2fb
       10,   10,   28,   58,   57,   29,   56,   30,   31,   31,
Packit Service 97d2fb
       31,   55,   54,   53,   52,   51,   50,   49,   48,   47,
Packit Service 97d2fb
       46,   45,   44,   43,   11,   14,   15,   16,   14,   14,
Packit Service 97d2fb
       17,   14,   18,   19,   14,   20,   21,   21,   21,   22,
Packit Service 97d2fb
       21,   21,   21,   21,   21,   21,   21,   21,   21,   21,
Packit Service 97d2fb
       21,   21,   21,   21,   21,   21,   21,   23,   14,    6,
Packit Service 97d2fb
Packit Service 97d2fb
        6,    6,   32,   32,   42,   41,   33,   38,   37,   33,
Packit Service 97d2fb
       36,   33,   61,    5,   61,   61,   61,   61,   61,   61,
Packit Service 97d2fb
       61,   61,   61,   61,   61,   61,   61,   61,   61,   61,
Packit Service 97d2fb
       61,   61,   61,   61,   61,   61,   61,   61,   61,   61,
Packit Service 97d2fb
       61,   61,   61,   61,   61,   61,   61,   61
Packit Service 97d2fb
    } ;
Packit Service 97d2fb
Packit Service 97d2fb
static const flex_int16_t yy_chk[149] =
Packit Service 97d2fb
    {   0,
Packit Service 97d2fb
        0,    1,    1,   64,    1,    4,    4,    1,    1,    1,
Packit Service 97d2fb
        7,    7,    8,    8,   10,   10,   10,   12,   12,   15,
Packit Service 97d2fb
       15,   16,   16,    9,   24,   24,   26,   26,   58,   30,
Packit Service 97d2fb
       55,   30,    1,    2,    2,    2,    2,   34,   34,    2,
Packit Service 97d2fb
        2,    2,    9,   54,   53,    9,   52,    9,   31,   31,
Packit Service 97d2fb
       31,   51,   50,   49,   48,   46,   45,   44,   43,   42,
Packit Service 97d2fb
       41,   40,   39,   38,    2,    3,    3,    3,    3,    3,
Packit Service 97d2fb
        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
Packit Service 97d2fb
        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
Packit Service 97d2fb
        3,    3,    3,    3,    3,    3,    3,    3,    3,   62,
Packit Service 97d2fb
Packit Service 97d2fb
       62,   62,   63,   63,   37,   36,   32,   29,   28,   23,
Packit Service 97d2fb
       22,   11,    5,   61,   61,   61,   61,   61,   61,   61,
Packit Service 97d2fb
       61,   61,   61,   61,   61,   61,   61,   61,   61,   61,
Packit Service 97d2fb
       61,   61,   61,   61,   61,   61,   61,   61,   61,   61,
Packit Service 97d2fb
       61,   61,   61,   61,   61,   61,   61,   61
Packit Service 97d2fb
    } ;
Packit Service 97d2fb
Packit Service 97d2fb
/* Table of booleans, true if rule could match eol. */
Packit Service 97d2fb
static const flex_int32_t yy_rule_can_match_eol[22] =
Packit Service 97d2fb
    {   0,
Packit Service 97d2fb
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 
Packit Service 97d2fb
    0, 0,     };
Packit Service 97d2fb
Packit Service 97d2fb
static yy_state_type yy_last_accepting_state;
Packit Service 97d2fb
static char *yy_last_accepting_cpos;
Packit Service 97d2fb
Packit Service 97d2fb
extern int yy_flex_debug;
Packit Service 97d2fb
int yy_flex_debug = 0;
Packit Service 97d2fb
Packit Service 97d2fb
/* The intent behind this definition is that it'll catch
Packit Service 97d2fb
 * any uses of REJECT which flex missed.
Packit Service 97d2fb
 */
Packit Service 97d2fb
#define REJECT reject_used_but_not_detected
Packit Service 97d2fb
#define yymore() yymore_used_but_not_detected
Packit Service 97d2fb
#define YY_MORE_ADJ 0
Packit Service 97d2fb
#define YY_RESTORE_YY_MORE_OFFSET
Packit Service 97d2fb
char *yytext;
Packit Service 97d2fb
#line 1 "i386_lex.l"
Packit Service 97d2fb
#line 2 "i386_lex.l"
Packit Service 97d2fb
/* Copyright (C) 2004, 2005, 2007, 2008 Red Hat, Inc.
Packit Service 97d2fb
   Written by Ulrich Drepper <drepper@redhat.com>, 2004.
Packit Service 97d2fb
Packit Service 97d2fb
   This file is free software; you can redistribute it and/or modify
Packit Service 97d2fb
   it under the terms of either
Packit Service 97d2fb
Packit Service 97d2fb
     * the GNU Lesser General Public License as published by the Free
Packit Service 97d2fb
       Software Foundation; either version 3 of the License, or (at
Packit Service 97d2fb
       your option) any later version
Packit Service 97d2fb
Packit Service 97d2fb
   or
Packit Service 97d2fb
Packit Service 97d2fb
     * the GNU General Public License as published by the Free
Packit Service 97d2fb
       Software Foundation; either version 2 of the License, or (at
Packit Service 97d2fb
       your option) any later version
Packit Service 97d2fb
Packit Service 97d2fb
   or both in parallel, as here.
Packit Service 97d2fb
Packit Service 97d2fb
   elfutils is distributed in the hope that it will be useful, but
Packit Service 97d2fb
   WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service 97d2fb
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Packit Service 97d2fb
   General Public License for more details.
Packit Service 97d2fb
Packit Service 97d2fb
   You should have received copies of the GNU General Public License and
Packit Service 97d2fb
   the GNU Lesser General Public License along with this program.  If
Packit Service 97d2fb
   not, see <http://www.gnu.org/licenses/>.  */
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef HAVE_CONFIG_H
Packit Service 97d2fb
# include <config.h>
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#include <ctype.h>
Packit Service 97d2fb
#include <libintl.h>
Packit Service 97d2fb
Packit Service 97d2fb
#include <libeu.h>
Packit Service 97d2fb
#include "system.h"
Packit Service 97d2fb
#include "i386_parse.h"
Packit Service 97d2fb
Packit Service 97d2fb
Packit Service 97d2fb
static void eat_to_eol (void);
Packit Service 97d2fb
static void invalid_char (int ch);
Packit Service 97d2fb
#line 821 "i386_lex.c"
Packit Service 97d2fb
Packit Service 97d2fb
#line 823 "i386_lex.c"
Packit Service 97d2fb
Packit Service 97d2fb
#define INITIAL 0
Packit Service 97d2fb
#define MAIN 1
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef YY_NO_UNISTD_H
Packit Service 97d2fb
/* Special case for "unistd.h", since it is non-ANSI. We include it way
Packit Service 97d2fb
 * down here because we want the user's section 1 to have been scanned first.
Packit Service 97d2fb
 * The user has a chance to override it with an option.
Packit Service 97d2fb
 */
Packit Service 97d2fb
#include <unistd.h>
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef YY_EXTRA_TYPE
Packit Service 97d2fb
#define YY_EXTRA_TYPE void *
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
static int yy_init_globals ( void );
Packit Service 97d2fb
Packit Service 97d2fb
/* Accessor methods to globals.
Packit Service 97d2fb
   These are made visible to non-reentrant scanners for convenience. */
Packit Service 97d2fb
Packit Service 97d2fb
int yylex_destroy ( void );
Packit Service 97d2fb
Packit Service 97d2fb
int yyget_debug ( void );
Packit Service 97d2fb
Packit Service 97d2fb
void yyset_debug ( int debug_flag  );
Packit Service 97d2fb
Packit Service 97d2fb
YY_EXTRA_TYPE yyget_extra ( void );
Packit Service 97d2fb
Packit Service 97d2fb
void yyset_extra ( YY_EXTRA_TYPE user_defined  );
Packit Service 97d2fb
Packit Service 97d2fb
FILE *yyget_in ( void );
Packit Service 97d2fb
Packit Service 97d2fb
void yyset_in  ( FILE * _in_str  );
Packit Service 97d2fb
Packit Service 97d2fb
FILE *yyget_out ( void );
Packit Service 97d2fb
Packit Service 97d2fb
void yyset_out  ( FILE * _out_str  );
Packit Service 97d2fb
Packit Service 97d2fb
			int yyget_leng ( void );
Packit Service 97d2fb
Packit Service 97d2fb
char *yyget_text ( void );
Packit Service 97d2fb
Packit Service 97d2fb
int yyget_lineno ( void );
Packit Service 97d2fb
Packit Service 97d2fb
void yyset_lineno ( int _line_number  );
Packit Service 97d2fb
Packit Service 97d2fb
/* Macros after this point can all be overridden by user definitions in
Packit Service 97d2fb
 * section 1.
Packit Service 97d2fb
 */
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef YY_SKIP_YYWRAP
Packit Service 97d2fb
#ifdef __cplusplus
Packit Service 97d2fb
extern "C" int yywrap ( void );
Packit Service 97d2fb
#else
Packit Service 97d2fb
extern int yywrap ( void );
Packit Service 97d2fb
#endif
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef YY_NO_UNPUT
Packit Service 97d2fb
    
Packit Service 97d2fb
    static void yyunput ( int c, char *buf_ptr  );
Packit Service 97d2fb
    
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef yytext_ptr
Packit Service 97d2fb
static void yy_flex_strncpy ( char *, const char *, int );
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef YY_NEED_STRLEN
Packit Service 97d2fb
static int yy_flex_strlen ( const char * );
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef YY_NO_INPUT
Packit Service 97d2fb
#ifdef __cplusplus
Packit Service 97d2fb
static int yyinput ( void );
Packit Service 97d2fb
#else
Packit Service 97d2fb
static int input ( void );
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
/* Amount of stuff to slurp up with each read. */
Packit Service 97d2fb
#ifndef YY_READ_BUF_SIZE
Packit Service 97d2fb
#ifdef __ia64__
Packit Service 97d2fb
/* On IA-64, the buffer size is 16k, not 8k */
Packit Service 97d2fb
#define YY_READ_BUF_SIZE 16384
Packit Service 97d2fb
#else
Packit Service 97d2fb
#define YY_READ_BUF_SIZE 8192
Packit Service 97d2fb
#endif /* __ia64__ */
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
/* Copy whatever the last rule matched to the standard output. */
Packit Service 97d2fb
#ifndef ECHO
Packit Service 97d2fb
/* This used to be an fputs(), but since the string might contain NUL's,
Packit Service 97d2fb
 * we now use fwrite().
Packit Service 97d2fb
 */
Packit Service 97d2fb
#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
/* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
Packit Service 97d2fb
 * is returned in "result".
Packit Service 97d2fb
 */
Packit Service 97d2fb
#ifndef YY_INPUT
Packit Service 97d2fb
#define YY_INPUT(buf,result,max_size) \
Packit Service 97d2fb
	if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
Packit Service 97d2fb
		{ \
Packit Service 97d2fb
		int c = '*'; \
Packit Service 97d2fb
		int n; \
Packit Service 97d2fb
		for ( n = 0; n < max_size && \
Packit Service 97d2fb
			     (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
Packit Service 97d2fb
			buf[n] = (char) c; \
Packit Service 97d2fb
		if ( c == '\n' ) \
Packit Service 97d2fb
			buf[n++] = (char) c; \
Packit Service 97d2fb
		if ( c == EOF && ferror( yyin ) ) \
Packit Service 97d2fb
			YY_FATAL_ERROR( "input in flex scanner failed" ); \
Packit Service 97d2fb
		result = n; \
Packit Service 97d2fb
		} \
Packit Service 97d2fb
	else \
Packit Service 97d2fb
		{ \
Packit Service 97d2fb
		errno=0; \
Packit Service 97d2fb
		while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
Packit Service 97d2fb
			{ \
Packit Service 97d2fb
			if( errno != EINTR) \
Packit Service 97d2fb
				{ \
Packit Service 97d2fb
				YY_FATAL_ERROR( "input in flex scanner failed" ); \
Packit Service 97d2fb
				break; \
Packit Service 97d2fb
				} \
Packit Service 97d2fb
			errno=0; \
Packit Service 97d2fb
			clearerr(yyin); \
Packit Service 97d2fb
			} \
Packit Service 97d2fb
		}\
Packit Service 97d2fb
\
Packit Service 97d2fb
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
/* No semi-colon after return; correct usage is to write "yyterminate();" -
Packit Service 97d2fb
 * we don't want an extra ';' after the "return" because that will cause
Packit Service 97d2fb
 * some compilers to complain about unreachable statements.
Packit Service 97d2fb
 */
Packit Service 97d2fb
#ifndef yyterminate
Packit Service 97d2fb
#define yyterminate() return YY_NULL
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
/* Number of entries by which start-condition stack grows. */
Packit Service 97d2fb
#ifndef YY_START_STACK_INCR
Packit Service 97d2fb
#define YY_START_STACK_INCR 25
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
/* Report a fatal error. */
Packit Service 97d2fb
#ifndef YY_FATAL_ERROR
Packit Service 97d2fb
#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
/* end tables serialization structures and prototypes */
Packit Service 97d2fb
Packit Service 97d2fb
/* Default declaration of generated scanner - a define so the user can
Packit Service 97d2fb
 * easily add parameters.
Packit Service 97d2fb
 */
Packit Service 97d2fb
#ifndef YY_DECL
Packit Service 97d2fb
#define YY_DECL_IS_OURS 1
Packit Service 97d2fb
Packit Service 97d2fb
extern int yylex (void);
Packit Service 97d2fb
Packit Service 97d2fb
#define YY_DECL int yylex (void)
Packit Service 97d2fb
#endif /* !YY_DECL */
Packit Service 97d2fb
Packit Service 97d2fb
/* Code executed at the beginning of each rule, after yytext and yyleng
Packit Service 97d2fb
 * have been set up.
Packit Service 97d2fb
 */
Packit Service 97d2fb
#ifndef YY_USER_ACTION
Packit Service 97d2fb
#define YY_USER_ACTION
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
/* Code executed at the end of each rule. */
Packit Service 97d2fb
#ifndef YY_BREAK
Packit Service 97d2fb
#define YY_BREAK /*LINTED*/break;
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#define YY_RULE_SETUP \
Packit Service 97d2fb
	if ( yyleng > 0 ) \
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \
Packit Service 97d2fb
				(yytext[yyleng - 1] == '\n'); \
Packit Service 97d2fb
	YY_USER_ACTION
Packit Service 97d2fb
Packit Service 97d2fb
/** The main scanner function which does all the work.
Packit Service 97d2fb
 */
Packit Service 97d2fb
YY_DECL
Packit Service 97d2fb
{
Packit Service 97d2fb
	yy_state_type yy_current_state;
Packit Service 97d2fb
	char *yy_cp, *yy_bp;
Packit Service 97d2fb
	int yy_act;
Packit Service 97d2fb
    
Packit Service 97d2fb
	if ( !(yy_init) )
Packit Service 97d2fb
		{
Packit Service 97d2fb
		(yy_init) = 1;
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef YY_USER_INIT
Packit Service 97d2fb
		YY_USER_INIT;
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
		if ( ! (yy_start) )
Packit Service 97d2fb
			(yy_start) = 1;	/* first start state */
Packit Service 97d2fb
Packit Service 97d2fb
		if ( ! yyin )
Packit Service 97d2fb
			yyin = stdin;
Packit Service 97d2fb
Packit Service 97d2fb
		if ( ! yyout )
Packit Service 97d2fb
			yyout = stdout;
Packit Service 97d2fb
Packit Service 97d2fb
		if ( ! YY_CURRENT_BUFFER ) {
Packit Service 97d2fb
			yyensure_buffer_stack ();
Packit Service 97d2fb
			YY_CURRENT_BUFFER_LVALUE =
Packit Service 97d2fb
				yy_create_buffer( yyin, YY_BUF_SIZE );
Packit Service 97d2fb
		}
Packit Service 97d2fb
Packit Service 97d2fb
		yy_load_buffer_state(  );
Packit Service 97d2fb
		}
Packit Service 97d2fb
Packit Service 97d2fb
	{
Packit Service 97d2fb
#line 57 "i386_lex.l"
Packit Service 97d2fb
Packit Service 97d2fb
Packit Service 97d2fb
#line 1047 "i386_lex.c"
Packit Service 97d2fb
Packit Service 97d2fb
	while ( /*CONSTCOND*/1 )		/* loops until end-of-file is reached */
Packit Service 97d2fb
		{
Packit Service 97d2fb
		yy_cp = (yy_c_buf_p);
Packit Service 97d2fb
Packit Service 97d2fb
		/* Support of yytext. */
Packit Service 97d2fb
		*yy_cp = (yy_hold_char);
Packit Service 97d2fb
Packit Service 97d2fb
		/* yy_bp points to the position in yy_ch_buf of the start of
Packit Service 97d2fb
		 * the current run.
Packit Service 97d2fb
		 */
Packit Service 97d2fb
		yy_bp = yy_cp;
Packit Service 97d2fb
Packit Service 97d2fb
		yy_current_state = (yy_start);
Packit Service 97d2fb
		yy_current_state += YY_AT_BOL();
Packit Service 97d2fb
yy_match:
Packit Service 97d2fb
		do
Packit Service 97d2fb
			{
Packit Service 97d2fb
			YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
Packit Service 97d2fb
			if ( yy_accept[yy_current_state] )
Packit Service 97d2fb
				{
Packit Service 97d2fb
				(yy_last_accepting_state) = yy_current_state;
Packit Service 97d2fb
				(yy_last_accepting_cpos) = yy_cp;
Packit Service 97d2fb
				}
Packit Service 97d2fb
			while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
Packit Service 97d2fb
				{
Packit Service 97d2fb
				yy_current_state = (int) yy_def[yy_current_state];
Packit Service 97d2fb
				if ( yy_current_state >= 62 )
Packit Service 97d2fb
					yy_c = yy_meta[yy_c];
Packit Service 97d2fb
				}
Packit Service 97d2fb
			yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
Packit Service 97d2fb
			++yy_cp;
Packit Service 97d2fb
			}
Packit Service 97d2fb
		while ( yy_current_state != 61 );
Packit Service 97d2fb
		yy_cp = (yy_last_accepting_cpos);
Packit Service 97d2fb
		yy_current_state = (yy_last_accepting_state);
Packit Service 97d2fb
Packit Service 97d2fb
yy_find_action:
Packit Service 97d2fb
		yy_act = yy_accept[yy_current_state];
Packit Service 97d2fb
Packit Service 97d2fb
		YY_DO_BEFORE_ACTION;
Packit Service 97d2fb
Packit Service 97d2fb
		if ( yy_act != YY_END_OF_BUFFER && yy_rule_can_match_eol[yy_act] )
Packit Service 97d2fb
			{
Packit Service 97d2fb
			int yyl;
Packit Service 97d2fb
			for ( yyl = 0; yyl < yyleng; ++yyl )
Packit Service 97d2fb
				if ( yytext[yyl] == '\n' )
Packit Service 97d2fb
					
Packit Service 97d2fb
    yylineno++;
Packit Service 97d2fb
;
Packit Service 97d2fb
			}
Packit Service 97d2fb
Packit Service 97d2fb
do_action:	/* This label is used only to access EOF actions. */
Packit Service 97d2fb
Packit Service 97d2fb
		switch ( yy_act )
Packit Service 97d2fb
	{ /* beginning of action switch */
Packit Service 97d2fb
			case 0: /* must back up */
Packit Service 97d2fb
			/* undo the effects of YY_DO_BEFORE_ACTION */
Packit Service 97d2fb
			*yy_cp = (yy_hold_char);
Packit Service 97d2fb
			yy_cp = (yy_last_accepting_cpos);
Packit Service 97d2fb
			yy_current_state = (yy_last_accepting_state);
Packit Service 97d2fb
			goto yy_find_action;
Packit Service 97d2fb
Packit Service 97d2fb
case 1:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 59 "i386_lex.l"
Packit Service 97d2fb
{ return kMASK; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 2:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 61 "i386_lex.l"
Packit Service 97d2fb
{ return kPREFIX; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 3:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 62 "i386_lex.l"
Packit Service 97d2fb
{ return kSUFFIX; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 4:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 64 "i386_lex.l"
Packit Service 97d2fb
{ return kSYNONYM; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 5:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 66 "i386_lex.l"
Packit Service 97d2fb
{ i386_lval.num = strtoul (yytext, NULL, 10);
Packit Service 97d2fb
				  return kNUMBER; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 6:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 69 "i386_lex.l"
Packit Service 97d2fb
{ BEGIN (MAIN); return kPERCPERC; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 7:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 72 "i386_lex.l"
Packit Service 97d2fb
{ return '0'; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 8:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 73 "i386_lex.l"
Packit Service 97d2fb
{ return '1'; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 9:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 75 "i386_lex.l"
Packit Service 97d2fb
{ i386_lval.str = xstrndup (yytext + 1,
Packit Service 97d2fb
							    yyleng - 2);
Packit Service 97d2fb
				  return kBITFIELD; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 10:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 79 "i386_lex.l"
Packit Service 97d2fb
{ i386_lval.str = (void *) -1l;
Packit Service 97d2fb
				  return kID; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 11:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 82 "i386_lex.l"
Packit Service 97d2fb
{ i386_lval.str = xstrndup (yytext, yyleng);
Packit Service 97d2fb
				  return kID; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 12:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 85 "i386_lex.l"
Packit Service 97d2fb
{ return ','; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 13:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 87 "i386_lex.l"
Packit Service 97d2fb
{ return ':'; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 14:
Packit Service 97d2fb
/* rule 14 can match eol */
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 89 "i386_lex.l"
Packit Service 97d2fb
{ /* IGNORE */ }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 15:
Packit Service 97d2fb
/* rule 15 can match eol */
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 91 "i386_lex.l"
Packit Service 97d2fb
{ return '\n'; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 16:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 93 "i386_lex.l"
Packit Service 97d2fb
{ eat_to_eol (); }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 17:
Packit Service 97d2fb
/* rule 17 can match eol */
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 95 "i386_lex.l"
Packit Service 97d2fb
{ /* IGNORE */ }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 18:
Packit Service 97d2fb
/* rule 18 can match eol */
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 97 "i386_lex.l"
Packit Service 97d2fb
{ return kSPACE; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 19:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 99 "i386_lex.l"
Packit Service 97d2fb
{ i386_lval.ch = *yytext; return kCHAR; }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 20:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 101 "i386_lex.l"
Packit Service 97d2fb
{ invalid_char (*yytext); }
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
case 21:
Packit Service 97d2fb
YY_RULE_SETUP
Packit Service 97d2fb
#line 104 "i386_lex.l"
Packit Service 97d2fb
ECHO;
Packit Service 97d2fb
	YY_BREAK
Packit Service 97d2fb
#line 1225 "i386_lex.c"
Packit Service 97d2fb
case YY_STATE_EOF(INITIAL):
Packit Service 97d2fb
case YY_STATE_EOF(MAIN):
Packit Service 97d2fb
	yyterminate();
Packit Service 97d2fb
Packit Service 97d2fb
	case YY_END_OF_BUFFER:
Packit Service 97d2fb
		{
Packit Service 97d2fb
		/* Amount of text matched not including the EOB char. */
Packit Service 97d2fb
		int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
Packit Service 97d2fb
Packit Service 97d2fb
		/* Undo the effects of YY_DO_BEFORE_ACTION. */
Packit Service 97d2fb
		*yy_cp = (yy_hold_char);
Packit Service 97d2fb
		YY_RESTORE_YY_MORE_OFFSET
Packit Service 97d2fb
Packit Service 97d2fb
		if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
Packit Service 97d2fb
			{
Packit Service 97d2fb
			/* We're scanning a new file or input source.  It's
Packit Service 97d2fb
			 * possible that this happened because the user
Packit Service 97d2fb
			 * just pointed yyin at a new source and called
Packit Service 97d2fb
			 * yylex().  If so, then we have to assure
Packit Service 97d2fb
			 * consistency between YY_CURRENT_BUFFER and our
Packit Service 97d2fb
			 * globals.  Here is the right place to do so, because
Packit Service 97d2fb
			 * this is the first action (other than possibly a
Packit Service 97d2fb
			 * back-up) that will match for the new input source.
Packit Service 97d2fb
			 */
Packit Service 97d2fb
			(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
Packit Service 97d2fb
			YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
Packit Service 97d2fb
			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
Packit Service 97d2fb
			}
Packit Service 97d2fb
Packit Service 97d2fb
		/* Note that here we test for yy_c_buf_p "<=" to the position
Packit Service 97d2fb
		 * of the first EOB in the buffer, since yy_c_buf_p will
Packit Service 97d2fb
		 * already have been incremented past the NUL character
Packit Service 97d2fb
		 * (since all states make transitions on EOB to the
Packit Service 97d2fb
		 * end-of-buffer state).  Contrast this with the test
Packit Service 97d2fb
		 * in input().
Packit Service 97d2fb
		 */
Packit Service 97d2fb
		if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
Packit Service 97d2fb
			{ /* This was really a NUL. */
Packit Service 97d2fb
			yy_state_type yy_next_state;
Packit Service 97d2fb
Packit Service 97d2fb
			(yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
Packit Service 97d2fb
Packit Service 97d2fb
			yy_current_state = yy_get_previous_state(  );
Packit Service 97d2fb
Packit Service 97d2fb
			/* Okay, we're now positioned to make the NUL
Packit Service 97d2fb
			 * transition.  We couldn't have
Packit Service 97d2fb
			 * yy_get_previous_state() go ahead and do it
Packit Service 97d2fb
			 * for us because it doesn't know how to deal
Packit Service 97d2fb
			 * with the possibility of jamming (and we don't
Packit Service 97d2fb
			 * want to build jamming into it because then it
Packit Service 97d2fb
			 * will run more slowly).
Packit Service 97d2fb
			 */
Packit Service 97d2fb
Packit Service 97d2fb
			yy_next_state = yy_try_NUL_trans( yy_current_state );
Packit Service 97d2fb
Packit Service 97d2fb
			yy_bp = (yytext_ptr) + YY_MORE_ADJ;
Packit Service 97d2fb
Packit Service 97d2fb
			if ( yy_next_state )
Packit Service 97d2fb
				{
Packit Service 97d2fb
				/* Consume the NUL. */
Packit Service 97d2fb
				yy_cp = ++(yy_c_buf_p);
Packit Service 97d2fb
				yy_current_state = yy_next_state;
Packit Service 97d2fb
				goto yy_match;
Packit Service 97d2fb
				}
Packit Service 97d2fb
Packit Service 97d2fb
			else
Packit Service 97d2fb
				{
Packit Service 97d2fb
				yy_cp = (yy_last_accepting_cpos);
Packit Service 97d2fb
				yy_current_state = (yy_last_accepting_state);
Packit Service 97d2fb
				goto yy_find_action;
Packit Service 97d2fb
				}
Packit Service 97d2fb
			}
Packit Service 97d2fb
Packit Service 97d2fb
		else switch ( yy_get_next_buffer(  ) )
Packit Service 97d2fb
			{
Packit Service 97d2fb
			case EOB_ACT_END_OF_FILE:
Packit Service 97d2fb
				{
Packit Service 97d2fb
				(yy_did_buffer_switch_on_eof) = 0;
Packit Service 97d2fb
Packit Service 97d2fb
				if ( yywrap(  ) )
Packit Service 97d2fb
					{
Packit Service 97d2fb
					/* Note: because we've taken care in
Packit Service 97d2fb
					 * yy_get_next_buffer() to have set up
Packit Service 97d2fb
					 * yytext, we can now set up
Packit Service 97d2fb
					 * yy_c_buf_p so that if some total
Packit Service 97d2fb
					 * hoser (like flex itself) wants to
Packit Service 97d2fb
					 * call the scanner after we return the
Packit Service 97d2fb
					 * YY_NULL, it'll still work - another
Packit Service 97d2fb
					 * YY_NULL will get returned.
Packit Service 97d2fb
					 */
Packit Service 97d2fb
					(yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
Packit Service 97d2fb
Packit Service 97d2fb
					yy_act = YY_STATE_EOF(YY_START);
Packit Service 97d2fb
					goto do_action;
Packit Service 97d2fb
					}
Packit Service 97d2fb
Packit Service 97d2fb
				else
Packit Service 97d2fb
					{
Packit Service 97d2fb
					if ( ! (yy_did_buffer_switch_on_eof) )
Packit Service 97d2fb
						YY_NEW_FILE;
Packit Service 97d2fb
					}
Packit Service 97d2fb
				break;
Packit Service 97d2fb
				}
Packit Service 97d2fb
Packit Service 97d2fb
			case EOB_ACT_CONTINUE_SCAN:
Packit Service 97d2fb
				(yy_c_buf_p) =
Packit Service 97d2fb
					(yytext_ptr) + yy_amount_of_matched_text;
Packit Service 97d2fb
Packit Service 97d2fb
				yy_current_state = yy_get_previous_state(  );
Packit Service 97d2fb
Packit Service 97d2fb
				yy_cp = (yy_c_buf_p);
Packit Service 97d2fb
				yy_bp = (yytext_ptr) + YY_MORE_ADJ;
Packit Service 97d2fb
				goto yy_match;
Packit Service 97d2fb
Packit Service 97d2fb
			case EOB_ACT_LAST_MATCH:
Packit Service 97d2fb
				(yy_c_buf_p) =
Packit Service 97d2fb
				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
Packit Service 97d2fb
Packit Service 97d2fb
				yy_current_state = yy_get_previous_state(  );
Packit Service 97d2fb
Packit Service 97d2fb
				yy_cp = (yy_c_buf_p);
Packit Service 97d2fb
				yy_bp = (yytext_ptr) + YY_MORE_ADJ;
Packit Service 97d2fb
				goto yy_find_action;
Packit Service 97d2fb
			}
Packit Service 97d2fb
		break;
Packit Service 97d2fb
		}
Packit Service 97d2fb
Packit Service 97d2fb
	default:
Packit Service 97d2fb
		YY_FATAL_ERROR(
Packit Service 97d2fb
			"fatal flex scanner internal error--no action found" );
Packit Service 97d2fb
	} /* end of action switch */
Packit Service 97d2fb
		} /* end of scanning one token */
Packit Service 97d2fb
	} /* end of user's declarations */
Packit Service 97d2fb
} /* end of yylex */
Packit Service 97d2fb
Packit Service 97d2fb
/* yy_get_next_buffer - try to read in a new buffer
Packit Service 97d2fb
 *
Packit Service 97d2fb
 * Returns a code representing an action:
Packit Service 97d2fb
 *	EOB_ACT_LAST_MATCH -
Packit Service 97d2fb
 *	EOB_ACT_CONTINUE_SCAN - continue scanning from current position
Packit Service 97d2fb
 *	EOB_ACT_END_OF_FILE - end of file
Packit Service 97d2fb
 */
Packit Service 97d2fb
static int yy_get_next_buffer (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
    	char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
Packit Service 97d2fb
	char *source = (yytext_ptr);
Packit Service 97d2fb
	int number_to_move, i;
Packit Service 97d2fb
	int ret_val;
Packit Service 97d2fb
Packit Service 97d2fb
	if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
Packit Service 97d2fb
		YY_FATAL_ERROR(
Packit Service 97d2fb
		"fatal flex scanner internal error--end of buffer missed" );
Packit Service 97d2fb
Packit Service 97d2fb
	if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
Packit Service 97d2fb
		{ /* Don't try to fill the buffer, so this is an EOF. */
Packit Service 97d2fb
		if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
Packit Service 97d2fb
			{
Packit Service 97d2fb
			/* We matched a single character, the EOB, so
Packit Service 97d2fb
			 * treat this as a final EOF.
Packit Service 97d2fb
			 */
Packit Service 97d2fb
			return EOB_ACT_END_OF_FILE;
Packit Service 97d2fb
			}
Packit Service 97d2fb
Packit Service 97d2fb
		else
Packit Service 97d2fb
			{
Packit Service 97d2fb
			/* We matched some text prior to the EOB, first
Packit Service 97d2fb
			 * process it.
Packit Service 97d2fb
			 */
Packit Service 97d2fb
			return EOB_ACT_LAST_MATCH;
Packit Service 97d2fb
			}
Packit Service 97d2fb
		}
Packit Service 97d2fb
Packit Service 97d2fb
	/* Try to read more data. */
Packit Service 97d2fb
Packit Service 97d2fb
	/* First move last chars to start of buffer. */
Packit Service 97d2fb
	number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1);
Packit Service 97d2fb
Packit Service 97d2fb
	for ( i = 0; i < number_to_move; ++i )
Packit Service 97d2fb
		*(dest++) = *(source++);
Packit Service 97d2fb
Packit Service 97d2fb
	if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
Packit Service 97d2fb
		/* don't do the read, it's not guaranteed to return an EOF,
Packit Service 97d2fb
		 * just force an EOF
Packit Service 97d2fb
		 */
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
Packit Service 97d2fb
Packit Service 97d2fb
	else
Packit Service 97d2fb
		{
Packit Service 97d2fb
			int num_to_read =
Packit Service 97d2fb
			YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
Packit Service 97d2fb
Packit Service 97d2fb
		while ( num_to_read <= 0 )
Packit Service 97d2fb
			{ /* Not enough room in the buffer - grow it. */
Packit Service 97d2fb
Packit Service 97d2fb
			/* just a shorter name for the current buffer */
Packit Service 97d2fb
			YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;
Packit Service 97d2fb
Packit Service 97d2fb
			int yy_c_buf_p_offset =
Packit Service 97d2fb
				(int) ((yy_c_buf_p) - b->yy_ch_buf);
Packit Service 97d2fb
Packit Service 97d2fb
			if ( b->yy_is_our_buffer )
Packit Service 97d2fb
				{
Packit Service 97d2fb
				int new_size = b->yy_buf_size * 2;
Packit Service 97d2fb
Packit Service 97d2fb
				if ( new_size <= 0 )
Packit Service 97d2fb
					b->yy_buf_size += b->yy_buf_size / 8;
Packit Service 97d2fb
				else
Packit Service 97d2fb
					b->yy_buf_size *= 2;
Packit Service 97d2fb
Packit Service 97d2fb
				b->yy_ch_buf = (char *)
Packit Service 97d2fb
					/* Include room in for 2 EOB chars. */
Packit Service 97d2fb
					yyrealloc( (void *) b->yy_ch_buf,
Packit Service 97d2fb
							 (yy_size_t) (b->yy_buf_size + 2)  );
Packit Service 97d2fb
				}
Packit Service 97d2fb
			else
Packit Service 97d2fb
				/* Can't grow it, we don't own it. */
Packit Service 97d2fb
				b->yy_ch_buf = NULL;
Packit Service 97d2fb
Packit Service 97d2fb
			if ( ! b->yy_ch_buf )
Packit Service 97d2fb
				YY_FATAL_ERROR(
Packit Service 97d2fb
				"fatal error - scanner input buffer overflow" );
Packit Service 97d2fb
Packit Service 97d2fb
			(yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
Packit Service 97d2fb
Packit Service 97d2fb
			num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
Packit Service 97d2fb
						number_to_move - 1;
Packit Service 97d2fb
Packit Service 97d2fb
			}
Packit Service 97d2fb
Packit Service 97d2fb
		if ( num_to_read > YY_READ_BUF_SIZE )
Packit Service 97d2fb
			num_to_read = YY_READ_BUF_SIZE;
Packit Service 97d2fb
Packit Service 97d2fb
		/* Read in more data. */
Packit Service 97d2fb
		YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
Packit Service 97d2fb
			(yy_n_chars), num_to_read );
Packit Service 97d2fb
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
Packit Service 97d2fb
		}
Packit Service 97d2fb
Packit Service 97d2fb
	if ( (yy_n_chars) == 0 )
Packit Service 97d2fb
		{
Packit Service 97d2fb
		if ( number_to_move == YY_MORE_ADJ )
Packit Service 97d2fb
			{
Packit Service 97d2fb
			ret_val = EOB_ACT_END_OF_FILE;
Packit Service 97d2fb
			yyrestart( yyin  );
Packit Service 97d2fb
			}
Packit Service 97d2fb
Packit Service 97d2fb
		else
Packit Service 97d2fb
			{
Packit Service 97d2fb
			ret_val = EOB_ACT_LAST_MATCH;
Packit Service 97d2fb
			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
Packit Service 97d2fb
				YY_BUFFER_EOF_PENDING;
Packit Service 97d2fb
			}
Packit Service 97d2fb
		}
Packit Service 97d2fb
Packit Service 97d2fb
	else
Packit Service 97d2fb
		ret_val = EOB_ACT_CONTINUE_SCAN;
Packit Service 97d2fb
Packit Service 97d2fb
	if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
Packit Service 97d2fb
		/* Extend the array by 50%, plus the number we really need. */
Packit Service 97d2fb
		int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc(
Packit Service 97d2fb
			(void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size  );
Packit Service 97d2fb
		if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
Packit Service 97d2fb
			YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
Packit Service 97d2fb
		/* "- 2" to take care of EOB's */
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);
Packit Service 97d2fb
	}
Packit Service 97d2fb
Packit Service 97d2fb
	(yy_n_chars) += number_to_move;
Packit Service 97d2fb
	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
Packit Service 97d2fb
	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
Packit Service 97d2fb
Packit Service 97d2fb
	(yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
Packit Service 97d2fb
Packit Service 97d2fb
	return ret_val;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/* yy_get_previous_state - get the state just before the EOB char was reached */
Packit Service 97d2fb
Packit Service 97d2fb
    static yy_state_type yy_get_previous_state (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
	yy_state_type yy_current_state;
Packit Service 97d2fb
	char *yy_cp;
Packit Service 97d2fb
    
Packit Service 97d2fb
	yy_current_state = (yy_start);
Packit Service 97d2fb
	yy_current_state += YY_AT_BOL();
Packit Service 97d2fb
Packit Service 97d2fb
	for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
Packit Service 97d2fb
		{
Packit Service 97d2fb
		YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
Packit Service 97d2fb
		if ( yy_accept[yy_current_state] )
Packit Service 97d2fb
			{
Packit Service 97d2fb
			(yy_last_accepting_state) = yy_current_state;
Packit Service 97d2fb
			(yy_last_accepting_cpos) = yy_cp;
Packit Service 97d2fb
			}
Packit Service 97d2fb
		while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
Packit Service 97d2fb
			{
Packit Service 97d2fb
			yy_current_state = (int) yy_def[yy_current_state];
Packit Service 97d2fb
			if ( yy_current_state >= 62 )
Packit Service 97d2fb
				yy_c = yy_meta[yy_c];
Packit Service 97d2fb
			}
Packit Service 97d2fb
		yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
Packit Service 97d2fb
		}
Packit Service 97d2fb
Packit Service 97d2fb
	return yy_current_state;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/* yy_try_NUL_trans - try to make a transition on the NUL character
Packit Service 97d2fb
 *
Packit Service 97d2fb
 * synopsis
Packit Service 97d2fb
 *	next_state = yy_try_NUL_trans( current_state );
Packit Service 97d2fb
 */
Packit Service 97d2fb
    static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state )
Packit Service 97d2fb
{
Packit Service 97d2fb
	int yy_is_jam;
Packit Service 97d2fb
    	char *yy_cp = (yy_c_buf_p);
Packit Service 97d2fb
Packit Service 97d2fb
	YY_CHAR yy_c = 1;
Packit Service 97d2fb
	if ( yy_accept[yy_current_state] )
Packit Service 97d2fb
		{
Packit Service 97d2fb
		(yy_last_accepting_state) = yy_current_state;
Packit Service 97d2fb
		(yy_last_accepting_cpos) = yy_cp;
Packit Service 97d2fb
		}
Packit Service 97d2fb
	while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
Packit Service 97d2fb
		{
Packit Service 97d2fb
		yy_current_state = (int) yy_def[yy_current_state];
Packit Service 97d2fb
		if ( yy_current_state >= 62 )
Packit Service 97d2fb
			yy_c = yy_meta[yy_c];
Packit Service 97d2fb
		}
Packit Service 97d2fb
	yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
Packit Service 97d2fb
	yy_is_jam = (yy_current_state == 61);
Packit Service 97d2fb
Packit Service 97d2fb
		return yy_is_jam ? 0 : yy_current_state;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef YY_NO_UNPUT
Packit Service 97d2fb
Packit Service 97d2fb
    static void yyunput (int c, char * yy_bp )
Packit Service 97d2fb
{
Packit Service 97d2fb
	char *yy_cp;
Packit Service 97d2fb
    
Packit Service 97d2fb
    yy_cp = (yy_c_buf_p);
Packit Service 97d2fb
Packit Service 97d2fb
	/* undo effects of setting up yytext */
Packit Service 97d2fb
	*yy_cp = (yy_hold_char);
Packit Service 97d2fb
Packit Service 97d2fb
	if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
Packit Service 97d2fb
		{ /* need to shift things up to make room */
Packit Service 97d2fb
		/* +2 for EOB chars. */
Packit Service 97d2fb
		int number_to_move = (yy_n_chars) + 2;
Packit Service 97d2fb
		char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
Packit Service 97d2fb
					YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
Packit Service 97d2fb
		char *source =
Packit Service 97d2fb
				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
Packit Service 97d2fb
Packit Service 97d2fb
		while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
Packit Service 97d2fb
			*--dest = *--source;
Packit Service 97d2fb
Packit Service 97d2fb
		yy_cp += (int) (dest - source);
Packit Service 97d2fb
		yy_bp += (int) (dest - source);
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE->yy_n_chars =
Packit Service 97d2fb
			(yy_n_chars) = (int) YY_CURRENT_BUFFER_LVALUE->yy_buf_size;
Packit Service 97d2fb
Packit Service 97d2fb
		if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
Packit Service 97d2fb
			YY_FATAL_ERROR( "flex scanner push-back overflow" );
Packit Service 97d2fb
		}
Packit Service 97d2fb
Packit Service 97d2fb
	*--yy_cp = (char) c;
Packit Service 97d2fb
Packit Service 97d2fb
    if ( c == '\n' ){
Packit Service 97d2fb
        --yylineno;
Packit Service 97d2fb
    }
Packit Service 97d2fb
Packit Service 97d2fb
	(yytext_ptr) = yy_bp;
Packit Service 97d2fb
	(yy_hold_char) = *yy_cp;
Packit Service 97d2fb
	(yy_c_buf_p) = yy_cp;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef YY_NO_INPUT
Packit Service 97d2fb
#ifdef __cplusplus
Packit Service 97d2fb
    static int yyinput (void)
Packit Service 97d2fb
#else
Packit Service 97d2fb
    static int input  (void)
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
{
Packit Service 97d2fb
	int c;
Packit Service 97d2fb
    
Packit Service 97d2fb
	*(yy_c_buf_p) = (yy_hold_char);
Packit Service 97d2fb
Packit Service 97d2fb
	if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
Packit Service 97d2fb
		{
Packit Service 97d2fb
		/* yy_c_buf_p now points to the character we want to return.
Packit Service 97d2fb
		 * If this occurs *before* the EOB characters, then it's a
Packit Service 97d2fb
		 * valid NUL; if not, then we've hit the end of the buffer.
Packit Service 97d2fb
		 */
Packit Service 97d2fb
		if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
Packit Service 97d2fb
			/* This was really a NUL. */
Packit Service 97d2fb
			*(yy_c_buf_p) = '\0';
Packit Service 97d2fb
Packit Service 97d2fb
		else
Packit Service 97d2fb
			{ /* need more input */
Packit Service 97d2fb
			int offset = (int) ((yy_c_buf_p) - (yytext_ptr));
Packit Service 97d2fb
			++(yy_c_buf_p);
Packit Service 97d2fb
Packit Service 97d2fb
			switch ( yy_get_next_buffer(  ) )
Packit Service 97d2fb
				{
Packit Service 97d2fb
				case EOB_ACT_LAST_MATCH:
Packit Service 97d2fb
					/* This happens because yy_g_n_b()
Packit Service 97d2fb
					 * sees that we've accumulated a
Packit Service 97d2fb
					 * token and flags that we need to
Packit Service 97d2fb
					 * try matching the token before
Packit Service 97d2fb
					 * proceeding.  But for input(),
Packit Service 97d2fb
					 * there's no matching to consider.
Packit Service 97d2fb
					 * So convert the EOB_ACT_LAST_MATCH
Packit Service 97d2fb
					 * to EOB_ACT_END_OF_FILE.
Packit Service 97d2fb
					 */
Packit Service 97d2fb
Packit Service 97d2fb
					/* Reset buffer status. */
Packit Service 97d2fb
					yyrestart( yyin );
Packit Service 97d2fb
Packit Service 97d2fb
					/*FALLTHROUGH*/
Packit Service 97d2fb
Packit Service 97d2fb
				case EOB_ACT_END_OF_FILE:
Packit Service 97d2fb
					{
Packit Service 97d2fb
					if ( yywrap(  ) )
Packit Service 97d2fb
						return 0;
Packit Service 97d2fb
Packit Service 97d2fb
					if ( ! (yy_did_buffer_switch_on_eof) )
Packit Service 97d2fb
						YY_NEW_FILE;
Packit Service 97d2fb
#ifdef __cplusplus
Packit Service 97d2fb
					return yyinput();
Packit Service 97d2fb
#else
Packit Service 97d2fb
					return input();
Packit Service 97d2fb
#endif
Packit Service 97d2fb
					}
Packit Service 97d2fb
Packit Service 97d2fb
				case EOB_ACT_CONTINUE_SCAN:
Packit Service 97d2fb
					(yy_c_buf_p) = (yytext_ptr) + offset;
Packit Service 97d2fb
					break;
Packit Service 97d2fb
				}
Packit Service 97d2fb
			}
Packit Service 97d2fb
		}
Packit Service 97d2fb
Packit Service 97d2fb
	c = *(unsigned char *) (yy_c_buf_p);	/* cast for 8-bit char's */
Packit Service 97d2fb
	*(yy_c_buf_p) = '\0';	/* preserve yytext */
Packit Service 97d2fb
	(yy_hold_char) = *++(yy_c_buf_p);
Packit Service 97d2fb
Packit Service 97d2fb
	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n');
Packit Service 97d2fb
	if ( YY_CURRENT_BUFFER_LVALUE->yy_at_bol )
Packit Service 97d2fb
		
Packit Service 97d2fb
    yylineno++;
Packit Service 97d2fb
;
Packit Service 97d2fb
Packit Service 97d2fb
	return c;
Packit Service 97d2fb
}
Packit Service 97d2fb
#endif	/* ifndef YY_NO_INPUT */
Packit Service 97d2fb
Packit Service 97d2fb
/** Immediately switch to a different input stream.
Packit Service 97d2fb
 * @param input_file A readable stream.
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 * @note This function does not reset the start condition to @c INITIAL .
Packit Service 97d2fb
 */
Packit Service 97d2fb
    void yyrestart  (FILE * input_file )
Packit Service 97d2fb
{
Packit Service 97d2fb
    
Packit Service 97d2fb
	if ( ! YY_CURRENT_BUFFER ){
Packit Service 97d2fb
        yyensure_buffer_stack ();
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE =
Packit Service 97d2fb
            yy_create_buffer( yyin, YY_BUF_SIZE );
Packit Service 97d2fb
	}
Packit Service 97d2fb
Packit Service 97d2fb
	yy_init_buffer( YY_CURRENT_BUFFER, input_file );
Packit Service 97d2fb
	yy_load_buffer_state(  );
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Switch to a different input buffer.
Packit Service 97d2fb
 * @param new_buffer The new input buffer.
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 */
Packit Service 97d2fb
    void yy_switch_to_buffer  (YY_BUFFER_STATE  new_buffer )
Packit Service 97d2fb
{
Packit Service 97d2fb
    
Packit Service 97d2fb
	/* TODO. We should be able to replace this entire function body
Packit Service 97d2fb
	 * with
Packit Service 97d2fb
	 *		yypop_buffer_state();
Packit Service 97d2fb
	 *		yypush_buffer_state(new_buffer);
Packit Service 97d2fb
     */
Packit Service 97d2fb
	yyensure_buffer_stack ();
Packit Service 97d2fb
	if ( YY_CURRENT_BUFFER == new_buffer )
Packit Service 97d2fb
		return;
Packit Service 97d2fb
Packit Service 97d2fb
	if ( YY_CURRENT_BUFFER )
Packit Service 97d2fb
		{
Packit Service 97d2fb
		/* Flush out information for old buffer. */
Packit Service 97d2fb
		*(yy_c_buf_p) = (yy_hold_char);
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
Packit Service 97d2fb
		}
Packit Service 97d2fb
Packit Service 97d2fb
	YY_CURRENT_BUFFER_LVALUE = new_buffer;
Packit Service 97d2fb
	yy_load_buffer_state(  );
Packit Service 97d2fb
Packit Service 97d2fb
	/* We don't actually know whether we did this switch during
Packit Service 97d2fb
	 * EOF (yywrap()) processing, but the only time this flag
Packit Service 97d2fb
	 * is looked at is after yywrap() is called, so it's safe
Packit Service 97d2fb
	 * to go ahead and always set it.
Packit Service 97d2fb
	 */
Packit Service 97d2fb
	(yy_did_buffer_switch_on_eof) = 1;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
static void yy_load_buffer_state  (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
    	(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
Packit Service 97d2fb
	(yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
Packit Service 97d2fb
	yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
Packit Service 97d2fb
	(yy_hold_char) = *(yy_c_buf_p);
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Allocate and initialize an input buffer state.
Packit Service 97d2fb
 * @param file A readable stream.
Packit Service 97d2fb
 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 * @return the allocated buffer state.
Packit Service 97d2fb
 */
Packit Service 97d2fb
    YY_BUFFER_STATE yy_create_buffer  (FILE * file, int  size )
Packit Service 97d2fb
{
Packit Service 97d2fb
	YY_BUFFER_STATE b;
Packit Service 97d2fb
    
Packit Service 97d2fb
	b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state )  );
Packit Service 97d2fb
	if ( ! b )
Packit Service 97d2fb
		YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
Packit Service 97d2fb
Packit Service 97d2fb
	b->yy_buf_size = size;
Packit Service 97d2fb
Packit Service 97d2fb
	/* yy_ch_buf has to be 2 characters longer than the size given because
Packit Service 97d2fb
	 * we need to put in 2 end-of-buffer characters.
Packit Service 97d2fb
	 */
Packit Service 97d2fb
	b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2)  );
Packit Service 97d2fb
	if ( ! b->yy_ch_buf )
Packit Service 97d2fb
		YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
Packit Service 97d2fb
Packit Service 97d2fb
	b->yy_is_our_buffer = 1;
Packit Service 97d2fb
Packit Service 97d2fb
	yy_init_buffer( b, file );
Packit Service 97d2fb
Packit Service 97d2fb
	return b;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Destroy the buffer.
Packit Service 97d2fb
 * @param b a buffer created with yy_create_buffer()
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 */
Packit Service 97d2fb
    void yy_delete_buffer (YY_BUFFER_STATE  b )
Packit Service 97d2fb
{
Packit Service 97d2fb
    
Packit Service 97d2fb
	if ( ! b )
Packit Service 97d2fb
		return;
Packit Service 97d2fb
Packit Service 97d2fb
	if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
Packit Service 97d2fb
Packit Service 97d2fb
	if ( b->yy_is_our_buffer )
Packit Service 97d2fb
		yyfree( (void *) b->yy_ch_buf  );
Packit Service 97d2fb
Packit Service 97d2fb
	yyfree( (void *) b  );
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/* Initializes or reinitializes a buffer.
Packit Service 97d2fb
 * This function is sometimes called more than once on the same buffer,
Packit Service 97d2fb
 * such as during a yyrestart() or at EOF.
Packit Service 97d2fb
 */
Packit Service 97d2fb
    static void yy_init_buffer  (YY_BUFFER_STATE  b, FILE * file )
Packit Service 97d2fb
Packit Service 97d2fb
{
Packit Service 97d2fb
	int oerrno = errno;
Packit Service 97d2fb
    
Packit Service 97d2fb
	yy_flush_buffer( b );
Packit Service 97d2fb
Packit Service 97d2fb
	b->yy_input_file = file;
Packit Service 97d2fb
	b->yy_fill_buffer = 1;
Packit Service 97d2fb
Packit Service 97d2fb
    /* If b is the current buffer, then yy_init_buffer was _probably_
Packit Service 97d2fb
     * called from yyrestart() or through yy_get_next_buffer.
Packit Service 97d2fb
     * In that case, we don't want to reset the lineno or column.
Packit Service 97d2fb
     */
Packit Service 97d2fb
    if (b != YY_CURRENT_BUFFER){
Packit Service 97d2fb
        b->yy_bs_lineno = 1;
Packit Service 97d2fb
        b->yy_bs_column = 0;
Packit Service 97d2fb
    }
Packit Service 97d2fb
Packit Service 97d2fb
        b->yy_is_interactive = 0;
Packit Service 97d2fb
    
Packit Service 97d2fb
	errno = oerrno;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Discard all buffered characters. On the next scan, YY_INPUT will be called.
Packit Service 97d2fb
 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 */
Packit Service 97d2fb
    void yy_flush_buffer (YY_BUFFER_STATE  b )
Packit Service 97d2fb
{
Packit Service 97d2fb
    	if ( ! b )
Packit Service 97d2fb
		return;
Packit Service 97d2fb
Packit Service 97d2fb
	b->yy_n_chars = 0;
Packit Service 97d2fb
Packit Service 97d2fb
	/* We always need two end-of-buffer characters.  The first causes
Packit Service 97d2fb
	 * a transition to the end-of-buffer state.  The second causes
Packit Service 97d2fb
	 * a jam in that state.
Packit Service 97d2fb
	 */
Packit Service 97d2fb
	b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
Packit Service 97d2fb
	b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
Packit Service 97d2fb
Packit Service 97d2fb
	b->yy_buf_pos = &b->yy_ch_buf[0];
Packit Service 97d2fb
Packit Service 97d2fb
	b->yy_at_bol = 1;
Packit Service 97d2fb
	b->yy_buffer_status = YY_BUFFER_NEW;
Packit Service 97d2fb
Packit Service 97d2fb
	if ( b == YY_CURRENT_BUFFER )
Packit Service 97d2fb
		yy_load_buffer_state(  );
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Pushes the new state onto the stack. The new state becomes
Packit Service 97d2fb
 *  the current state. This function will allocate the stack
Packit Service 97d2fb
 *  if necessary.
Packit Service 97d2fb
 *  @param new_buffer The new state.
Packit Service 97d2fb
 *  
Packit Service 97d2fb
 */
Packit Service 97d2fb
void yypush_buffer_state (YY_BUFFER_STATE new_buffer )
Packit Service 97d2fb
{
Packit Service 97d2fb
    	if (new_buffer == NULL)
Packit Service 97d2fb
		return;
Packit Service 97d2fb
Packit Service 97d2fb
	yyensure_buffer_stack();
Packit Service 97d2fb
Packit Service 97d2fb
	/* This block is copied from yy_switch_to_buffer. */
Packit Service 97d2fb
	if ( YY_CURRENT_BUFFER )
Packit Service 97d2fb
		{
Packit Service 97d2fb
		/* Flush out information for old buffer. */
Packit Service 97d2fb
		*(yy_c_buf_p) = (yy_hold_char);
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
Packit Service 97d2fb
		}
Packit Service 97d2fb
Packit Service 97d2fb
	/* Only push if top exists. Otherwise, replace top. */
Packit Service 97d2fb
	if (YY_CURRENT_BUFFER)
Packit Service 97d2fb
		(yy_buffer_stack_top)++;
Packit Service 97d2fb
	YY_CURRENT_BUFFER_LVALUE = new_buffer;
Packit Service 97d2fb
Packit Service 97d2fb
	/* copied from yy_switch_to_buffer. */
Packit Service 97d2fb
	yy_load_buffer_state(  );
Packit Service 97d2fb
	(yy_did_buffer_switch_on_eof) = 1;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Removes and deletes the top of the stack, if present.
Packit Service 97d2fb
 *  The next element becomes the new top.
Packit Service 97d2fb
 *  
Packit Service 97d2fb
 */
Packit Service 97d2fb
void yypop_buffer_state (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
    	if (!YY_CURRENT_BUFFER)
Packit Service 97d2fb
		return;
Packit Service 97d2fb
Packit Service 97d2fb
	yy_delete_buffer(YY_CURRENT_BUFFER );
Packit Service 97d2fb
	YY_CURRENT_BUFFER_LVALUE = NULL;
Packit Service 97d2fb
	if ((yy_buffer_stack_top) > 0)
Packit Service 97d2fb
		--(yy_buffer_stack_top);
Packit Service 97d2fb
Packit Service 97d2fb
	if (YY_CURRENT_BUFFER) {
Packit Service 97d2fb
		yy_load_buffer_state(  );
Packit Service 97d2fb
		(yy_did_buffer_switch_on_eof) = 1;
Packit Service 97d2fb
	}
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/* Allocates the stack if it does not exist.
Packit Service 97d2fb
 *  Guarantees space for at least one push.
Packit Service 97d2fb
 */
Packit Service 97d2fb
static void yyensure_buffer_stack (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
	yy_size_t num_to_alloc;
Packit Service 97d2fb
    
Packit Service 97d2fb
	if (!(yy_buffer_stack)) {
Packit Service 97d2fb
Packit Service 97d2fb
		/* First allocation is just for 2 elements, since we don't know if this
Packit Service 97d2fb
		 * scanner will even need a stack. We use 2 instead of 1 to avoid an
Packit Service 97d2fb
		 * immediate realloc on the next call.
Packit Service 97d2fb
         */
Packit Service 97d2fb
      num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */
Packit Service 97d2fb
		(yy_buffer_stack) = (struct yy_buffer_state**)yyalloc
Packit Service 97d2fb
								(num_to_alloc * sizeof(struct yy_buffer_state*)
Packit Service 97d2fb
								);
Packit Service 97d2fb
		if ( ! (yy_buffer_stack) )
Packit Service 97d2fb
			YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
Packit Service 97d2fb
Packit Service 97d2fb
		memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
Packit Service 97d2fb
Packit Service 97d2fb
		(yy_buffer_stack_max) = num_to_alloc;
Packit Service 97d2fb
		(yy_buffer_stack_top) = 0;
Packit Service 97d2fb
		return;
Packit Service 97d2fb
	}
Packit Service 97d2fb
Packit Service 97d2fb
	if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
Packit Service 97d2fb
Packit Service 97d2fb
		/* Increase the buffer to prepare for a possible push. */
Packit Service 97d2fb
		yy_size_t grow_size = 8 /* arbitrary grow size */;
Packit Service 97d2fb
Packit Service 97d2fb
		num_to_alloc = (yy_buffer_stack_max) + grow_size;
Packit Service 97d2fb
		(yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc
Packit Service 97d2fb
								((yy_buffer_stack),
Packit Service 97d2fb
								num_to_alloc * sizeof(struct yy_buffer_state*)
Packit Service 97d2fb
								);
Packit Service 97d2fb
		if ( ! (yy_buffer_stack) )
Packit Service 97d2fb
			YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
Packit Service 97d2fb
Packit Service 97d2fb
		/* zero only the new slots.*/
Packit Service 97d2fb
		memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
Packit Service 97d2fb
		(yy_buffer_stack_max) = num_to_alloc;
Packit Service 97d2fb
	}
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Setup the input buffer state to scan directly from a user-specified character buffer.
Packit Service 97d2fb
 * @param base the character buffer
Packit Service 97d2fb
 * @param size the size in bytes of the character buffer
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 * @return the newly allocated buffer state object.
Packit Service 97d2fb
 */
Packit Service 97d2fb
YY_BUFFER_STATE yy_scan_buffer  (char * base, yy_size_t  size )
Packit Service 97d2fb
{
Packit Service 97d2fb
	YY_BUFFER_STATE b;
Packit Service 97d2fb
    
Packit Service 97d2fb
	if ( size < 2 ||
Packit Service 97d2fb
	     base[size-2] != YY_END_OF_BUFFER_CHAR ||
Packit Service 97d2fb
	     base[size-1] != YY_END_OF_BUFFER_CHAR )
Packit Service 97d2fb
		/* They forgot to leave room for the EOB's. */
Packit Service 97d2fb
		return NULL;
Packit Service 97d2fb
Packit Service 97d2fb
	b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state )  );
Packit Service 97d2fb
	if ( ! b )
Packit Service 97d2fb
		YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
Packit Service 97d2fb
Packit Service 97d2fb
	b->yy_buf_size = (int) (size - 2);	/* "- 2" to take care of EOB's */
Packit Service 97d2fb
	b->yy_buf_pos = b->yy_ch_buf = base;
Packit Service 97d2fb
	b->yy_is_our_buffer = 0;
Packit Service 97d2fb
	b->yy_input_file = NULL;
Packit Service 97d2fb
	b->yy_n_chars = b->yy_buf_size;
Packit Service 97d2fb
	b->yy_is_interactive = 0;
Packit Service 97d2fb
	b->yy_at_bol = 1;
Packit Service 97d2fb
	b->yy_fill_buffer = 0;
Packit Service 97d2fb
	b->yy_buffer_status = YY_BUFFER_NEW;
Packit Service 97d2fb
Packit Service 97d2fb
	yy_switch_to_buffer( b  );
Packit Service 97d2fb
Packit Service 97d2fb
	return b;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Setup the input buffer state to scan a string. The next call to yylex() will
Packit Service 97d2fb
 * scan from a @e copy of @a str.
Packit Service 97d2fb
 * @param yystr a NUL-terminated string to scan
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 * @return the newly allocated buffer state object.
Packit Service 97d2fb
 * @note If you want to scan bytes that may contain NUL values, then use
Packit Service 97d2fb
 *       yy_scan_bytes() instead.
Packit Service 97d2fb
 */
Packit Service 97d2fb
YY_BUFFER_STATE yy_scan_string (const char * yystr )
Packit Service 97d2fb
{
Packit Service 97d2fb
    
Packit Service 97d2fb
	return yy_scan_bytes( yystr, (int) strlen(yystr) );
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Setup the input buffer state to scan the given bytes. The next call to yylex() will
Packit Service 97d2fb
 * scan from a @e copy of @a bytes.
Packit Service 97d2fb
 * @param yybytes the byte buffer to scan
Packit Service 97d2fb
 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 * @return the newly allocated buffer state object.
Packit Service 97d2fb
 */
Packit Service 97d2fb
YY_BUFFER_STATE yy_scan_bytes  (const char * yybytes, int  _yybytes_len )
Packit Service 97d2fb
{
Packit Service 97d2fb
	YY_BUFFER_STATE b;
Packit Service 97d2fb
	char *buf;
Packit Service 97d2fb
	yy_size_t n;
Packit Service 97d2fb
	int i;
Packit Service 97d2fb
    
Packit Service 97d2fb
	/* Get memory for full buffer, including space for trailing EOB's. */
Packit Service 97d2fb
	n = (yy_size_t) (_yybytes_len + 2);
Packit Service 97d2fb
	buf = (char *) yyalloc( n  );
Packit Service 97d2fb
	if ( ! buf )
Packit Service 97d2fb
		YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
Packit Service 97d2fb
Packit Service 97d2fb
	for ( i = 0; i < _yybytes_len; ++i )
Packit Service 97d2fb
		buf[i] = yybytes[i];
Packit Service 97d2fb
Packit Service 97d2fb
	buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
Packit Service 97d2fb
Packit Service 97d2fb
	b = yy_scan_buffer( buf, n );
Packit Service 97d2fb
	if ( ! b )
Packit Service 97d2fb
		YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
Packit Service 97d2fb
Packit Service 97d2fb
	/* It's okay to grow etc. this buffer, and we should throw it
Packit Service 97d2fb
	 * away when we're done.
Packit Service 97d2fb
	 */
Packit Service 97d2fb
	b->yy_is_our_buffer = 1;
Packit Service 97d2fb
Packit Service 97d2fb
	return b;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef YY_EXIT_FAILURE
Packit Service 97d2fb
#define YY_EXIT_FAILURE 2
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
static void yynoreturn yy_fatal_error (const char* msg )
Packit Service 97d2fb
{
Packit Service 97d2fb
			fprintf( stderr, "%s\n", msg );
Packit Service 97d2fb
	exit( YY_EXIT_FAILURE );
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/* Redefine yyless() so it works in section 3 code. */
Packit Service 97d2fb
Packit Service 97d2fb
#undef yyless
Packit Service 97d2fb
#define yyless(n) \
Packit Service 97d2fb
	do \
Packit Service 97d2fb
		{ \
Packit Service 97d2fb
		/* Undo effects of setting up yytext. */ \
Packit Service 97d2fb
        int yyless_macro_arg = (n); \
Packit Service 97d2fb
        YY_LESS_LINENO(yyless_macro_arg);\
Packit Service 97d2fb
		yytext[yyleng] = (yy_hold_char); \
Packit Service 97d2fb
		(yy_c_buf_p) = yytext + yyless_macro_arg; \
Packit Service 97d2fb
		(yy_hold_char) = *(yy_c_buf_p); \
Packit Service 97d2fb
		*(yy_c_buf_p) = '\0'; \
Packit Service 97d2fb
		yyleng = yyless_macro_arg; \
Packit Service 97d2fb
		} \
Packit Service 97d2fb
	while ( 0 )
Packit Service 97d2fb
Packit Service 97d2fb
/* Accessor  methods (get/set functions) to struct members. */
Packit Service 97d2fb
Packit Service 97d2fb
/** Get the current line number.
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 */
Packit Service 97d2fb
int yyget_lineno  (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
    
Packit Service 97d2fb
    return yylineno;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Get the input stream.
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 */
Packit Service 97d2fb
FILE *yyget_in  (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
        return yyin;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Get the output stream.
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 */
Packit Service 97d2fb
FILE *yyget_out  (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
        return yyout;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Get the length of the current token.
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 */
Packit Service 97d2fb
int yyget_leng  (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
        return yyleng;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Get the current token.
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 */
Packit Service 97d2fb
Packit Service 97d2fb
char *yyget_text  (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
        return yytext;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Set the current line number.
Packit Service 97d2fb
 * @param _line_number line number
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 */
Packit Service 97d2fb
void yyset_lineno (int  _line_number )
Packit Service 97d2fb
{
Packit Service 97d2fb
    
Packit Service 97d2fb
    yylineno = _line_number;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/** Set the input stream. This does not discard the current
Packit Service 97d2fb
 * input buffer.
Packit Service 97d2fb
 * @param _in_str A readable stream.
Packit Service 97d2fb
 * 
Packit Service 97d2fb
 * @see yy_switch_to_buffer
Packit Service 97d2fb
 */
Packit Service 97d2fb
void yyset_in (FILE *  _in_str )
Packit Service 97d2fb
{
Packit Service 97d2fb
        yyin = _in_str ;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
void yyset_out (FILE *  _out_str )
Packit Service 97d2fb
{
Packit Service 97d2fb
        yyout = _out_str ;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
int yyget_debug  (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
        return yy_flex_debug;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
void yyset_debug (int  _bdebug )
Packit Service 97d2fb
{
Packit Service 97d2fb
        yy_flex_debug = _bdebug ;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
static int yy_init_globals (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
        /* Initialization is the same as for the non-reentrant scanner.
Packit Service 97d2fb
     * This function is called from yylex_destroy(), so don't allocate here.
Packit Service 97d2fb
     */
Packit Service 97d2fb
Packit Service 97d2fb
    /* We do not touch yylineno unless the option is enabled. */
Packit Service 97d2fb
    yylineno =  1;
Packit Service 97d2fb
    
Packit Service 97d2fb
    (yy_buffer_stack) = NULL;
Packit Service 97d2fb
    (yy_buffer_stack_top) = 0;
Packit Service 97d2fb
    (yy_buffer_stack_max) = 0;
Packit Service 97d2fb
    (yy_c_buf_p) = NULL;
Packit Service 97d2fb
    (yy_init) = 0;
Packit Service 97d2fb
    (yy_start) = 0;
Packit Service 97d2fb
Packit Service 97d2fb
/* Defined in main.c */
Packit Service 97d2fb
#ifdef YY_STDINIT
Packit Service 97d2fb
    yyin = stdin;
Packit Service 97d2fb
    yyout = stdout;
Packit Service 97d2fb
#else
Packit Service 97d2fb
    yyin = NULL;
Packit Service 97d2fb
    yyout = NULL;
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
    /* For future reference: Set errno on error, since we are called by
Packit Service 97d2fb
     * yylex_init()
Packit Service 97d2fb
     */
Packit Service 97d2fb
    return 0;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/* yylex_destroy is for both reentrant and non-reentrant scanners. */
Packit Service 97d2fb
int yylex_destroy  (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
    
Packit Service 97d2fb
    /* Pop the buffer stack, destroying each element. */
Packit Service 97d2fb
	while(YY_CURRENT_BUFFER){
Packit Service 97d2fb
		yy_delete_buffer( YY_CURRENT_BUFFER  );
Packit Service 97d2fb
		YY_CURRENT_BUFFER_LVALUE = NULL;
Packit Service 97d2fb
		yypop_buffer_state();
Packit Service 97d2fb
	}
Packit Service 97d2fb
Packit Service 97d2fb
	/* Destroy the stack itself. */
Packit Service 97d2fb
	yyfree((yy_buffer_stack) );
Packit Service 97d2fb
	(yy_buffer_stack) = NULL;
Packit Service 97d2fb
Packit Service 97d2fb
    /* Reset the globals. This is important in a non-reentrant scanner so the next time
Packit Service 97d2fb
     * yylex() is called, initialization will occur. */
Packit Service 97d2fb
    yy_init_globals( );
Packit Service 97d2fb
Packit Service 97d2fb
    return 0;
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
/*
Packit Service 97d2fb
 * Internal utility routines.
Packit Service 97d2fb
 */
Packit Service 97d2fb
Packit Service 97d2fb
#ifndef yytext_ptr
Packit Service 97d2fb
static void yy_flex_strncpy (char* s1, const char * s2, int n )
Packit Service 97d2fb
{
Packit Service 97d2fb
		
Packit Service 97d2fb
	int i;
Packit Service 97d2fb
	for ( i = 0; i < n; ++i )
Packit Service 97d2fb
		s1[i] = s2[i];
Packit Service 97d2fb
}
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
#ifdef YY_NEED_STRLEN
Packit Service 97d2fb
static int yy_flex_strlen (const char * s )
Packit Service 97d2fb
{
Packit Service 97d2fb
	int n;
Packit Service 97d2fb
	for ( n = 0; s[n]; ++n )
Packit Service 97d2fb
		;
Packit Service 97d2fb
Packit Service 97d2fb
	return n;
Packit Service 97d2fb
}
Packit Service 97d2fb
#endif
Packit Service 97d2fb
Packit Service 97d2fb
void *yyalloc (yy_size_t  size )
Packit Service 97d2fb
{
Packit Service 97d2fb
			return malloc(size);
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
void *yyrealloc  (void * ptr, yy_size_t  size )
Packit Service 97d2fb
{
Packit Service 97d2fb
		
Packit Service 97d2fb
	/* The cast to (char *) in the following accommodates both
Packit Service 97d2fb
	 * implementations that use char* generic pointers, and those
Packit Service 97d2fb
	 * that use void* generic pointers.  It works with the latter
Packit Service 97d2fb
	 * because both ANSI C and C++ allow castless assignment from
Packit Service 97d2fb
	 * any pointer type to void*, and deal with argument conversions
Packit Service 97d2fb
	 * as though doing an assignment.
Packit Service 97d2fb
	 */
Packit Service 97d2fb
	return realloc(ptr, size);
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
void yyfree (void * ptr )
Packit Service 97d2fb
{
Packit Service 97d2fb
			free( (char *) ptr );	/* see yyrealloc() for (char *) cast */
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
#define YYTABLES_NAME "yytables"
Packit Service 97d2fb
Packit Service 97d2fb
#line 104 "i386_lex.l"
Packit Service 97d2fb
Packit Service 97d2fb
Packit Service 97d2fb
static void
Packit Service 97d2fb
eat_to_eol (void)
Packit Service 97d2fb
{
Packit Service 97d2fb
  while (1)
Packit Service 97d2fb
    {
Packit Service 97d2fb
      int c = input ();
Packit Service 97d2fb
Packit Service 97d2fb
      if (c == EOF || c == '\n')
Packit Service 97d2fb
	break;
Packit Service 97d2fb
    }
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
static void
Packit Service 97d2fb
invalid_char (int ch)
Packit Service 97d2fb
{
Packit Service 97d2fb
  error (0, 0, (isascii (ch)
Packit Service 97d2fb
		? gettext ("invalid character '%c' at line %d; ignored")
Packit Service 97d2fb
		: gettext ("invalid character '\\%o' at line %d; ignored")),
Packit Service 97d2fb
	 ch, yylineno);
Packit Service 97d2fb
}
Packit Service 97d2fb
Packit Service 97d2fb
// Local Variables:
Packit Service 97d2fb
// mode: C
Packit Service 97d2fb
// End:
Packit Service 97d2fb