struct resword {
  const char  *name;
  short        token;
  enum rid     rid;
  enum toktype { RESERVED, DIRECTIVE, PREDEF } flags;
};
extern tree ridpointers [];
%%
access,			ACCESS,			NORID,	RESERVED
after,			AFTER,			NORID,	RESERVED
all,			ALL,			NORID,	RESERVED
all_static_off,		ALL_STATIC_OFF,		NORID,  DIRECTIVE
all_static_on,		ALL_STATIC_ON,		NORID,	DIRECTIVE
and,			AND,			NORID,	RESERVED
andif,			ANDIF,			NORID,	RESERVED
array,			ARRAY,			NORID,	RESERVED
asm,			ASM_KEYWORD,		NORID,	RESERVED
assert,			ASSERT,			NORID,	RESERVED
at,			AT,			NORID,	RESERVED
based,			BASED,			NORID,	RESERVED
begin,			BEGINTOKEN,		NORID,	RESERVED
bin,			BIN,			NORID,	RESERVED
bit,			BOOLS,			RID_BOOLS,	PREDEF
body,			BODY,			NORID,	RESERVED
bools,			BOOLS,			RID_BOOLS,	RESERVED
buffer,			BUFFER,			NORID,	RESERVED
buffer_code,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
by,			BY,			NORID,	RESERVED
call,			CALL,			NORID,	RESERVED
case,			CASE,			NORID,	RESERVED
cause,			CAUSE,			NORID,	RESERVED
ccitt_os,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
chars,			CHARS,			NORID,	RESERVED
context,		CONTEXT,		NORID,	RESERVED
continue,		CONTINUE,		NORID,	RESERVED
cycle,			CYCLE,			NORID,	RESERVED
dcl,			DCL,			NORID,	RESERVED
debug_lines,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
debug_symbols,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
debug_types,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
delay,			DELAY,			NORID,	RESERVED
do,			DO,			NORID,	RESERVED
down,			DOWN,			NORID,	RESERVED
dynamic,		DYNAMIC,		RID_DYNAMIC,	RESERVED
else,			ELSE,			NORID,	RESERVED
elsif,			ELSIF,			NORID,	RESERVED
empty_off,		EMPTY_OFF,		NORID,	DIRECTIVE
empty_on,		EMPTY_ON,		NORID,	DIRECTIVE
end,			END,			NORID,	RESERVED
esac,			ESAC,			NORID,	RESERVED
even,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
event,			EVENT,			NORID,	RESERVED
event_code,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
ever,			EVER,			NORID,	RESERVED
exceptions,		EXCEPTIONS,		NORID,	RESERVED
exit,			EXIT,			NORID,	RESERVED
extra_const_seg,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
far,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
fi,			FI,			NORID,	RESERVED
for,			FOR,			NORID,	RESERVED
forbid,			FORBID,			NORID,	RESERVED
general,		GENERAL,		NORID,	RESERVED
generate_all_set_names,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
generate_set_names,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
goto,			GOTO,			NORID,	RESERVED
grant,			GRANT,			NORID,	RESERVED
grant_file_size,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
if,			IF,			NORID,	RESERVED
in,			IN,			RID_IN,	RESERVED
init,			INIT,			NORID,	RESERVED
inline,			INLINE,			RID_INLINE,	RESERVED
inout,			PARAMATTR,		RID_INOUT,	RESERVED
large,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
list,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
loc,			LOC,			NORID,	RESERVED
make_publics_for_discrete_syns,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
medium,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
mod,			MOD,			NORID,	RESERVED
module,			MODULE,			NORID,	RESERVED
multiple_const_segs,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
multiple_data_segs,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
newmode,		NEWMODE,		NORID,	RESERVED
nolist,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
no_overlap_check,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
nonref,			NONREF,			NORID,	RESERVED
nopack,			NOPACK,			NORID,	RESERVED
not,			NOT,			NORID,	RESERVED
od,			OD,			NORID,	RESERVED
of,			OF,			NORID,	RESERVED
on,			ON,			NORID,	RESERVED
only_for_simulation,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
only_for_target,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
optimize,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
optimize_runtime,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
optimization_window,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
or,			OR,			NORID,	RESERVED
orif,			ORIF,			NORID,	RESERVED
out,			PARAMATTR,		RID_OUT,	RESERVED
pack,			PACK,			NORID,	RESERVED
page,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
pos,			POS,			NORID,	RESERVED
powerset,		POWERSET,		NORID,	RESERVED
prefixed,		PREFIXED,		NORID,	RESERVED
print_o_code,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
print_symbol_table,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
priority,		PRIORITY,		NORID,	RESERVED
proc,			PROC,			NORID,	RESERVED
process,		PROCESS,		NORID,	RESERVED
process_type,		PROCESS_TYPE_TOKEN,	NORID,	DIRECTIVE
range,			RANGE,			NORID,	RESERVED
range_off,		RANGE_OFF,		NORID,	DIRECTIVE
range_on,		RANGE_ON,		NORID,	DIRECTIVE
read,			READ,			RID_READ,	RESERVED
receive,		RECEIVE,		NORID,	RESERVED
recursive,		RECURSIVE,		NORID,	RESERVED
reentrant,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
reentrant_all,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
ref,			REF,			NORID,	RESERVED
region,			REGION,			NORID,	RESERVED
rem,			REM,			NORID,	RESERVED
remote,			REMOTE,			NORID,	RESERVED
result,			RESULT,			NORID,	RESERVED
return,			RETURN,			NORID,	RESERVED
returns,		RETURNS,		NORID,	RESERVED
row,			ROW,			NORID,	RESERVED
seize,			SEIZE,			NORID,	RESERVED
send,			SEND,			NORID,	RESERVED
send_buffer_default_priority,	SEND_BUFFER_DEFAULT_PRIORITY,	NORID,	DIRECTIVE
send_signal_default_priority,	SEND_SIGNAL_DEFAULT_PRIORITY,	NORID,	DIRECTIVE
set,			SET,			NORID,	RESERVED
short_pred_succ,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
signal,			SIGNAL,			NORID,	RESERVED
signal_code,		SIGNAL_CODE,		NORID,	DIRECTIVE
signal_max_length,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
simple,			SIMPLE,			NORID,	RESERVED
small,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
spec,			SPEC,			NORID,	RESERVED
start,			START,			NORID,	RESERVED
state_routine,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
static,			STATIC,			NORID,	RESERVED
step,			STEP,			NORID,	RESERVED
stop,			STOP,			NORID,	RESERVED
struct,			STRUCT,			NORID,	RESERVED
support_causing_address,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
syn,			SYN,			NORID,	RESERVED
synmode,		SYNMODE,		NORID,	RESERVED
text,			TEXT,			NORID,	RESERVED
then,			THEN,			NORID,	RESERVED
this,			THIS,			NORID,	RESERVED
timeout,		TIMEOUT,		NORID,	RESERVED
to,			TO,			NORID,	RESERVED
up,			UP,			NORID,	RESERVED
use_seize_file,		USE_SEIZE_FILE,		NORID,	DIRECTIVE
use_seize_file_restricted,	USE_SEIZE_FILE_RESTRICTED,	NORID,	DIRECTIVE
varying,		VARYING,		NORID,	RESERVED
while,			WHILE,			NORID,	RESERVED
with,			WITH,			NORID,	RESERVED
xor,			XOR,			NORID,	RESERVED
ACCESS,			ACCESS,			NORID,	RESERVED
AFTER,			AFTER,			NORID,	RESERVED
ALL,			ALL,			NORID,	RESERVED
ALL_STATIC_OFF,		ALL_STATIC_OFF,		NORID,  DIRECTIVE
ALL_STATIC_ON,		ALL_STATIC_ON,		NORID,	DIRECTIVE
AND,			AND,			NORID,	RESERVED
ANDIF,			ANDIF,			NORID,	RESERVED
ARRAY,			ARRAY,			NORID,	RESERVED
ASM,			ASM_KEYWORD,		NORID,	RESERVED
ASSERT,			ASSERT,			NORID,	RESERVED
AT,			AT,			NORID,	RESERVED
BASED,			BASED,			NORID,	RESERVED
BEGIN,			BEGINTOKEN,		NORID,	RESERVED
BIN,			BIN,			NORID,	RESERVED
BIT,			BOOLS,			RID_BOOLS,	PREDEF
BODY,			BODY,			NORID,	RESERVED
BOOLS,			BOOLS,			RID_BOOLS,	RESERVED
BUFFER,			BUFFER,			NORID,	RESERVED
BUFFER_CODE,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
BY,			BY,			NORID,	RESERVED
CALL,			CALL,			NORID,	RESERVED
CASE,			CASE,			NORID,	RESERVED
CAUSE,			CAUSE,			NORID,	RESERVED
CCITT_OS,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
CHARS,			CHARS,			NORID,	RESERVED
CONTEXT,		CONTEXT,		NORID,	RESERVED
CONTINUE,		CONTINUE,		NORID,	RESERVED
CYCLE,			CYCLE,			NORID,	RESERVED
DCL,			DCL,			NORID,	RESERVED
DEBUG_LINES,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
DEBUG_SYMBOLS,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
DEBUG_TYPES,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
DELAY,			DELAY,			NORID,	RESERVED
DO,			DO,			NORID,	RESERVED
DOWN,			DOWN,			NORID,	RESERVED
DYNAMIC,		DYNAMIC,		RID_DYNAMIC,	RESERVED
ELSE,			ELSE,			NORID,	RESERVED
ELSIF,			ELSIF,			NORID,	RESERVED
EMPTY_OFF,		EMPTY_OFF,		NORID,	DIRECTIVE
EMPTY_ON,		EMPTY_ON,		NORID,	DIRECTIVE
END,			END,			NORID,	RESERVED
ESAC,			ESAC,			NORID,	RESERVED
EVEN,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
EVENT,			EVENT,			NORID,	RESERVED
EVENT_CODE,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
EVER,			EVER,			NORID,	RESERVED
EXCEPTIONS,		EXCEPTIONS,		NORID,	RESERVED
EXIT,			EXIT,			NORID,	RESERVED
EXTRA_CONST_SEG,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
FAR,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
FI,			FI,			NORID,	RESERVED
FOR,			FOR,			NORID,	RESERVED
FORBID,			FORBID,			NORID,	RESERVED
GENERAL,		GENERAL,		NORID,	RESERVED
GENERATE_ALL_SET_NAMES,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
GENERATE_SET_NAMES,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
GOTO,			GOTO,			NORID,	RESERVED
GRANT,			GRANT,			NORID,	RESERVED
GRANT_FILE_SIZE,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
IF,			IF,			NORID,	RESERVED
IN,			IN,			RID_IN,	RESERVED
INIT,			INIT,			NORID,	RESERVED
INLINE,			INLINE,			RID_INLINE,	RESERVED
INOUT,			PARAMATTR,		RID_INOUT,	RESERVED
LARGE,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
LIST,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
LOC,			LOC,			NORID,	RESERVED
MAKE_PUBLICS_FOR_DISCRETE_SYNS,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
MEDIUM,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
MOD,			MOD,			NORID,	RESERVED
MODULE,			MODULE,			NORID,	RESERVED
MULTIPLE_CONST_SEGS,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
MULTIPLE_DATA_SEGS,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
NEWMODE,		NEWMODE,		NORID,	RESERVED
NOLIST,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
NO_OVERLAP_CHECK,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
NONREF,			NONREF,			NORID,	RESERVED
NOPACK,			NOPACK,			NORID,	RESERVED
NOT,			NOT,			NORID,	RESERVED
OD,			OD,			NORID,	RESERVED
OF,			OF,			NORID,	RESERVED
ON,			ON,			NORID,	RESERVED
ONLY_FOR_SIMULATION,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
ONLY_FOR_TARGET,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
OPTIMIZE,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
OPTIMIZE_RUNTIME,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
OPTIMIZATION_WINDOW,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
OR,			OR,			NORID,	RESERVED
ORIF,			ORIF,			NORID,	RESERVED
OUT,			PARAMATTR,		RID_OUT,	RESERVED
PACK,			PACK,			NORID,	RESERVED
PAGE,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
POS,			POS,			NORID,	RESERVED
POWERSET,		POWERSET,		NORID,	RESERVED
PREFIXED,		PREFIXED,		NORID,	RESERVED
PRINT_O_CODE,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
PRINT_SYMBOL_TABLE,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
PRIORITY,		PRIORITY,		NORID,	RESERVED
PROC,			PROC,			NORID,	RESERVED
PROCESS,		PROCESS,		NORID,	RESERVED
PROCESS_TYPE,		PROCESS_TYPE_TOKEN,	NORID,	DIRECTIVE
RANGE,			RANGE,			NORID,	RESERVED
RANGE_OFF,		RANGE_OFF,		NORID,	DIRECTIVE
RANGE_ON,		RANGE_ON,		NORID,	DIRECTIVE
READ,			READ,			RID_READ,	RESERVED
RECEIVE,		RECEIVE,		NORID,	RESERVED
RECURSIVE,		RECURSIVE,		NORID,	RESERVED
REENTRANT,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
REENTRANT_ALL,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
REF,			REF,			NORID,	RESERVED
REGION,			REGION,			NORID,	RESERVED
REM,			REM,			NORID,	RESERVED
REMOTE,			REMOTE,			NORID,	RESERVED
RESULT,			RESULT,			NORID,	RESERVED
RETURN,			RETURN,			NORID,	RESERVED
RETURNS,		RETURNS,		NORID,	RESERVED
ROW,			ROW,			NORID,	RESERVED
SEIZE,			SEIZE,			NORID,	RESERVED
SEND,			SEND,			NORID,	RESERVED
SEND_BUFFER_DEFAULT_PRIORITY,	SEND_BUFFER_DEFAULT_PRIORITY,	NORID,	DIRECTIVE
SEND_SIGNAL_DEFAULT_PRIORITY,	SEND_SIGNAL_DEFAULT_PRIORITY,	NORID,	DIRECTIVE
SET,			SET,			NORID,	RESERVED
SHORT_PRED_SUCC,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
SIGNAL,			SIGNAL,			NORID,	RESERVED
SIGNAL_CODE,		SIGNAL_CODE,		NORID,	DIRECTIVE
SIGNAL_MAX_LENGTH,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
SIMPLE,			SIMPLE,			NORID,	RESERVED
SMALL,			IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
SPEC,			SPEC,			NORID,	RESERVED
START,			START,			NORID,	RESERVED
STATE_ROUTINE,		IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
STATIC,			STATIC,			NORID,	RESERVED
STEP,			STEP,			NORID,	RESERVED
STOP,			STOP,			NORID,	RESERVED
STRUCT,			STRUCT,			NORID,	RESERVED
SUPPORT_CAUSING_ADDRESS,	IGNORED_DIRECTIVE,	NORID,	DIRECTIVE
SYN,			SYN,			NORID,	RESERVED
SYNMODE,		SYNMODE,		NORID,	RESERVED
TEXT,			TEXT,			NORID,	RESERVED
THEN,			THEN,			NORID,	RESERVED
THIS,			THIS,			NORID,	RESERVED
TIMEOUT,		TIMEOUT,		NORID,	RESERVED
TO,			TO,			NORID,	RESERVED
UP,			UP,			NORID,	RESERVED
USE_SEIZE_FILE,		USE_SEIZE_FILE,		NORID,	DIRECTIVE
USE_SEIZE_FILE_RESTRICTED,	USE_SEIZE_FILE_RESTRICTED,	NORID,	DIRECTIVE
VARYING,		VARYING,		NORID,	RESERVED
WHILE,			WHILE,			NORID,	RESERVED
WITH,			WITH,			NORID,	RESERVED
XOR,			XOR,			NORID,	RESERVED
