/*
* Automatically generated from the files:
* /mnt/gmirror/ports/lang/TenDRA/work/tendra/src/producers/cpp/../common/parse/psyntax.sid
* and
* /mnt/gmirror/ports/lang/TenDRA/work/tendra/src/producers/cpp/../common/parse/psyntax.act
* by:
* /mnt/gmirror/ports/lang/TenDRA/work/tendra/obj/utilities/sid/sid
*/
/* BEGINNING OF HEADER */
#define __SID_SPLIT
/*
* Crown Copyright (c) 1997, 1998
*
* This TenDRA(r) Computer Program is subject to Copyright
* owned by the United Kingdom Secretary of State for Defence
* acting through the Defence Evaluation and Research Agency
* (DERA). It is made available to Recipients with a
* royalty-free licence for its use, reproduction, transfer
* to other parties and amendment for any purpose not excluding
* product development provided that any such use et cetera
* shall be deemed to be acceptance of the following conditions:-
*
* (1) Its Recipients shall ensure that this Notice is
* reproduced upon any copies or amended versions of it;
*
* (2) Any amended version of it shall be clearly marked to
* show both the nature of and the organisation responsible
* for the relevant amendment or amendments;
*
* (3) Its onward transfer from a recipient to another
* party shall be deemed to be that party's acceptance of
* these conditions;
*
* (4) DERA gives no warranty or assurance as to its
* quality or suitability for any purpose and DERA accepts
* no liability whatsoever in relation to any use to which
* it may be put.
*/
#include "config.h"
#include "producer.h"
#include "c_types.h"
#include "exp_ops.h"
#include "hashid_ops.h"
#include "id_ops.h"
#include "tok_ops.h"
#include "type_ops.h"
#include "error.h"
#include "catalog.h"
#include "option.h"
#include "access.h"
#include "allocate.h"
#include "assign.h"
#include "basetype.h"
#include "cast.h"
#include "chktype.h"
#include "class.h"
#include "constant.h"
#include "construct.h"
#include "convert.h"
#include "declare.h"
#include "derive.h"
#include "exception.h"
#include "expression.h"
#include "function.h"
#include "hash.h"
#include "identifier.h"
#include "initialise.h"
#include "inttype.h"
#include "label.h"
#include "lex.h"
#include "literal.h"
#include "member.h"
#include "namespace.h"
#include "parse.h"
#include "pragma.h"
#include "predict.h"
#include "preproc.h"
#include "printf.h"
#include "redeclare.h"
#include "rewrite.h"
#include "statement.h"
#include "symbols.h"
#include "template.h"
#include "tokdef.h"
#include "token.h"
#include "typeid.h"
#include "variable.h"
/*
* COMPOUND TYPE ALIASES
*
* These are the aliases for the compound types used in the parser.
*/
typedef LIST (IDENTIFIER) SID_LIST_ID;
/*
* DECLARE FUNCTIONS
*
* The function declarations are included at this point so that the
* type definitions are in scope.
*/
#include "psyntax.h"
extern void parse_tok_type(TYPE *);
extern void parse_mem_type(TYPE *);
extern void parse_operator(IDENTIFIER *);
/*
* COMPILATION MODE
*
* The output of sid is automatically generated. Hence it is not
* necessarily appropriate to apply the same level of checking to this
* as to the rest of the program. These pragmas describe the relaxations
* allowed for the sid output.
*/
#if FS_TENDRA
#pragma TenDRA begin
#pragma TenDRA variable analysis off
#ifndef OLD_PRODUCER
#pragma TenDRA unreachable code allow
#endif
#endif
void
XR554 (int *XO401)
{
int XI401;
switch (CURRENT_TERMINAL) {
case lex_asm:
{
ADVANCE_LEXER;
{
(XI401) = lex_asm;
}
}
break;
case lex_discard:
{
ADVANCE_LEXER;
XR856 (&XI401);
if ((CURRENT_TERMINAL) == 358) {
RESTORE_LEXER;
goto XL1;
}
}
break;
case lex_exhaustive:
{
ADVANCE_LEXER;
{
(XI401) = lex_exhaustive;
}
}
break;
case lex_fall:
{
ADVANCE_LEXER;
switch (CURRENT_TERMINAL) {
case lex_into:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
switch (CURRENT_TERMINAL) {
case lex_case:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
{
(XI401) = lex_fall;
}
}
break;
case lex_inline:
{
ADVANCE_LEXER;
{
(XI401) = lex_inline;
}
}
break;
case lex_operator:
{
ADVANCE_LEXER;
{
(XI401) = crt_lex_token;
if ((XI401) >= FIRST_SYMBOL && (XI401) <= LAST_SYMBOL) crt_lex_token = lex_plus;
}
switch (CURRENT_TERMINAL) {
case lex_plus:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
}
break;
case lex_set:
{
ADVANCE_LEXER;
XR857 (&XI401);
if ((CURRENT_TERMINAL) == 358) {
RESTORE_LEXER;
goto XL1;
}
}
break;
case lex_type:
{
ADVANCE_LEXER;
switch (CURRENT_TERMINAL) {
case lex_representation:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
{
(XI401) = lex_representation;
}
}
break;
case lex_weak:
{
ADVANCE_LEXER;
{
(XI401) = lex_weak;
}
}
break;
case lex_keyword:
{
IDENTIFIER XI379;
XR553 (&XI379);
if ((CURRENT_TERMINAL) == 358) {
RESTORE_LEXER;
goto XL1;
}
{
(XI401) = find_keyword ((XI379));
}
}
break;
case 358:
return;
default:
goto XL1;
}
goto XL0;
XL1:;
SAVE_LEXER (358);
return;
XL0:;
*XO401 = XI401;
}
void
XR451 (DECL_SPEC *XO413)
{
DECL_SPEC XI413;
switch (CURRENT_TERMINAL) {
case lex_private:
{
ADVANCE_LEXER;
{
(XI413) = dspec_private;
}
}
break;
case lex_protected:
{
ADVANCE_LEXER;
{
(XI413) = dspec_protected;
}
}
break;
case lex_public:
{
ADVANCE_LEXER;
{
(XI413) = dspec_public;
}
}
break;
default:
{
{
(XI413) = dspec_public;
}
}
break;
case 358:
return;
}
*XO413 = XI413;
}
void
XR761 (int *XO712)
{
int XI712;
if ((CURRENT_TERMINAL) == 358) {
return;
}
{
EXP XI452;
switch (CURRENT_TERMINAL) {
case lex_error:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
{
switch (CURRENT_TERMINAL) {
case lex_string_Hexp:
{
{
XI452 = crt_token->pp_data.exp;
}
ADVANCE_LEXER;
}
break;
case lex_wstring_Hexp:
{
{
XI452 = crt_token->pp_data.exp;
}
ADVANCE_LEXER;
}
break;
default:
goto XL1;
}
}
{
STRING s = DEREF_str (exp_string_lit_str ((XI452)));
(XI712) = find_error_no (s, 0);
if ((XI712) == -1) {
report (preproc_loc, ERR_pragma_error_bad (s));
}
}
}
goto XL0;
XL1:;
SAVE_LEXER (358);
return;
XL0:;
*XO712 = XI712;
}
void
XR486 (void)
{
if ((CURRENT_TERMINAL) == 358) {
return;
}
{
TYPE XI401;
IDENTIFIER XI379;
{
in_token_decl = 1;
}
switch (CURRENT_TERMINAL) {
case lex_member:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
switch (CURRENT_TERMINAL) {
case lex_definition:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
{
(XI401) = type_error;
parse_tok_type (&(XI401));
object_type ((XI401), null_tag);
}
switch (CURRENT_TERMINAL) {
case lex_colon:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
{
switch (CURRENT_TERMINAL) {
case lex_identifier:
{
{
XI379 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_namespace_Hname:
{
{
XI379 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_statement_Hname:
{
{
XI379 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_type_Hname:
{
{
XI379 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
default:
goto XL1;
}
}
{
in_token_decl = 0;
}
{
if (define_mem_macro ((XI379), (XI401))) no_declarations++;
}
}
return;
XL1:;
SAVE_LEXER (358);
return;
}
void
XR499 (int XI413)
{
XL2_499:;
switch (CURRENT_TERMINAL) {
case lex_identifier: case lex_type_Hname: case lex_namespace_Hname:
case lex_statement_Hname:
{
IDENTIFIER XI379;
{
switch (CURRENT_TERMINAL) {
case lex_identifier:
{
{
XI379 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_namespace_Hname:
{
{
XI379 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_statement_Hname:
{
{
XI379 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_type_Hname:
{
{
XI379 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
default:
goto XL1;
}
}
{
preserve_id ((XI379), (XI413));
}
goto XL2_499;
}
/*UNREACHED*/
case 358:
return;
default:
break;
}
return;
XL1:;
SAVE_LEXER (358);
return;
}
void
XR745 (unsigned *XO449)
{
unsigned XI449;
switch (CURRENT_TERMINAL) {
case lex_as:
{
ADVANCE_LEXER;
XR736 (&XI449);
if ((CURRENT_TERMINAL) == 358) {
RESTORE_LEXER;
goto XL1;
}
}
break;
default:
{
{
(XI449) = CAST_EXPLICIT;
}
}
break;
case 358:
return;
}
goto XL0;
XL1:;
SAVE_LEXER (358);
return;
XL0:;
*XO449 = XI449;
}
void
XR511 (unsigned *XO381)
{
unsigned XI381;
switch (CURRENT_TERMINAL) {
case lex_allow:
{
ADVANCE_LEXER;
{
(XI381) = (unsigned) OPTION_OFF;
}
}
break;
case lex_disallow:
{
ADVANCE_LEXER;
{
(XI381) = (unsigned) OPTION_ON;
}
}
break;
case lex_off:
{
ADVANCE_LEXER;
{
(XI381) = (unsigned) OPTION_OFF;
}
}
break;
case lex_on:
{
ADVANCE_LEXER;
{
(XI381) = (unsigned) OPTION_ON;
}
}
break;
case lex_warning:
{
ADVANCE_LEXER;
{
(XI381) = (unsigned) OPTION_WARN;
}
}
break;
case 358:
return;
default:
goto XL1;
}
goto XL0;
XL1:;
SAVE_LEXER (358);
return;
XL0:;
*XO381 = XI381;
}
void
XR417 (SID_LIST_ID *XO406)
{
SID_LIST_ID XI406;
if ((CURRENT_TERMINAL) == 358) {
return;
}
{
IDENTIFIER XI379;
SID_LIST_ID XI409;
XR415 (&XI379);
{
switch (CURRENT_TERMINAL) {
case lex_comma:
{
ADVANCE_LEXER;
XR835 (&XI409);
if ((CURRENT_TERMINAL) == 358) {
RESTORE_LEXER;
goto XL1;
}
}
break;
default:
{
{
(XI409) = NULL_list (IDENTIFIER);
}
}
break;
case 358:
RESTORE_LEXER;
goto XL1;
}
}
{
CONS_id ((XI379), (XI409), (XI406));
}
}
goto XL0;
XL1:;
SAVE_LEXER (358);
return;
XL0:;
*XO406 = XI406;
}
void
XR555 (void)
{
switch (CURRENT_TERMINAL) {
case lex_undef:
{
IDENTIFIER XI379;
ADVANCE_LEXER;
XR553 (&XI379);
if ((CURRENT_TERMINAL) == 358) {
RESTORE_LEXER;
goto XL1;
}
{
undef_keyword ((XI379));
}
}
break;
case lex_keyword:
{
IDENTIFIER XI379;
int XI401;
XR553 (&XI379);
switch (CURRENT_TERMINAL) {
case lex_for:
break;
case 358:
RESTORE_LEXER;
goto XL1;
default:
goto XL1;
}
ADVANCE_LEXER;
XR554 (&XI401);
if ((CURRENT_TERMINAL) == 358) {
RESTORE_LEXER;
goto XL1;
}
{
define_keyword ((XI379), (XI401));
}
}
break;
case 358:
return;
default:
goto XL1;
}
return;
XL1:;
SAVE_LEXER (358);
return;
}
void
XR501 (void)
{
XL2_501:;
switch (CURRENT_TERMINAL) {
case lex_identifier: case lex_type_Hname: case lex_namespace_Hname:
case lex_statement_Hname:
{
IDENTIFIER XI379;
{
switch (CURRENT_TERMINAL) {
case lex_identifier:
{
{
XI379 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_namespace_Hname:
{
{
XI379 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_statement_Hname:
{
{
XI379 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_type_Hname:
{
{
XI379 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
default:
goto XL1;
}
}
{
preserve_id ((XI379), lex_suspend);
}
goto XL2_501;
}
/*UNREACHED*/
case 358:
return;
default:
break;
}
return;
XL1:;
SAVE_LEXER (358);
return;
}
void
XR510 (unsigned *XO381)
{
unsigned XI381;
switch (CURRENT_TERMINAL) {
case lex_allow:
{
ADVANCE_LEXER;
{
(XI381) = (unsigned) OPTION_OFF;
}
}
break;
case lex_disallow:
{
ADVANCE_LEXER;
{
(XI381) = (unsigned) OPTION_ON;
}
}
break;
case lex_warning:
{
ADVANCE_LEXER;
{
(XI381) = (unsigned) OPTION_WARN;
}
}
break;
case 358:
return;
default:
goto XL1;
}
goto XL0;
XL1:;
SAVE_LEXER (358);
return;
XL0:;
*XO381 = XI381;
}
void
XR450 (int *XO448, int *XO449)
{
int XI448;
int XI449;
switch (CURRENT_TERMINAL) {
case lex_const:
{
ADVANCE_LEXER;
{
(XI448) = 0;
}
{
(XI449) = 1;
}
}
break;
case lex_lvalue:
{
ADVANCE_LEXER;
{
(XI448) = 1;
}
{
(XI449) = 0;
}
}
break;
case lex_rvalue:
{
ADVANCE_LEXER;
{
(XI448) = 0;
}
{
(XI449) = 0;
}
}
break;
default:
{
{
(XI448) = 0;
}
{
(XI449) = 0;
}
}
break;
case 358:
return;
}
*XO448 = XI448;
*XO449 = XI449;
}
void
XR757 (EXP *XO448)
{
EXP XI448;
switch (CURRENT_TERMINAL) {
case lex_as:
{
ADVANCE_LEXER;
{
switch (CURRENT_TERMINAL) {
case lex_char_Hexp:
{
{
XI448 = crt_token->pp_data.exp;
}
ADVANCE_LEXER;
}
break;
case lex_wchar_Hexp:
{
{
XI448 = crt_token->pp_data.exp;
}
ADVANCE_LEXER;
}
break;
default:
goto XL1;
}
}
switch (CURRENT_TERMINAL) {
case lex_allow:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
}
break;
case lex_disallow:
{
ADVANCE_LEXER;
{
(XI448) = NULL_exp;
}
}
break;
case 358:
return;
default:
goto XL1;
}
goto XL0;
XL1:;
SAVE_LEXER (358);
return;
XL0:;
*XO448 = XI448;
}
void
XR411 (SID_LIST_ID XI410, IDENTIFIER *XO379)
{
IDENTIFIER XI379;
switch (CURRENT_TERMINAL) {
case lex_exp_Hcap:
{
IDENTIFIER XI405;
ADVANCE_LEXER;
{
switch (CURRENT_TERMINAL) {
case lex_identifier:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_namespace_Hname:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_statement_Hname:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_type_Hname:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
default:
goto XL1;
}
}
{
(XI379) = prog_tok_param ((XI405), NULL_type, tok_exp_tag, (XI410));
}
}
break;
case lex_member_Hcap:
{
TYPE XI401;
IDENTIFIER XI405;
ADVANCE_LEXER;
{
(XI401) = type_error;
parse_tok_type (&(XI401));
object_type ((XI401), null_tag);
}
switch (CURRENT_TERMINAL) {
case lex_colon:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
{
switch (CURRENT_TERMINAL) {
case lex_identifier:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_namespace_Hname:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_statement_Hname:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_type_Hname:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
default:
goto XL1;
}
}
{
(XI379) = prog_tok_param ((XI405), (XI401), tok_member_tag, (XI410));
}
}
break;
case lex_proc_Hcap:
{
IDENTIFIER XI405;
ADVANCE_LEXER;
{
switch (CURRENT_TERMINAL) {
case lex_identifier:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_namespace_Hname:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_statement_Hname:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_type_Hname:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
default:
goto XL1;
}
}
{
(XI379) = prog_tok_param ((XI405), NULL_type, tok_proc_tag, (XI410));
}
}
break;
case lex_stmt_Hcap:
{
IDENTIFIER XI405;
ADVANCE_LEXER;
{
switch (CURRENT_TERMINAL) {
case lex_identifier:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_namespace_Hname:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_statement_Hname:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
case lex_type_Hname:
{
{
XI405 = crt_token->pp_data.id.use;
}
ADVANCE_LEXER;
}
break;
default:
goto XL1;
}
}
{
(XI379) = prog_tok_param ((XI405), NULL_type, tok_stmt_tag, (XI410));
}
}
break;
case lex_type_Hcap:
{
TYPE XI401;
ADVANCE_LEXER;
{
(XI401) = type_error;
parse_tok_type (&(XI401));
object_type ((XI401), null_tag);
}
{
IDENTIFIER tid = DEREF_id (type_name ((XI401)));
(XI379) = prog_tok_param (tid, (XI401), tok_type_tag, (XI410));
}
}
break;
case 358:
return;
default:
goto XL1;
}
goto XL0;
XL1:;
SAVE_LEXER (358);
return;
XL0:;
*XO379 = XI379;
}
void
XR400 (TOKEN *XO404)
{
TOKEN XI404;
switch (CURRENT_TERMINAL) {
case lex_arith_Hcap:
{
ADVANCE_LEXER;
{
(XI404) = make_type_token (btype_arith);
}
}
break;
case lex_class_Hcap:
{
ADVANCE_LEXER;
{
(XI404) = make_type_token (btype_lang);
}
}
break;
case lex_exp_Hcap:
{
int XI448;
int XI449;
TYPE XI401;
ADVANCE_LEXER;
XR450 (&XI448, &XI449);
switch (CURRENT_TERMINAL) {
case lex_colon:
break;
case 358:
RESTORE_LEXER;
goto XL1;
default:
goto XL1;
}
ADVANCE_LEXER;
{
(XI401) = type_error;
parse_tok_type (&(XI401));
object_type ((XI401), null_tag);
}
switch (CURRENT_TERMINAL) {
case lex_colon:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
{
(XI404) = make_exp_token ((XI401), (XI448), (XI449));
}
}
break;
case lex_float_Hcap:
{
ADVANCE_LEXER;
{
(XI404) = make_type_token (btype_float);
}
}
break;
case lex_func_Hcap:
{
TYPE XI401;
ADVANCE_LEXER;
{
(XI401) = type_error;
parse_tok_type (&(XI401));
object_type ((XI401), id_function_tag);
}
switch (CURRENT_TERMINAL) {
case lex_colon:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
{
(XI404) = make_func_token ((XI401));
}
}
break;
case lex_int_Hcap:
{
ADVANCE_LEXER;
{
MAKE_tok_snat (NULL_nat, (XI404));
}
}
break;
case lex_member_Hcap:
{
DECL_SPEC XI413;
TYPE XI401;
TYPE XI452;
ADVANCE_LEXER;
XR451 (&XI413);
if ((CURRENT_TERMINAL) == 358) {
RESTORE_LEXER;
goto XL1;
}
{
(XI401) = type_error;
parse_mem_type (&(XI401));
object_type ((XI401), null_tag);
}
switch (CURRENT_TERMINAL) {
case lex_colon:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
{
(XI452) = type_error;
parse_tok_type (&(XI452));
object_type ((XI452), null_tag);
}
switch (CURRENT_TERMINAL) {
case lex_colon:
break;
default:
goto XL1;
}
ADVANCE_LEXER;
{
(XI404) = make_member_token ((XI401), (XI452), (XI413));
}
}
break;
case lex_nat_Hcap:
{
ADVANCE_LEXER;
{
MAKE_tok_nat (NULL_nat, (XI404));
}
}
break;
case lex_proc_Hcap:
{
ADVANCE_LEXER;
XR834 (&XI404);
if ((CURRENT_TERMINAL) == 358) {
RESTORE_LEXER;
goto XL1;
}
}
break;
case lex_scalar_Hcap:
{
ADVANCE_LEXER;
{
(XI404) = make_type_token (btype_scalar);
}
}
break;
case lex_stmt_Hcap:
{
ADVANCE_LEXER;
{
MAKE_tok_stmt (NULL_exp, (XI404));
}
}
break;
case lex_struct_Hcap:
{
ADVANCE_LEXER;
{
(XI404) = make_type_token (btype_struct);
}
}
break;
case lex_type_Hcap:
{
ADVANCE_LEXER;
{
(XI404) = make_type_token (btype_none);
}
}
break;
case lex_union_Hcap:
{
ADVANCE_LEXER;
{
(XI404) = make_type_token (btype_union);
}
}
break;
case lex_variety_Hcap:
{
ADVANCE_LEXER;
XR833 (&XI404);
if ((CURRENT_TERMINAL) == 358) {
RESTORE_LEXER;
goto XL1;
}
}
break;
case 358:
return;
default:
goto XL1;
}
goto XL0;
XL1:;
SAVE_LEXER (358);
return;
XL0:;
*XO404 = XI404;
}
void
XR512 (unsigned *XO381)
{
unsigned XI381;
switch (CURRENT_TERMINAL) {
case lex_warning:
{
ADVANCE_LEXER;
{
(XI381) = (unsigned) OPTION_WARN;
}
}
break;
default:
{
{
(XI381) = (unsigned) OPTION_ON;
}
}
break;
case 358:
return;
}
*XO381 = XI381;
}
/* BEGINNING OF TRAILER */
/* END OF FILE */
syntax highlighted by Code2HTML, v. 0.9.1