3442 lines
89 KiB
C
3442 lines
89 KiB
C
/* -*- buffer-read-only: t -*-
|
|
* !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
|
|
* This file is built by regen/keywords.pl from its data.
|
|
* Any changes made here will be lost!
|
|
*/
|
|
|
|
#include "EXTERN.h"
|
|
#define PERL_IN_KEYWORDS_C
|
|
#include "perl.h"
|
|
#include "keywords.h"
|
|
#include "feature.h"
|
|
|
|
I32
|
|
Perl_keyword (pTHX_ const char *name, I32 len, bool all_keywords)
|
|
{
|
|
PERL_ARGS_ASSERT_KEYWORD;
|
|
|
|
switch (len)
|
|
{
|
|
case 1: /* 5 tokens of length 1 */
|
|
switch (name[0])
|
|
{
|
|
case 'm':
|
|
{ /* m */
|
|
return KEY_m;
|
|
}
|
|
|
|
case 'q':
|
|
{ /* q */
|
|
return KEY_q;
|
|
}
|
|
|
|
case 's':
|
|
{ /* s */
|
|
return KEY_s;
|
|
}
|
|
|
|
case 'x':
|
|
{ /* x */
|
|
return -KEY_x;
|
|
}
|
|
|
|
case 'y':
|
|
{ /* y */
|
|
return KEY_y;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 2: /* 19 tokens of length 2 */
|
|
switch (name[0])
|
|
{
|
|
case 'd':
|
|
if (name[1] == 'o')
|
|
{ /* do */
|
|
return KEY_do;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'e':
|
|
if (name[1] == 'q')
|
|
{ /* eq */
|
|
return -KEY_eq;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'f':
|
|
if (name[1] == 'c')
|
|
{ /* fc */
|
|
return (all_keywords || FEATURE_FC_IS_ENABLED ? -KEY_fc : 0);
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'g':
|
|
switch (name[1])
|
|
{
|
|
case 'e':
|
|
{ /* ge */
|
|
return -KEY_ge;
|
|
}
|
|
|
|
case 't':
|
|
{ /* gt */
|
|
return -KEY_gt;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'i':
|
|
if (name[1] == 'f')
|
|
{ /* if */
|
|
return KEY_if;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'l':
|
|
switch (name[1])
|
|
{
|
|
case 'c':
|
|
{ /* lc */
|
|
return -KEY_lc;
|
|
}
|
|
|
|
case 'e':
|
|
{ /* le */
|
|
return -KEY_le;
|
|
}
|
|
|
|
case 't':
|
|
{ /* lt */
|
|
return -KEY_lt;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'm':
|
|
if (name[1] == 'y')
|
|
{ /* my */
|
|
return KEY_my;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'n':
|
|
switch (name[1])
|
|
{
|
|
case 'e':
|
|
{ /* ne */
|
|
return -KEY_ne;
|
|
}
|
|
|
|
case 'o':
|
|
{ /* no */
|
|
return KEY_no;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'o':
|
|
if (name[1] == 'r')
|
|
{ /* or */
|
|
return -KEY_or;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'q':
|
|
switch (name[1])
|
|
{
|
|
case 'q':
|
|
{ /* qq */
|
|
return KEY_qq;
|
|
}
|
|
|
|
case 'r':
|
|
{ /* qr */
|
|
return KEY_qr;
|
|
}
|
|
|
|
case 'w':
|
|
{ /* qw */
|
|
return KEY_qw;
|
|
}
|
|
|
|
case 'x':
|
|
{ /* qx */
|
|
return KEY_qx;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 't':
|
|
if (name[1] == 'r')
|
|
{ /* tr */
|
|
return KEY_tr;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'u':
|
|
if (name[1] == 'c')
|
|
{ /* uc */
|
|
return -KEY_uc;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 3: /* 28 tokens of length 3 */
|
|
switch (name[0])
|
|
{
|
|
case 'E':
|
|
if (name[1] == 'N' &&
|
|
name[2] == 'D')
|
|
{ /* END */
|
|
return KEY_END;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'a':
|
|
switch (name[1])
|
|
{
|
|
case 'b':
|
|
if (name[2] == 's')
|
|
{ /* abs */
|
|
return -KEY_abs;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'n':
|
|
if (name[2] == 'd')
|
|
{ /* and */
|
|
return -KEY_and;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'c':
|
|
switch (name[1])
|
|
{
|
|
case 'h':
|
|
if (name[2] == 'r')
|
|
{ /* chr */
|
|
return -KEY_chr;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'm':
|
|
if (name[2] == 'p')
|
|
{ /* cmp */
|
|
return -KEY_cmp;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[2] == 's')
|
|
{ /* cos */
|
|
return -KEY_cos;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'd':
|
|
if (name[1] == 'i' &&
|
|
name[2] == 'e')
|
|
{ /* die */
|
|
return -KEY_die;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'e':
|
|
switch (name[1])
|
|
{
|
|
case 'o':
|
|
if (name[2] == 'f')
|
|
{ /* eof */
|
|
return -KEY_eof;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'x':
|
|
if (name[2] == 'p')
|
|
{ /* exp */
|
|
return -KEY_exp;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'f':
|
|
if (name[1] == 'o' &&
|
|
name[2] == 'r')
|
|
{ /* for */
|
|
return KEY_for;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'h':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 'x')
|
|
{ /* hex */
|
|
return -KEY_hex;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'i':
|
|
if (name[1] == 'n' &&
|
|
name[2] == 't')
|
|
{ /* int */
|
|
return -KEY_int;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'l':
|
|
if (name[1] == 'o' &&
|
|
name[2] == 'g')
|
|
{ /* log */
|
|
return -KEY_log;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'm':
|
|
if (name[1] == 'a' &&
|
|
name[2] == 'p')
|
|
{ /* map */
|
|
return KEY_map;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'n':
|
|
if (name[1] == 'o' &&
|
|
name[2] == 't')
|
|
{ /* not */
|
|
return -KEY_not;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
switch (name[1])
|
|
{
|
|
case 'c':
|
|
if (name[2] == 't')
|
|
{ /* oct */
|
|
return -KEY_oct;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
if (name[2] == 'd')
|
|
{ /* ord */
|
|
return -KEY_ord;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'u':
|
|
if (name[2] == 'r')
|
|
{ /* our */
|
|
return KEY_our;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'p':
|
|
if (name[1] == 'o')
|
|
{
|
|
switch (name[2])
|
|
{
|
|
case 'p':
|
|
{ /* pop */
|
|
return -KEY_pop;
|
|
}
|
|
|
|
case 's':
|
|
{ /* pos */
|
|
return KEY_pos;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 'f')
|
|
{ /* ref */
|
|
return -KEY_ref;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
switch (name[1])
|
|
{
|
|
case 'a':
|
|
if (name[2] == 'y')
|
|
{ /* say */
|
|
return (all_keywords || FEATURE_SAY_IS_ENABLED ? KEY_say : 0);
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'i':
|
|
if (name[2] == 'n')
|
|
{ /* sin */
|
|
return -KEY_sin;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'u':
|
|
if (name[2] == 'b')
|
|
{ /* sub */
|
|
return KEY_sub;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 't':
|
|
if (name[1] == 'i' &&
|
|
name[2] == 'e')
|
|
{ /* tie */
|
|
return -KEY_tie;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'u':
|
|
if (name[1] == 's' &&
|
|
name[2] == 'e')
|
|
{ /* use */
|
|
return KEY_use;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'v':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 'c')
|
|
{ /* vec */
|
|
return -KEY_vec;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'x':
|
|
if (name[1] == 'o' &&
|
|
name[2] == 'r')
|
|
{ /* xor */
|
|
return -KEY_xor;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 4: /* 40 tokens of length 4 */
|
|
switch (name[0])
|
|
{
|
|
case 'I':
|
|
if (name[1] == 'N' &&
|
|
name[2] == 'I' &&
|
|
name[3] == 'T')
|
|
{ /* INIT */
|
|
return KEY_INIT;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'b':
|
|
if (name[1] == 'i' &&
|
|
name[2] == 'n' &&
|
|
name[3] == 'd')
|
|
{ /* bind */
|
|
return -KEY_bind;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'c':
|
|
if (name[1] == 'h' &&
|
|
name[2] == 'o' &&
|
|
name[3] == 'p')
|
|
{ /* chop */
|
|
return -KEY_chop;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'd':
|
|
if (name[1] == 'u' &&
|
|
name[2] == 'm' &&
|
|
name[3] == 'p')
|
|
{ /* dump */
|
|
return -KEY_dump;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'e':
|
|
switch (name[1])
|
|
{
|
|
case 'a':
|
|
if (name[2] == 'c' &&
|
|
name[3] == 'h')
|
|
{ /* each */
|
|
return -KEY_each;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'l':
|
|
if (name[2] == 's' &&
|
|
name[3] == 'e')
|
|
{ /* else */
|
|
return KEY_else;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'v':
|
|
if (name[2] == 'a' &&
|
|
name[3] == 'l')
|
|
{ /* eval */
|
|
return KEY_eval;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'x':
|
|
switch (name[2])
|
|
{
|
|
case 'e':
|
|
if (name[3] == 'c')
|
|
{ /* exec */
|
|
return -KEY_exec;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'i':
|
|
if (name[3] == 't')
|
|
{ /* exit */
|
|
return -KEY_exit;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'f':
|
|
if (name[1] == 'o' &&
|
|
name[2] == 'r' &&
|
|
name[3] == 'k')
|
|
{ /* fork */
|
|
return -KEY_fork;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'g':
|
|
switch (name[1])
|
|
{
|
|
case 'e':
|
|
if (name[2] == 't' &&
|
|
name[3] == 'c')
|
|
{ /* getc */
|
|
return -KEY_getc;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'l':
|
|
if (name[2] == 'o' &&
|
|
name[3] == 'b')
|
|
{ /* glob */
|
|
return KEY_glob;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[2] == 't' &&
|
|
name[3] == 'o')
|
|
{ /* goto */
|
|
return KEY_goto;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
if (name[2] == 'e' &&
|
|
name[3] == 'p')
|
|
{ /* grep */
|
|
return KEY_grep;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'j':
|
|
if (name[1] == 'o' &&
|
|
name[2] == 'i' &&
|
|
name[3] == 'n')
|
|
{ /* join */
|
|
return -KEY_join;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'k':
|
|
switch (name[1])
|
|
{
|
|
case 'e':
|
|
if (name[2] == 'y' &&
|
|
name[3] == 's')
|
|
{ /* keys */
|
|
return -KEY_keys;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'i':
|
|
if (name[2] == 'l' &&
|
|
name[3] == 'l')
|
|
{ /* kill */
|
|
return -KEY_kill;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'l':
|
|
switch (name[1])
|
|
{
|
|
case 'a':
|
|
if (name[2] == 's' &&
|
|
name[3] == 't')
|
|
{ /* last */
|
|
return KEY_last;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'i':
|
|
if (name[2] == 'n' &&
|
|
name[3] == 'k')
|
|
{ /* link */
|
|
return -KEY_link;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[2] == 'c' &&
|
|
name[3] == 'k')
|
|
{ /* lock */
|
|
return -KEY_lock;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'n':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 'x' &&
|
|
name[3] == 't')
|
|
{ /* next */
|
|
return KEY_next;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[1] == 'p' &&
|
|
name[2] == 'e' &&
|
|
name[3] == 'n')
|
|
{ /* open */
|
|
return -KEY_open;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
switch (name[1])
|
|
{
|
|
case 'a':
|
|
if (name[2] == 'c' &&
|
|
name[3] == 'k')
|
|
{ /* pack */
|
|
return -KEY_pack;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'i':
|
|
if (name[2] == 'p' &&
|
|
name[3] == 'e')
|
|
{ /* pipe */
|
|
return -KEY_pipe;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'u':
|
|
if (name[2] == 's' &&
|
|
name[3] == 'h')
|
|
{ /* push */
|
|
return -KEY_push;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'r':
|
|
switch (name[1])
|
|
{
|
|
case 'a':
|
|
if (name[2] == 'n' &&
|
|
name[3] == 'd')
|
|
{ /* rand */
|
|
return -KEY_rand;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'e':
|
|
switch (name[2])
|
|
{
|
|
case 'a':
|
|
if (name[3] == 'd')
|
|
{ /* read */
|
|
return -KEY_read;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'c':
|
|
if (name[3] == 'v')
|
|
{ /* recv */
|
|
return -KEY_recv;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'd':
|
|
if (name[3] == 'o')
|
|
{ /* redo */
|
|
return KEY_redo;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 's':
|
|
switch (name[1])
|
|
{
|
|
case 'e':
|
|
switch (name[2])
|
|
{
|
|
case 'e':
|
|
if (name[3] == 'k')
|
|
{ /* seek */
|
|
return -KEY_seek;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'n':
|
|
if (name[3] == 'd')
|
|
{ /* send */
|
|
return -KEY_send;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'o':
|
|
if (name[2] == 'r' &&
|
|
name[3] == 't')
|
|
{ /* sort */
|
|
return KEY_sort;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'q':
|
|
if (name[2] == 'r' &&
|
|
name[3] == 't')
|
|
{ /* sqrt */
|
|
return -KEY_sqrt;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 't':
|
|
if (name[2] == 'a' &&
|
|
name[3] == 't')
|
|
{ /* stat */
|
|
return -KEY_stat;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 't':
|
|
switch (name[1])
|
|
{
|
|
case 'e':
|
|
if (name[2] == 'l' &&
|
|
name[3] == 'l')
|
|
{ /* tell */
|
|
return -KEY_tell;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'i':
|
|
switch (name[2])
|
|
{
|
|
case 'e':
|
|
if (name[3] == 'd')
|
|
{ /* tied */
|
|
return -KEY_tied;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'm':
|
|
if (name[3] == 'e')
|
|
{ /* time */
|
|
return -KEY_time;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'w':
|
|
switch (name[1])
|
|
{
|
|
case 'a':
|
|
switch (name[2])
|
|
{
|
|
case 'i':
|
|
if (name[3] == 't')
|
|
{ /* wait */
|
|
return -KEY_wait;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
if (name[3] == 'n')
|
|
{ /* warn */
|
|
return -KEY_warn;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'h':
|
|
if (name[2] == 'e' &&
|
|
name[3] == 'n')
|
|
{ /* when */
|
|
return (all_keywords || FEATURE_SWITCH_IS_ENABLED ? KEY_when : 0);
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 5: /* 39 tokens of length 5 */
|
|
switch (name[0])
|
|
{
|
|
case 'B':
|
|
if (name[1] == 'E' &&
|
|
name[2] == 'G' &&
|
|
name[3] == 'I' &&
|
|
name[4] == 'N')
|
|
{ /* BEGIN */
|
|
return KEY_BEGIN;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'C':
|
|
if (name[1] == 'H' &&
|
|
name[2] == 'E' &&
|
|
name[3] == 'C' &&
|
|
name[4] == 'K')
|
|
{ /* CHECK */
|
|
return KEY_CHECK;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'a':
|
|
switch (name[1])
|
|
{
|
|
case 'l':
|
|
if (name[2] == 'a' &&
|
|
name[3] == 'r' &&
|
|
name[4] == 'm')
|
|
{ /* alarm */
|
|
return -KEY_alarm;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 't':
|
|
if (name[2] == 'a' &&
|
|
name[3] == 'n' &&
|
|
name[4] == '2')
|
|
{ /* atan2 */
|
|
return -KEY_atan2;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'b':
|
|
switch (name[1])
|
|
{
|
|
case 'l':
|
|
if (name[2] == 'e' &&
|
|
name[3] == 's' &&
|
|
name[4] == 's')
|
|
{ /* bless */
|
|
return -KEY_bless;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
if (name[2] == 'e' &&
|
|
name[3] == 'a' &&
|
|
name[4] == 'k')
|
|
{ /* break */
|
|
return (all_keywords || FEATURE_SWITCH_IS_ENABLED ? -KEY_break : 0);
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'c':
|
|
switch (name[1])
|
|
{
|
|
case 'h':
|
|
switch (name[2])
|
|
{
|
|
case 'd':
|
|
if (name[3] == 'i' &&
|
|
name[4] == 'r')
|
|
{ /* chdir */
|
|
return -KEY_chdir;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'm':
|
|
if (name[3] == 'o' &&
|
|
name[4] == 'd')
|
|
{ /* chmod */
|
|
return -KEY_chmod;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
switch (name[3])
|
|
{
|
|
case 'm':
|
|
if (name[4] == 'p')
|
|
{ /* chomp */
|
|
return -KEY_chomp;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'w':
|
|
if (name[4] == 'n')
|
|
{ /* chown */
|
|
return -KEY_chown;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'l':
|
|
if (name[2] == 'o' &&
|
|
name[3] == 's' &&
|
|
name[4] == 'e')
|
|
{ /* close */
|
|
return -KEY_close;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
if (name[2] == 'y' &&
|
|
name[3] == 'p' &&
|
|
name[4] == 't')
|
|
{ /* crypt */
|
|
return -KEY_crypt;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'e':
|
|
if (name[1] == 'l' &&
|
|
name[2] == 's' &&
|
|
name[3] == 'i' &&
|
|
name[4] == 'f')
|
|
{ /* elsif */
|
|
return KEY_elsif;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'f':
|
|
switch (name[1])
|
|
{
|
|
case 'c':
|
|
if (name[2] == 'n' &&
|
|
name[3] == 't' &&
|
|
name[4] == 'l')
|
|
{ /* fcntl */
|
|
return -KEY_fcntl;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'l':
|
|
if (name[2] == 'o' &&
|
|
name[3] == 'c' &&
|
|
name[4] == 'k')
|
|
{ /* flock */
|
|
return -KEY_flock;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'g':
|
|
if (name[1] == 'i' &&
|
|
name[2] == 'v' &&
|
|
name[3] == 'e' &&
|
|
name[4] == 'n')
|
|
{ /* given */
|
|
return (all_keywords || FEATURE_SWITCH_IS_ENABLED ? KEY_given : 0);
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'i':
|
|
switch (name[1])
|
|
{
|
|
case 'n':
|
|
if (name[2] == 'd' &&
|
|
name[3] == 'e' &&
|
|
name[4] == 'x')
|
|
{ /* index */
|
|
return -KEY_index;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[2] == 'c' &&
|
|
name[3] == 't' &&
|
|
name[4] == 'l')
|
|
{ /* ioctl */
|
|
return -KEY_ioctl;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'l':
|
|
switch (name[1])
|
|
{
|
|
case 'o':
|
|
if (name[2] == 'c' &&
|
|
name[3] == 'a' &&
|
|
name[4] == 'l')
|
|
{ /* local */
|
|
return KEY_local;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
if (name[2] == 't' &&
|
|
name[3] == 'a' &&
|
|
name[4] == 't')
|
|
{ /* lstat */
|
|
return -KEY_lstat;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'm':
|
|
if (name[1] == 'k' &&
|
|
name[2] == 'd' &&
|
|
name[3] == 'i' &&
|
|
name[4] == 'r')
|
|
{ /* mkdir */
|
|
return -KEY_mkdir;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
if (name[1] == 'r' &&
|
|
name[2] == 'i' &&
|
|
name[3] == 'n' &&
|
|
name[4] == 't')
|
|
{ /* print */
|
|
return KEY_print;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
switch (name[1])
|
|
{
|
|
case 'e':
|
|
if (name[2] == 's' &&
|
|
name[3] == 'e' &&
|
|
name[4] == 't')
|
|
{ /* reset */
|
|
return -KEY_reset;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'm':
|
|
if (name[2] == 'd' &&
|
|
name[3] == 'i' &&
|
|
name[4] == 'r')
|
|
{ /* rmdir */
|
|
return -KEY_rmdir;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 's':
|
|
switch (name[1])
|
|
{
|
|
case 'e':
|
|
if (name[2] == 'm' &&
|
|
name[3] == 'o' &&
|
|
name[4] == 'p')
|
|
{ /* semop */
|
|
return -KEY_semop;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'h':
|
|
if (name[2] == 'i' &&
|
|
name[3] == 'f' &&
|
|
name[4] == 't')
|
|
{ /* shift */
|
|
return -KEY_shift;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'l':
|
|
if (name[2] == 'e' &&
|
|
name[3] == 'e' &&
|
|
name[4] == 'p')
|
|
{ /* sleep */
|
|
return -KEY_sleep;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
if (name[2] == 'l' &&
|
|
name[3] == 'i' &&
|
|
name[4] == 't')
|
|
{ /* split */
|
|
return KEY_split;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
if (name[2] == 'a' &&
|
|
name[3] == 'n' &&
|
|
name[4] == 'd')
|
|
{ /* srand */
|
|
return -KEY_srand;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 't':
|
|
switch (name[2])
|
|
{
|
|
case 'a':
|
|
if (name[3] == 't' &&
|
|
name[4] == 'e')
|
|
{ /* state */
|
|
return (all_keywords || FEATURE_STATE_IS_ENABLED ? KEY_state : 0);
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'u':
|
|
if (name[3] == 'd' &&
|
|
name[4] == 'y')
|
|
{ /* study */
|
|
return KEY_study;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 't':
|
|
if (name[1] == 'i' &&
|
|
name[2] == 'm' &&
|
|
name[3] == 'e' &&
|
|
name[4] == 's')
|
|
{ /* times */
|
|
return -KEY_times;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'u':
|
|
switch (name[1])
|
|
{
|
|
case 'm':
|
|
if (name[2] == 'a' &&
|
|
name[3] == 's' &&
|
|
name[4] == 'k')
|
|
{ /* umask */
|
|
return -KEY_umask;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'n':
|
|
switch (name[2])
|
|
{
|
|
case 'd':
|
|
if (name[3] == 'e' &&
|
|
name[4] == 'f')
|
|
{ /* undef */
|
|
return KEY_undef;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 't':
|
|
if (name[3] == 'i')
|
|
{
|
|
switch (name[4])
|
|
{
|
|
case 'e':
|
|
{ /* untie */
|
|
return -KEY_untie;
|
|
}
|
|
|
|
case 'l':
|
|
{ /* until */
|
|
return KEY_until;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 't':
|
|
if (name[2] == 'i' &&
|
|
name[3] == 'm' &&
|
|
name[4] == 'e')
|
|
{ /* utime */
|
|
return -KEY_utime;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'w':
|
|
switch (name[1])
|
|
{
|
|
case 'h':
|
|
if (name[2] == 'i' &&
|
|
name[3] == 'l' &&
|
|
name[4] == 'e')
|
|
{ /* while */
|
|
return KEY_while;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
if (name[2] == 'i' &&
|
|
name[3] == 't' &&
|
|
name[4] == 'e')
|
|
{ /* write */
|
|
return -KEY_write;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 6: /* 33 tokens of length 6 */
|
|
switch (name[0])
|
|
{
|
|
case 'a':
|
|
if (name[1] == 'c' &&
|
|
name[2] == 'c' &&
|
|
name[3] == 'e' &&
|
|
name[4] == 'p' &&
|
|
name[5] == 't')
|
|
{ /* accept */
|
|
return -KEY_accept;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'c':
|
|
switch (name[1])
|
|
{
|
|
case 'a':
|
|
if (name[2] == 'l' &&
|
|
name[3] == 'l' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 'r')
|
|
{ /* caller */
|
|
return -KEY_caller;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'h':
|
|
if (name[2] == 'r' &&
|
|
name[3] == 'o' &&
|
|
name[4] == 'o' &&
|
|
name[5] == 't')
|
|
{ /* chroot */
|
|
return -KEY_chroot;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'd':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 'l' &&
|
|
name[3] == 'e' &&
|
|
name[4] == 't' &&
|
|
name[5] == 'e')
|
|
{ /* delete */
|
|
return KEY_delete;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'e':
|
|
switch (name[1])
|
|
{
|
|
case 'l':
|
|
if (name[2] == 's' &&
|
|
name[3] == 'e' &&
|
|
name[4] == 'i' &&
|
|
name[5] == 'f')
|
|
{ /* elseif */
|
|
Perl_ck_warner_d(aTHX_ packWARN(WARN_SYNTAX), "elseif should be elsif");
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'x':
|
|
if (name[2] == 'i' &&
|
|
name[3] == 's' &&
|
|
name[4] == 't' &&
|
|
name[5] == 's')
|
|
{ /* exists */
|
|
return KEY_exists;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'f':
|
|
switch (name[1])
|
|
{
|
|
case 'i':
|
|
if (name[2] == 'l' &&
|
|
name[3] == 'e' &&
|
|
name[4] == 'n' &&
|
|
name[5] == 'o')
|
|
{ /* fileno */
|
|
return -KEY_fileno;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[2] == 'r' &&
|
|
name[3] == 'm' &&
|
|
name[4] == 'a' &&
|
|
name[5] == 't')
|
|
{ /* format */
|
|
return KEY_format;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'g':
|
|
if (name[1] == 'm' &&
|
|
name[2] == 't' &&
|
|
name[3] == 'i' &&
|
|
name[4] == 'm' &&
|
|
name[5] == 'e')
|
|
{ /* gmtime */
|
|
return -KEY_gmtime;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'l':
|
|
switch (name[1])
|
|
{
|
|
case 'e':
|
|
if (name[2] == 'n' &&
|
|
name[3] == 'g' &&
|
|
name[4] == 't' &&
|
|
name[5] == 'h')
|
|
{ /* length */
|
|
return -KEY_length;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'i':
|
|
if (name[2] == 's' &&
|
|
name[3] == 't' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 'n')
|
|
{ /* listen */
|
|
return -KEY_listen;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'm':
|
|
if (name[1] == 's' &&
|
|
name[2] == 'g')
|
|
{
|
|
switch (name[3])
|
|
{
|
|
case 'c':
|
|
if (name[4] == 't' &&
|
|
name[5] == 'l')
|
|
{ /* msgctl */
|
|
return -KEY_msgctl;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'g':
|
|
if (name[4] == 'e' &&
|
|
name[5] == 't')
|
|
{ /* msgget */
|
|
return -KEY_msgget;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
if (name[4] == 'c' &&
|
|
name[5] == 'v')
|
|
{ /* msgrcv */
|
|
return -KEY_msgrcv;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
if (name[4] == 'n' &&
|
|
name[5] == 'd')
|
|
{ /* msgsnd */
|
|
return -KEY_msgsnd;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
if (name[1] == 'r' &&
|
|
name[2] == 'i' &&
|
|
name[3] == 'n' &&
|
|
name[4] == 't' &&
|
|
name[5] == 'f')
|
|
{ /* printf */
|
|
return KEY_printf;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
switch (name[1])
|
|
{
|
|
case 'e':
|
|
switch (name[2])
|
|
{
|
|
case 'n':
|
|
if (name[3] == 'a' &&
|
|
name[4] == 'm' &&
|
|
name[5] == 'e')
|
|
{ /* rename */
|
|
return -KEY_rename;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 't':
|
|
if (name[3] == 'u' &&
|
|
name[4] == 'r' &&
|
|
name[5] == 'n')
|
|
{ /* return */
|
|
return KEY_return;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'i':
|
|
if (name[2] == 'n' &&
|
|
name[3] == 'd' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 'x')
|
|
{ /* rindex */
|
|
return -KEY_rindex;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 's':
|
|
switch (name[1])
|
|
{
|
|
case 'c':
|
|
if (name[2] == 'a' &&
|
|
name[3] == 'l' &&
|
|
name[4] == 'a' &&
|
|
name[5] == 'r')
|
|
{ /* scalar */
|
|
return KEY_scalar;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'e':
|
|
switch (name[2])
|
|
{
|
|
case 'l':
|
|
if (name[3] == 'e' &&
|
|
name[4] == 'c' &&
|
|
name[5] == 't')
|
|
{ /* select */
|
|
return -KEY_select;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'm':
|
|
switch (name[3])
|
|
{
|
|
case 'c':
|
|
if (name[4] == 't' &&
|
|
name[5] == 'l')
|
|
{ /* semctl */
|
|
return -KEY_semctl;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'g':
|
|
if (name[4] == 'e' &&
|
|
name[5] == 't')
|
|
{ /* semget */
|
|
return -KEY_semget;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'h':
|
|
if (name[2] == 'm')
|
|
{
|
|
switch (name[3])
|
|
{
|
|
case 'c':
|
|
if (name[4] == 't' &&
|
|
name[5] == 'l')
|
|
{ /* shmctl */
|
|
return -KEY_shmctl;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'g':
|
|
if (name[4] == 'e' &&
|
|
name[5] == 't')
|
|
{ /* shmget */
|
|
return -KEY_shmget;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[2] == 'c' &&
|
|
name[3] == 'k' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 't')
|
|
{ /* socket */
|
|
return -KEY_socket;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
if (name[2] == 'l' &&
|
|
name[3] == 'i' &&
|
|
name[4] == 'c' &&
|
|
name[5] == 'e')
|
|
{ /* splice */
|
|
return -KEY_splice;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'u':
|
|
if (name[2] == 'b' &&
|
|
name[3] == 's' &&
|
|
name[4] == 't' &&
|
|
name[5] == 'r')
|
|
{ /* substr */
|
|
return -KEY_substr;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'y':
|
|
if (name[2] == 's' &&
|
|
name[3] == 't' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 'm')
|
|
{ /* system */
|
|
return -KEY_system;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'u':
|
|
if (name[1] == 'n')
|
|
{
|
|
switch (name[2])
|
|
{
|
|
case 'l':
|
|
switch (name[3])
|
|
{
|
|
case 'e':
|
|
if (name[4] == 's' &&
|
|
name[5] == 's')
|
|
{ /* unless */
|
|
return KEY_unless;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'i':
|
|
if (name[4] == 'n' &&
|
|
name[5] == 'k')
|
|
{ /* unlink */
|
|
return -KEY_unlink;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'p':
|
|
if (name[3] == 'a' &&
|
|
name[4] == 'c' &&
|
|
name[5] == 'k')
|
|
{ /* unpack */
|
|
return -KEY_unpack;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'v':
|
|
if (name[1] == 'a' &&
|
|
name[2] == 'l' &&
|
|
name[3] == 'u' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 's')
|
|
{ /* values */
|
|
return -KEY_values;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 7: /* 30 tokens of length 7 */
|
|
switch (name[0])
|
|
{
|
|
case 'D':
|
|
if (name[1] == 'E' &&
|
|
name[2] == 'S' &&
|
|
name[3] == 'T' &&
|
|
name[4] == 'R' &&
|
|
name[5] == 'O' &&
|
|
name[6] == 'Y')
|
|
{ /* DESTROY */
|
|
return KEY_DESTROY;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case '_':
|
|
if (name[1] == '_')
|
|
{
|
|
switch (name[2])
|
|
{
|
|
case 'E':
|
|
if (name[3] == 'N' &&
|
|
name[4] == 'D' &&
|
|
name[5] == '_' &&
|
|
name[6] == '_')
|
|
{ /* __END__ */
|
|
return KEY___END__;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'S':
|
|
if (name[3] == 'U' &&
|
|
name[4] == 'B' &&
|
|
name[5] == '_' &&
|
|
name[6] == '_')
|
|
{ /* __SUB__ */
|
|
return (all_keywords || FEATURE___SUB___IS_ENABLED ? -KEY___SUB__ : 0);
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'b':
|
|
if (name[1] == 'i' &&
|
|
name[2] == 'n' &&
|
|
name[3] == 'm' &&
|
|
name[4] == 'o' &&
|
|
name[5] == 'd' &&
|
|
name[6] == 'e')
|
|
{ /* binmode */
|
|
return -KEY_binmode;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'c':
|
|
if (name[1] == 'o' &&
|
|
name[2] == 'n' &&
|
|
name[3] == 'n' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 'c' &&
|
|
name[6] == 't')
|
|
{ /* connect */
|
|
return -KEY_connect;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'd':
|
|
switch (name[1])
|
|
{
|
|
case 'b':
|
|
if (name[2] == 'm' &&
|
|
name[3] == 'o' &&
|
|
name[4] == 'p' &&
|
|
name[5] == 'e' &&
|
|
name[6] == 'n')
|
|
{ /* dbmopen */
|
|
return -KEY_dbmopen;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'e':
|
|
if (name[2] == 'f')
|
|
{
|
|
switch (name[3])
|
|
{
|
|
case 'a':
|
|
if (name[4] == 'u' &&
|
|
name[5] == 'l' &&
|
|
name[6] == 't')
|
|
{ /* default */
|
|
return (all_keywords || FEATURE_SWITCH_IS_ENABLED ? KEY_default : 0);
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'i':
|
|
if (name[4] == 'n' &&
|
|
name[5] == 'e' &&
|
|
name[6] == 'd')
|
|
{ /* defined */
|
|
return KEY_defined;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'f':
|
|
if (name[1] == 'o' &&
|
|
name[2] == 'r' &&
|
|
name[3] == 'e' &&
|
|
name[4] == 'a' &&
|
|
name[5] == 'c' &&
|
|
name[6] == 'h')
|
|
{ /* foreach */
|
|
return KEY_foreach;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'g':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 't' &&
|
|
name[3] == 'p')
|
|
{
|
|
switch (name[4])
|
|
{
|
|
case 'g':
|
|
if (name[5] == 'r' &&
|
|
name[6] == 'p')
|
|
{ /* getpgrp */
|
|
return -KEY_getpgrp;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
if (name[5] == 'i' &&
|
|
name[6] == 'd')
|
|
{ /* getppid */
|
|
return -KEY_getppid;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'l':
|
|
if (name[1] == 'c' &&
|
|
name[2] == 'f' &&
|
|
name[3] == 'i' &&
|
|
name[4] == 'r' &&
|
|
name[5] == 's' &&
|
|
name[6] == 't')
|
|
{ /* lcfirst */
|
|
return -KEY_lcfirst;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[1] == 'p' &&
|
|
name[2] == 'e' &&
|
|
name[3] == 'n' &&
|
|
name[4] == 'd' &&
|
|
name[5] == 'i' &&
|
|
name[6] == 'r')
|
|
{ /* opendir */
|
|
return -KEY_opendir;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
if (name[1] == 'a' &&
|
|
name[2] == 'c' &&
|
|
name[3] == 'k' &&
|
|
name[4] == 'a' &&
|
|
name[5] == 'g' &&
|
|
name[6] == 'e')
|
|
{ /* package */
|
|
return KEY_package;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
if (name[1] == 'e')
|
|
{
|
|
switch (name[2])
|
|
{
|
|
case 'a':
|
|
if (name[3] == 'd' &&
|
|
name[4] == 'd' &&
|
|
name[5] == 'i' &&
|
|
name[6] == 'r')
|
|
{ /* readdir */
|
|
return -KEY_readdir;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'q':
|
|
if (name[3] == 'u' &&
|
|
name[4] == 'i' &&
|
|
name[5] == 'r' &&
|
|
name[6] == 'e')
|
|
{ /* require */
|
|
return KEY_require;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'v':
|
|
if (name[3] == 'e' &&
|
|
name[4] == 'r' &&
|
|
name[5] == 's' &&
|
|
name[6] == 'e')
|
|
{ /* reverse */
|
|
return -KEY_reverse;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
switch (name[1])
|
|
{
|
|
case 'e':
|
|
switch (name[2])
|
|
{
|
|
case 'e':
|
|
if (name[3] == 'k' &&
|
|
name[4] == 'd' &&
|
|
name[5] == 'i' &&
|
|
name[6] == 'r')
|
|
{ /* seekdir */
|
|
return -KEY_seekdir;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 't':
|
|
if (name[3] == 'p' &&
|
|
name[4] == 'g' &&
|
|
name[5] == 'r' &&
|
|
name[6] == 'p')
|
|
{ /* setpgrp */
|
|
return -KEY_setpgrp;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'h':
|
|
if (name[2] == 'm' &&
|
|
name[3] == 'r' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 'a' &&
|
|
name[6] == 'd')
|
|
{ /* shmread */
|
|
return -KEY_shmread;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
if (name[2] == 'r' &&
|
|
name[3] == 'i' &&
|
|
name[4] == 'n' &&
|
|
name[5] == 't' &&
|
|
name[6] == 'f')
|
|
{ /* sprintf */
|
|
return -KEY_sprintf;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'y':
|
|
switch (name[2])
|
|
{
|
|
case 'm':
|
|
if (name[3] == 'l' &&
|
|
name[4] == 'i' &&
|
|
name[5] == 'n' &&
|
|
name[6] == 'k')
|
|
{ /* symlink */
|
|
return -KEY_symlink;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
switch (name[3])
|
|
{
|
|
case 'c':
|
|
if (name[4] == 'a' &&
|
|
name[5] == 'l' &&
|
|
name[6] == 'l')
|
|
{ /* syscall */
|
|
return -KEY_syscall;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[4] == 'p' &&
|
|
name[5] == 'e' &&
|
|
name[6] == 'n')
|
|
{ /* sysopen */
|
|
return -KEY_sysopen;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
if (name[4] == 'e' &&
|
|
name[5] == 'a' &&
|
|
name[6] == 'd')
|
|
{ /* sysread */
|
|
return -KEY_sysread;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
if (name[4] == 'e' &&
|
|
name[5] == 'e' &&
|
|
name[6] == 'k')
|
|
{ /* sysseek */
|
|
return -KEY_sysseek;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 't':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 'l' &&
|
|
name[3] == 'l' &&
|
|
name[4] == 'd' &&
|
|
name[5] == 'i' &&
|
|
name[6] == 'r')
|
|
{ /* telldir */
|
|
return -KEY_telldir;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'u':
|
|
switch (name[1])
|
|
{
|
|
case 'c':
|
|
if (name[2] == 'f' &&
|
|
name[3] == 'i' &&
|
|
name[4] == 'r' &&
|
|
name[5] == 's' &&
|
|
name[6] == 't')
|
|
{ /* ucfirst */
|
|
return -KEY_ucfirst;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'n':
|
|
if (name[2] == 's' &&
|
|
name[3] == 'h' &&
|
|
name[4] == 'i' &&
|
|
name[5] == 'f' &&
|
|
name[6] == 't')
|
|
{ /* unshift */
|
|
return -KEY_unshift;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'w':
|
|
if (name[1] == 'a' &&
|
|
name[2] == 'i' &&
|
|
name[3] == 't' &&
|
|
name[4] == 'p' &&
|
|
name[5] == 'i' &&
|
|
name[6] == 'd')
|
|
{ /* waitpid */
|
|
return -KEY_waitpid;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 8: /* 26 tokens of length 8 */
|
|
switch (name[0])
|
|
{
|
|
case 'A':
|
|
if (name[1] == 'U' &&
|
|
name[2] == 'T' &&
|
|
name[3] == 'O' &&
|
|
name[4] == 'L' &&
|
|
name[5] == 'O' &&
|
|
name[6] == 'A' &&
|
|
name[7] == 'D')
|
|
{ /* AUTOLOAD */
|
|
return KEY_AUTOLOAD;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case '_':
|
|
if (name[1] == '_')
|
|
{
|
|
switch (name[2])
|
|
{
|
|
case 'D':
|
|
if (name[3] == 'A' &&
|
|
name[4] == 'T' &&
|
|
name[5] == 'A' &&
|
|
name[6] == '_' &&
|
|
name[7] == '_')
|
|
{ /* __DATA__ */
|
|
return KEY___DATA__;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'F':
|
|
if (name[3] == 'I' &&
|
|
name[4] == 'L' &&
|
|
name[5] == 'E' &&
|
|
name[6] == '_' &&
|
|
name[7] == '_')
|
|
{ /* __FILE__ */
|
|
return -KEY___FILE__;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'L':
|
|
if (name[3] == 'I' &&
|
|
name[4] == 'N' &&
|
|
name[5] == 'E' &&
|
|
name[6] == '_' &&
|
|
name[7] == '_')
|
|
{ /* __LINE__ */
|
|
return -KEY___LINE__;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'c':
|
|
switch (name[1])
|
|
{
|
|
case 'l':
|
|
if (name[2] == 'o' &&
|
|
name[3] == 's' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 'd' &&
|
|
name[6] == 'i' &&
|
|
name[7] == 'r')
|
|
{ /* closedir */
|
|
return -KEY_closedir;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[2] == 'n' &&
|
|
name[3] == 't' &&
|
|
name[4] == 'i' &&
|
|
name[5] == 'n' &&
|
|
name[6] == 'u' &&
|
|
name[7] == 'e')
|
|
{ /* continue */
|
|
return -KEY_continue;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'd':
|
|
if (name[1] == 'b' &&
|
|
name[2] == 'm' &&
|
|
name[3] == 'c' &&
|
|
name[4] == 'l' &&
|
|
name[5] == 'o' &&
|
|
name[6] == 's' &&
|
|
name[7] == 'e')
|
|
{ /* dbmclose */
|
|
return -KEY_dbmclose;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'e':
|
|
if (name[1] == 'n' &&
|
|
name[2] == 'd')
|
|
{
|
|
switch (name[3])
|
|
{
|
|
case 'g':
|
|
if (name[4] == 'r' &&
|
|
name[5] == 'e' &&
|
|
name[6] == 'n' &&
|
|
name[7] == 't')
|
|
{ /* endgrent */
|
|
return -KEY_endgrent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
if (name[4] == 'w' &&
|
|
name[5] == 'e' &&
|
|
name[6] == 'n' &&
|
|
name[7] == 't')
|
|
{ /* endpwent */
|
|
return -KEY_endpwent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'f':
|
|
if (name[1] == 'o' &&
|
|
name[2] == 'r' &&
|
|
name[3] == 'm' &&
|
|
name[4] == 'l' &&
|
|
name[5] == 'i' &&
|
|
name[6] == 'n' &&
|
|
name[7] == 'e')
|
|
{ /* formline */
|
|
return -KEY_formline;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'g':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 't')
|
|
{
|
|
switch (name[3])
|
|
{
|
|
case 'g':
|
|
if (name[4] == 'r')
|
|
{
|
|
switch (name[5])
|
|
{
|
|
case 'e':
|
|
if (name[6] == 'n' &&
|
|
name[7] == 't')
|
|
{ /* getgrent */
|
|
return -KEY_getgrent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'g':
|
|
if (name[6] == 'i' &&
|
|
name[7] == 'd')
|
|
{ /* getgrgid */
|
|
return -KEY_getgrgid;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'n':
|
|
if (name[6] == 'a' &&
|
|
name[7] == 'm')
|
|
{ /* getgrnam */
|
|
return -KEY_getgrnam;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'l':
|
|
if (name[4] == 'o' &&
|
|
name[5] == 'g' &&
|
|
name[6] == 'i' &&
|
|
name[7] == 'n')
|
|
{ /* getlogin */
|
|
return -KEY_getlogin;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
if (name[4] == 'w')
|
|
{
|
|
switch (name[5])
|
|
{
|
|
case 'e':
|
|
if (name[6] == 'n' &&
|
|
name[7] == 't')
|
|
{ /* getpwent */
|
|
return -KEY_getpwent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'n':
|
|
if (name[6] == 'a' &&
|
|
name[7] == 'm')
|
|
{ /* getpwnam */
|
|
return -KEY_getpwnam;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'u':
|
|
if (name[6] == 'i' &&
|
|
name[7] == 'd')
|
|
{ /* getpwuid */
|
|
return -KEY_getpwuid;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 'a' &&
|
|
name[3] == 'd')
|
|
{
|
|
switch (name[4])
|
|
{
|
|
case 'l':
|
|
if (name[5] == 'i' &&
|
|
name[6] == 'n')
|
|
{
|
|
switch (name[7])
|
|
{
|
|
case 'e':
|
|
{ /* readline */
|
|
return -KEY_readline;
|
|
}
|
|
|
|
case 'k':
|
|
{ /* readlink */
|
|
return -KEY_readlink;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
if (name[5] == 'i' &&
|
|
name[6] == 'p' &&
|
|
name[7] == 'e')
|
|
{ /* readpipe */
|
|
return -KEY_readpipe;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
switch (name[1])
|
|
{
|
|
case 'e':
|
|
if (name[2] == 't')
|
|
{
|
|
switch (name[3])
|
|
{
|
|
case 'g':
|
|
if (name[4] == 'r' &&
|
|
name[5] == 'e' &&
|
|
name[6] == 'n' &&
|
|
name[7] == 't')
|
|
{ /* setgrent */
|
|
return -KEY_setgrent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
if (name[4] == 'w' &&
|
|
name[5] == 'e' &&
|
|
name[6] == 'n' &&
|
|
name[7] == 't')
|
|
{ /* setpwent */
|
|
return -KEY_setpwent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'h':
|
|
switch (name[2])
|
|
{
|
|
case 'm':
|
|
if (name[3] == 'w' &&
|
|
name[4] == 'r' &&
|
|
name[5] == 'i' &&
|
|
name[6] == 't' &&
|
|
name[7] == 'e')
|
|
{ /* shmwrite */
|
|
return -KEY_shmwrite;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'u':
|
|
if (name[3] == 't' &&
|
|
name[4] == 'd' &&
|
|
name[5] == 'o' &&
|
|
name[6] == 'w' &&
|
|
name[7] == 'n')
|
|
{ /* shutdown */
|
|
return -KEY_shutdown;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'y':
|
|
if (name[2] == 's' &&
|
|
name[3] == 'w' &&
|
|
name[4] == 'r' &&
|
|
name[5] == 'i' &&
|
|
name[6] == 't' &&
|
|
name[7] == 'e')
|
|
{ /* syswrite */
|
|
return -KEY_syswrite;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 't':
|
|
if (name[1] == 'r' &&
|
|
name[2] == 'u' &&
|
|
name[3] == 'n' &&
|
|
name[4] == 'c' &&
|
|
name[5] == 'a' &&
|
|
name[6] == 't' &&
|
|
name[7] == 'e')
|
|
{ /* truncate */
|
|
return -KEY_truncate;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 9: /* 10 tokens of length 9 */
|
|
switch (name[0])
|
|
{
|
|
case 'U':
|
|
if (name[1] == 'N' &&
|
|
name[2] == 'I' &&
|
|
name[3] == 'T' &&
|
|
name[4] == 'C' &&
|
|
name[5] == 'H' &&
|
|
name[6] == 'E' &&
|
|
name[7] == 'C' &&
|
|
name[8] == 'K')
|
|
{ /* UNITCHECK */
|
|
return KEY_UNITCHECK;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'e':
|
|
switch (name[1])
|
|
{
|
|
case 'n':
|
|
if (name[2] == 'd' &&
|
|
name[3] == 'n' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 't' &&
|
|
name[6] == 'e' &&
|
|
name[7] == 'n' &&
|
|
name[8] == 't')
|
|
{ /* endnetent */
|
|
return -KEY_endnetent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'v':
|
|
if (name[2] == 'a' &&
|
|
name[3] == 'l' &&
|
|
name[4] == 'b' &&
|
|
name[5] == 'y' &&
|
|
name[6] == 't' &&
|
|
name[7] == 'e' &&
|
|
name[8] == 's')
|
|
{ /* evalbytes */
|
|
return (all_keywords || FEATURE_EVALBYTES_IS_ENABLED ? -KEY_evalbytes : 0);
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 'g':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 't' &&
|
|
name[3] == 'n' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 't' &&
|
|
name[6] == 'e' &&
|
|
name[7] == 'n' &&
|
|
name[8] == 't')
|
|
{ /* getnetent */
|
|
return -KEY_getnetent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'l':
|
|
if (name[1] == 'o' &&
|
|
name[2] == 'c' &&
|
|
name[3] == 'a' &&
|
|
name[4] == 'l' &&
|
|
name[5] == 't' &&
|
|
name[6] == 'i' &&
|
|
name[7] == 'm' &&
|
|
name[8] == 'e')
|
|
{ /* localtime */
|
|
return -KEY_localtime;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
if (name[1] == 'r' &&
|
|
name[2] == 'o' &&
|
|
name[3] == 't' &&
|
|
name[4] == 'o' &&
|
|
name[5] == 't' &&
|
|
name[6] == 'y' &&
|
|
name[7] == 'p' &&
|
|
name[8] == 'e')
|
|
{ /* prototype */
|
|
return KEY_prototype;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'q':
|
|
if (name[1] == 'u' &&
|
|
name[2] == 'o' &&
|
|
name[3] == 't' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 'm' &&
|
|
name[6] == 'e' &&
|
|
name[7] == 't' &&
|
|
name[8] == 'a')
|
|
{ /* quotemeta */
|
|
return -KEY_quotemeta;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 'w' &&
|
|
name[3] == 'i' &&
|
|
name[4] == 'n' &&
|
|
name[5] == 'd' &&
|
|
name[6] == 'd' &&
|
|
name[7] == 'i' &&
|
|
name[8] == 'r')
|
|
{ /* rewinddir */
|
|
return -KEY_rewinddir;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 't' &&
|
|
name[3] == 'n' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 't' &&
|
|
name[6] == 'e' &&
|
|
name[7] == 'n' &&
|
|
name[8] == 't')
|
|
{ /* setnetent */
|
|
return -KEY_setnetent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'w':
|
|
if (name[1] == 'a' &&
|
|
name[2] == 'n' &&
|
|
name[3] == 't' &&
|
|
name[4] == 'a' &&
|
|
name[5] == 'r' &&
|
|
name[6] == 'r' &&
|
|
name[7] == 'a' &&
|
|
name[8] == 'y')
|
|
{ /* wantarray */
|
|
return -KEY_wantarray;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 10: /* 9 tokens of length 10 */
|
|
switch (name[0])
|
|
{
|
|
case 'e':
|
|
if (name[1] == 'n' &&
|
|
name[2] == 'd')
|
|
{
|
|
switch (name[3])
|
|
{
|
|
case 'h':
|
|
if (name[4] == 'o' &&
|
|
name[5] == 's' &&
|
|
name[6] == 't' &&
|
|
name[7] == 'e' &&
|
|
name[8] == 'n' &&
|
|
name[9] == 't')
|
|
{ /* endhostent */
|
|
return -KEY_endhostent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
if (name[4] == 'e' &&
|
|
name[5] == 'r' &&
|
|
name[6] == 'v' &&
|
|
name[7] == 'e' &&
|
|
name[8] == 'n' &&
|
|
name[9] == 't')
|
|
{ /* endservent */
|
|
return -KEY_endservent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'g':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 't')
|
|
{
|
|
switch (name[3])
|
|
{
|
|
case 'h':
|
|
if (name[4] == 'o' &&
|
|
name[5] == 's' &&
|
|
name[6] == 't' &&
|
|
name[7] == 'e' &&
|
|
name[8] == 'n' &&
|
|
name[9] == 't')
|
|
{ /* gethostent */
|
|
return -KEY_gethostent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
switch (name[4])
|
|
{
|
|
case 'e':
|
|
if (name[5] == 'r' &&
|
|
name[6] == 'v' &&
|
|
name[7] == 'e' &&
|
|
name[8] == 'n' &&
|
|
name[9] == 't')
|
|
{ /* getservent */
|
|
return -KEY_getservent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[5] == 'c' &&
|
|
name[6] == 'k' &&
|
|
name[7] == 'o' &&
|
|
name[8] == 'p' &&
|
|
name[9] == 't')
|
|
{ /* getsockopt */
|
|
return -KEY_getsockopt;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
switch (name[1])
|
|
{
|
|
case 'e':
|
|
if (name[2] == 't')
|
|
{
|
|
switch (name[3])
|
|
{
|
|
case 'h':
|
|
if (name[4] == 'o' &&
|
|
name[5] == 's' &&
|
|
name[6] == 't' &&
|
|
name[7] == 'e' &&
|
|
name[8] == 'n' &&
|
|
name[9] == 't')
|
|
{ /* sethostent */
|
|
return -KEY_sethostent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
switch (name[4])
|
|
{
|
|
case 'e':
|
|
if (name[5] == 'r' &&
|
|
name[6] == 'v' &&
|
|
name[7] == 'e' &&
|
|
name[8] == 'n' &&
|
|
name[9] == 't')
|
|
{ /* setservent */
|
|
return -KEY_setservent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[5] == 'c' &&
|
|
name[6] == 'k' &&
|
|
name[7] == 'o' &&
|
|
name[8] == 'p' &&
|
|
name[9] == 't')
|
|
{ /* setsockopt */
|
|
return -KEY_setsockopt;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[2] == 'c' &&
|
|
name[3] == 'k' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 't' &&
|
|
name[6] == 'p' &&
|
|
name[7] == 'a' &&
|
|
name[8] == 'i' &&
|
|
name[9] == 'r')
|
|
{ /* socketpair */
|
|
return -KEY_socketpair;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 11: /* 8 tokens of length 11 */
|
|
switch (name[0])
|
|
{
|
|
case '_':
|
|
if (name[1] == '_' &&
|
|
name[2] == 'P' &&
|
|
name[3] == 'A' &&
|
|
name[4] == 'C' &&
|
|
name[5] == 'K' &&
|
|
name[6] == 'A' &&
|
|
name[7] == 'G' &&
|
|
name[8] == 'E' &&
|
|
name[9] == '_' &&
|
|
name[10] == '_')
|
|
{ /* __PACKAGE__ */
|
|
return -KEY___PACKAGE__;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'e':
|
|
if (name[1] == 'n' &&
|
|
name[2] == 'd' &&
|
|
name[3] == 'p' &&
|
|
name[4] == 'r' &&
|
|
name[5] == 'o' &&
|
|
name[6] == 't' &&
|
|
name[7] == 'o' &&
|
|
name[8] == 'e' &&
|
|
name[9] == 'n' &&
|
|
name[10] == 't')
|
|
{ /* endprotoent */
|
|
return -KEY_endprotoent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'g':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 't')
|
|
{
|
|
switch (name[3])
|
|
{
|
|
case 'p':
|
|
switch (name[4])
|
|
{
|
|
case 'e':
|
|
if (name[5] == 'e' &&
|
|
name[6] == 'r' &&
|
|
name[7] == 'n' &&
|
|
name[8] == 'a' &&
|
|
name[9] == 'm' &&
|
|
name[10] == 'e')
|
|
{ /* getpeername */
|
|
return -KEY_getpeername;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'r':
|
|
switch (name[5])
|
|
{
|
|
case 'i':
|
|
if (name[6] == 'o' &&
|
|
name[7] == 'r' &&
|
|
name[8] == 'i' &&
|
|
name[9] == 't' &&
|
|
name[10] == 'y')
|
|
{ /* getpriority */
|
|
return -KEY_getpriority;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[6] == 't' &&
|
|
name[7] == 'o' &&
|
|
name[8] == 'e' &&
|
|
name[9] == 'n' &&
|
|
name[10] == 't')
|
|
{ /* getprotoent */
|
|
return -KEY_getprotoent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 's':
|
|
if (name[4] == 'o' &&
|
|
name[5] == 'c' &&
|
|
name[6] == 'k' &&
|
|
name[7] == 'n' &&
|
|
name[8] == 'a' &&
|
|
name[9] == 'm' &&
|
|
name[10] == 'e')
|
|
{ /* getsockname */
|
|
return -KEY_getsockname;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
if (name[1] == 'e' &&
|
|
name[2] == 't' &&
|
|
name[3] == 'p' &&
|
|
name[4] == 'r')
|
|
{
|
|
switch (name[5])
|
|
{
|
|
case 'i':
|
|
if (name[6] == 'o' &&
|
|
name[7] == 'r' &&
|
|
name[8] == 'i' &&
|
|
name[9] == 't' &&
|
|
name[10] == 'y')
|
|
{ /* setpriority */
|
|
return -KEY_setpriority;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'o':
|
|
if (name[6] == 't' &&
|
|
name[7] == 'o' &&
|
|
name[8] == 'e' &&
|
|
name[9] == 'n' &&
|
|
name[10] == 't')
|
|
{ /* setprotoent */
|
|
return -KEY_setprotoent;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
case 12: /* 2 tokens of length 12 */
|
|
if (name[0] == 'g' &&
|
|
name[1] == 'e' &&
|
|
name[2] == 't' &&
|
|
name[3] == 'n' &&
|
|
name[4] == 'e' &&
|
|
name[5] == 't' &&
|
|
name[6] == 'b' &&
|
|
name[7] == 'y')
|
|
{
|
|
switch (name[8])
|
|
{
|
|
case 'a':
|
|
if (name[9] == 'd' &&
|
|
name[10] == 'd' &&
|
|
name[11] == 'r')
|
|
{ /* getnetbyaddr */
|
|
return -KEY_getnetbyaddr;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'n':
|
|
if (name[9] == 'a' &&
|
|
name[10] == 'm' &&
|
|
name[11] == 'e')
|
|
{ /* getnetbyname */
|
|
return -KEY_getnetbyname;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 13: /* 4 tokens of length 13 */
|
|
if (name[0] == 'g' &&
|
|
name[1] == 'e' &&
|
|
name[2] == 't')
|
|
{
|
|
switch (name[3])
|
|
{
|
|
case 'h':
|
|
if (name[4] == 'o' &&
|
|
name[5] == 's' &&
|
|
name[6] == 't' &&
|
|
name[7] == 'b' &&
|
|
name[8] == 'y')
|
|
{
|
|
switch (name[9])
|
|
{
|
|
case 'a':
|
|
if (name[10] == 'd' &&
|
|
name[11] == 'd' &&
|
|
name[12] == 'r')
|
|
{ /* gethostbyaddr */
|
|
return -KEY_gethostbyaddr;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'n':
|
|
if (name[10] == 'a' &&
|
|
name[11] == 'm' &&
|
|
name[12] == 'e')
|
|
{ /* gethostbyname */
|
|
return -KEY_gethostbyname;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 's':
|
|
if (name[4] == 'e' &&
|
|
name[5] == 'r' &&
|
|
name[6] == 'v' &&
|
|
name[7] == 'b' &&
|
|
name[8] == 'y')
|
|
{
|
|
switch (name[9])
|
|
{
|
|
case 'n':
|
|
if (name[10] == 'a' &&
|
|
name[11] == 'm' &&
|
|
name[12] == 'e')
|
|
{ /* getservbyname */
|
|
return -KEY_getservbyname;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 'p':
|
|
if (name[10] == 'o' &&
|
|
name[11] == 'r' &&
|
|
name[12] == 't')
|
|
{ /* getservbyport */
|
|
return -KEY_getservbyport;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 14: /* 1 tokens of length 14 */
|
|
if (name[0] == 'g' &&
|
|
name[1] == 'e' &&
|
|
name[2] == 't' &&
|
|
name[3] == 'p' &&
|
|
name[4] == 'r' &&
|
|
name[5] == 'o' &&
|
|
name[6] == 't' &&
|
|
name[7] == 'o' &&
|
|
name[8] == 'b' &&
|
|
name[9] == 'y' &&
|
|
name[10] == 'n' &&
|
|
name[11] == 'a' &&
|
|
name[12] == 'm' &&
|
|
name[13] == 'e')
|
|
{ /* getprotobyname */
|
|
return -KEY_getprotobyname;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
case 16: /* 1 tokens of length 16 */
|
|
if (name[0] == 'g' &&
|
|
name[1] == 'e' &&
|
|
name[2] == 't' &&
|
|
name[3] == 'p' &&
|
|
name[4] == 'r' &&
|
|
name[5] == 'o' &&
|
|
name[6] == 't' &&
|
|
name[7] == 'o' &&
|
|
name[8] == 'b' &&
|
|
name[9] == 'y' &&
|
|
name[10] == 'n' &&
|
|
name[11] == 'u' &&
|
|
name[12] == 'm' &&
|
|
name[13] == 'b' &&
|
|
name[14] == 'e' &&
|
|
name[15] == 'r')
|
|
{ /* getprotobynumber */
|
|
return -KEY_getprotobynumber;
|
|
}
|
|
|
|
goto unknown;
|
|
|
|
default:
|
|
goto unknown;
|
|
}
|
|
|
|
unknown:
|
|
return 0;
|
|
}
|
|
|
|
/* Generated from:
|
|
* db0472e0ad4f44bd0816cad799d63b60d1bbd7e11cef40ea15bf0d00f69669f6 regen/keywords.pl
|
|
* ex: set ro: */
|