Blame tests/modula2.exp

Packit b27855
/* ANSI-C code produced by gperf version 3.1 */
Packit b27855
/* Command-line: ../src/gperf -n -k1-8 -l  */
Packit b27855
Packit b27855
#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
Packit b27855
      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
Packit b27855
      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
Packit b27855
      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
Packit b27855
      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
Packit b27855
      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
Packit b27855
      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
Packit b27855
      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
Packit b27855
      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
Packit b27855
      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
Packit b27855
      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
Packit b27855
      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
Packit b27855
      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
Packit b27855
      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
Packit b27855
      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
Packit b27855
      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
Packit b27855
      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
Packit b27855
      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
Packit b27855
      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
Packit b27855
      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
Packit b27855
      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
Packit b27855
      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
Packit b27855
      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
Packit b27855
/* The character set is not based on ISO-646.  */
Packit b27855
#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gperf@gnu.org>."
Packit b27855
#endif
Packit b27855
Packit b27855
Packit b27855
#define TOTAL_KEYWORDS 40
Packit b27855
#define MIN_WORD_LENGTH 2
Packit b27855
#define MAX_WORD_LENGTH 14
Packit b27855
#define MIN_HASH_VALUE 1
Packit b27855
#define MAX_HASH_VALUE 155
Packit b27855
/* maximum key range = 155, duplicates = 0 */
Packit b27855
Packit b27855
#ifdef __GNUC__
Packit b27855
__inline
Packit b27855
#else
Packit b27855
#ifdef __cplusplus
Packit b27855
inline
Packit b27855
#endif
Packit b27855
#endif
Packit b27855
static unsigned int
Packit b27855
hash (register const char *str, register size_t len)
Packit b27855
{
Packit b27855
  static unsigned char asso_values[] =
Packit b27855
    {
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156,   1,  10,  30,  25,   0,
Packit b27855
       10,  55,   6,   0, 156, 156,  15,  15,  35,  15,
Packit b27855
       30,   0,   5,   1,   0,  45,  21,  45,   6,   1,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
Packit b27855
      156, 156, 156, 156, 156, 156
Packit b27855
    };
Packit b27855
  register unsigned int hval = 0;
Packit b27855
Packit b27855
  switch (len)
Packit b27855
    {
Packit b27855
      default:
Packit b27855
        hval += asso_values[(unsigned char)str[7]];
Packit b27855
      /*FALLTHROUGH*/
Packit b27855
      case 7:
Packit b27855
        hval += asso_values[(unsigned char)str[6]];
Packit b27855
      /*FALLTHROUGH*/
Packit b27855
      case 6:
Packit b27855
        hval += asso_values[(unsigned char)str[5]];
Packit b27855
      /*FALLTHROUGH*/
Packit b27855
      case 5:
Packit b27855
        hval += asso_values[(unsigned char)str[4]];
Packit b27855
      /*FALLTHROUGH*/
Packit b27855
      case 4:
Packit b27855
        hval += asso_values[(unsigned char)str[3]];
Packit b27855
      /*FALLTHROUGH*/
Packit b27855
      case 3:
Packit b27855
        hval += asso_values[(unsigned char)str[2]];
Packit b27855
      /*FALLTHROUGH*/
Packit b27855
      case 2:
Packit b27855
        hval += asso_values[(unsigned char)str[1]];
Packit b27855
      /*FALLTHROUGH*/
Packit b27855
      case 1:
Packit b27855
        hval += asso_values[(unsigned char)str[0]];
Packit b27855
        break;
Packit b27855
    }
Packit b27855
  return hval;
Packit b27855
}
Packit b27855
Packit b27855
const char *
Packit b27855
in_word_set (register const char *str, register size_t len)
Packit b27855
{
Packit b27855
  static unsigned char lengthtable[] =
Packit b27855
    {
Packit b27855
       0,  3,  0,  0,  0,  0,  4,  0,  0,  0,  2,  2,  0,  5,
Packit b27855
       0,  2,  4,  0,  0,  0,  2,  0,  0,  0,  0,  2,  5,  3,
Packit b27855
       0,  0,  3,  4,  4,  0,  0,  2,  6,  0,  0,  0,  2,  4,
Packit b27855
       0,  0,  0,  4,  3,  0,  0,  0,  3,  4,  0,  0,  0,  3,
Packit b27855
       6,  0,  0,  0,  3,  3,  0,  0,  0,  6,  5,  0,  0,  0,
Packit b27855
      10,  9,  0,  0,  0,  4,  0,  0,  0,  0,  6,  5,  0,  0,
Packit b27855
       0,  7,  0,  0,  0,  0,  6,  0,  0,  0,  0,  5,  0,  0,
Packit b27855
       0,  0,  5,  0,  0,  0,  0,  0,  0,  0,  0,  0, 14,  0,
Packit b27855
       0,  0,  0,  6,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
Packit b27855
       0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
Packit b27855
       0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
Packit b27855
       0,  9
Packit b27855
    };
Packit b27855
  static const char * wordlist[] =
Packit b27855
    {
Packit b27855
      "",
Packit b27855
      "SET",
Packit b27855
      "", "", "", "",
Packit b27855
      "EXIT",
Packit b27855
      "", "", "",
Packit b27855
      "IF",
Packit b27855
      "BY",
Packit b27855
      "",
Packit b27855
      "ARRAY",
Packit b27855
      "",
Packit b27855
      "TO",
Packit b27855
      "ELSE",
Packit b27855
      "", "", "",
Packit b27855
      "OR",
Packit b27855
      "", "", "", "",
Packit b27855
      "OF",
Packit b27855
      "ELSIF",
Packit b27855
      "VAR",
Packit b27855
      "", "",
Packit b27855
      "FOR",
Packit b27855
      "TYPE",
Packit b27855
      "CASE",
Packit b27855
      "", "",
Packit b27855
      "IN",
Packit b27855
      "REPEAT",
Packit b27855
      "", "", "",
Packit b27855
      "DO",
Packit b27855
      "THEN",
Packit b27855
      "", "", "",
Packit b27855
      "FROM",
Packit b27855
      "DIV",
Packit b27855
      "", "", "",
Packit b27855
      "NOT",
Packit b27855
      "WITH",
Packit b27855
      "", "", "",
Packit b27855
      "MOD",
Packit b27855
      "EXPORT",
Packit b27855
      "", "", "",
Packit b27855
      "END",
Packit b27855
      "AND",
Packit b27855
      "", "", "",
Packit b27855
      "IMPORT",
Packit b27855
      "WHILE",
Packit b27855
      "", "", "",
Packit b27855
      "DEFINITION",
Packit b27855
      "QUALIFIED",
Packit b27855
      "", "", "",
Packit b27855
      "LOOP",
Packit b27855
      "", "", "", "",
Packit b27855
      "RECORD",
Packit b27855
      "CONST",
Packit b27855
      "", "", "",
Packit b27855
      "POINTER",
Packit b27855
      "", "", "", "",
Packit b27855
      "RETURN",
Packit b27855
      "", "", "", "",
Packit b27855
      "UNTIL",
Packit b27855
      "", "", "", "",
Packit b27855
      "BEGIN",
Packit b27855
      "", "", "", "", "", "", "", "", "",
Packit b27855
      "IMPLEMENTATION",
Packit b27855
      "", "", "", "",
Packit b27855
      "MODULE",
Packit b27855
      "", "", "", "", "", "", "", "", "",
Packit b27855
      "", "", "", "", "", "", "", "", "",
Packit b27855
      "", "", "", "", "", "", "", "", "",
Packit b27855
      "", "", "", "", "", "", "", "", "",
Packit b27855
      "", "", "",
Packit b27855
      "PROCEDURE"
Packit b27855
    };
Packit b27855
Packit b27855
  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
Packit b27855
    {
Packit b27855
      register unsigned int key = hash (str, len);
Packit b27855
Packit b27855
      if (key <= MAX_HASH_VALUE)
Packit b27855
        if (len == lengthtable[key])
Packit b27855
          {
Packit b27855
            register const char *s = wordlist[key];
Packit b27855
Packit b27855
            if (*str == *s && !memcmp (str + 1, s + 1, len - 1))
Packit b27855
              return s;
Packit b27855
          }
Packit b27855
    }
Packit b27855
  return 0;
Packit b27855
}