CppTokeniserFunctions Corrections: Some Keywords Missing and Mistakes


#1
static const char* const keywords2Char[] =
    { "if", "do", "or", nullptr };

static const char* const keywords3Char[] =
    { "and", "asm", "for", "int", "new", "not", "try", "xor", nullptr };

static const char* const keywords4Char[] =
    { "auto", "bool", "case", "char", "else", "enum", "goto", "long",
        "this", "true", "void", nullptr };

static const char* const keywords5Char[] =
    { "bitor", "break", "catch", "class", "compl", "const", "false",
        "final", "float", "or_eq", "short", "throw", "union", "using",
        "while", nullptr };

static const char* const keywords6Char[] =
    { "and_eq", "bitand", "delete", "double", "export", "extern", "friend",
        "inline", "not_eq", "public", "return", "signed", "sizeof", "static",
        "struct", "switch", "typeid", "xor_eq", nullptr };

static const char* const keywords7Char[] =
    { "alignas", "alignof", "default", "mutable", "nullptr", "private",
        "typedef", "virtual", "wchar_t", nullptr };

static const char* const keywordsOther[] =
    { "char16_t", "char32_t", "const_cast", "constexpr", "continue", "decltype", "dynamic_cast",
        "explicit", "namespace", "noexcept", "operator", "protected", "register", "reinterpret_cast",
        "static_assert", "static_cast", "template", "thread_local", "typename", "unsigned", "volatile",
        "@class", "@dynamic", "@end", "@implementation", "@interface", "@public", "@private",
        "@protected", "@property", "@synthesize", nullptr };

Above contains the corrections (had to sort the lists to be sure of anything else missing).


#2

Ok, ta, will check that. I was vaguely trying to keep the lists in order of how commonly the keywords occur, but TBH it wouldn't make much difference to performance.