]> git.ipfire.org Git - thirdparty/HylaFAX.git/commitdiff
Cleanups in regex/
authorAidan Van Dyk <aidan@ifax.com>
Wed, 14 Mar 2007 18:06:48 +0000 (18:06 +0000)
committerAidan Van Dyk <aidan@ifax.com>
Wed, 14 Mar 2007 18:06:48 +0000 (18:06 +0000)
regex/cclass.h
regex/cname.h
regex/engine.c
regex/regcomp.c
regex/regerror.c

index a29a92ee9c460fa2d6be692a29a6cdba8b1974bc..88bef976ae06babc6e9f3a424b0d7ef7c6f3df23 100644 (file)
@@ -43,28 +43,28 @@ static struct cclass {
        char *chars;
        char *multis;
 } cclasses[] = {
-       "alnum",        "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\
-0123456789",                           "",
-       "alpha",        "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",
-                                       "",
-       "blank",        " \t",          "",
-       "cntrl",        "\007\b\t\n\v\f\r\1\2\3\4\5\6\16\17\20\21\22\23\24\
-\25\26\27\30\31\32\33\34\35\36\37\177",        "",
-       "digit",        "0123456789",   "",
-       "graph",        "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\
+       { "alnum",      "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\
+0123456789",                           "" },
+       { "alpha",      "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",
+                                       "" },
+       { "blank",      " \t",          "" },
+       { "cntrl",      "\007\b\t\n\v\f\r\1\2\3\4\5\6\16\17\20\21\22\23\24\
+\25\26\27\30\31\32\33\34\35\36\37\177",        "" },
+       { "digit",      "0123456789",   "" },
+       { "graph",      "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\
 0123456789!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
-                                       "",
-       "lower",        "abcdefghijklmnopqrstuvwxyz",
-                                       "",
-       "print",        "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\
+                                       "" },
+       { "lower",      "abcdefghijklmnopqrstuvwxyz",
+                                       "" },
+       { "print",      "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\
 0123456789!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~ ",
-                                       "",
-       "punct",        "!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
-                                       "",
-       "space",        "\t\n\v\f\r ",  "",
-       "upper",        "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
-                                       "",
-       "xdigit",       "0123456789ABCDEFabcdef",
-                                       "",
-       NULL,           0,              ""
+                                       "" },
+       { "punct",      "!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
+                                       "" },
+       { "space",      "\t\n\v\f\r ",  "" },
+       { "upper",      "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
+                                       "" },
+       { "xdigit",     "0123456789ABCDEFabcdef",
+                                       "" },
+       { NULL,         0,              "" }
 };
index c1632ebb1f56a730d5b2572060757557a87680af..e50b2cef201b7854c8bfef9459342c43a8658727 100644 (file)
@@ -42,100 +42,100 @@ static struct cname {
        char *name;
        char code;
 } cnames[] = {
-       "NUL",  '\0',
-       "SOH",  '\001',
-       "STX",  '\002',
-       "ETX",  '\003',
-       "EOT",  '\004',
-       "ENQ",  '\005',
-       "ACK",  '\006',
-       "BEL",  '\007',
-       "alert",        '\007',
-       "BS",           '\010',
-       "backspace",    '\b',
-       "HT",           '\011',
-       "tab",          '\t',
-       "LF",           '\012',
-       "newline",      '\n',
-       "VT",           '\013',
-       "vertical-tab", '\v',
-       "FF",           '\014',
-       "form-feed",    '\f',
-       "CR",           '\015',
-       "carriage-return",      '\r',
-       "SO",   '\016',
-       "SI",   '\017',
-       "DLE",  '\020',
-       "DC1",  '\021',
-       "DC2",  '\022',
-       "DC3",  '\023',
-       "DC4",  '\024',
-       "NAK",  '\025',
-       "SYN",  '\026',
-       "ETB",  '\027',
-       "CAN",  '\030',
-       "EM",   '\031',
-       "SUB",  '\032',
-       "ESC",  '\033',
-       "IS4",  '\034',
-       "FS",   '\034',
-       "IS3",  '\035',
-       "GS",   '\035',
-       "IS2",  '\036',
-       "RS",   '\036',
-       "IS1",  '\037',
-       "US",   '\037',
-       "space",                ' ',
-       "exclamation-mark",     '!',
-       "quotation-mark",       '"',
-       "number-sign",          '#',
-       "dollar-sign",          '$',
-       "percent-sign",         '%',
-       "ampersand",            '&',
-       "apostrophe",           '\'',
-       "left-parenthesis",     '(',
-       "right-parenthesis",    ')',
-       "asterisk",     '*',
-       "plus-sign",    '+',
-       "comma",        ',',
-       "hyphen",       '-',
-       "hyphen-minus", '-',
-       "period",       '.',
-       "full-stop",    '.',
-       "slash",        '/',
-       "solidus",      '/',
-       "zero",         '0',
-       "one",          '1',
-       "two",          '2',
-       "three",        '3',
-       "four",         '4',
-       "five",         '5',
-       "six",          '6',
-       "seven",        '7',
-       "eight",        '8',
-       "nine",         '9',
-       "colon",        ':',
-       "semicolon",    ';',
-       "less-than-sign",       '<',
-       "equals-sign",          '=',
-       "greater-than-sign",    '>',
-       "question-mark",        '?',
-       "commercial-at",        '@',
-       "left-square-bracket",  '[',
-       "backslash",            '\\',
-       "reverse-solidus",      '\\',
-       "right-square-bracket", ']',
-       "circumflex",           '^',
-       "circumflex-accent",    '^',
-       "underscore",           '_',
-       "low-line",             '_',
-       "grave-accent",         '`',
-       "left-brace",           '{',
-       "left-curly-bracket",   '{',
-       "vertical-line",        '|',
-       "right-brace",          '}',
-       "right-curly-bracket",  '}',
-       "tilde",                '~',
-       "DEL",  '\177',
-       NULL,   0,
+       { "NUL",        '\0' },
+       { "SOH",        '\001' },
+       { "STX",        '\002' },
+       { "ETX",        '\003' },
+       { "EOT",        '\004' },
+       { "ENQ",        '\005' },
+       { "ACK",        '\006' },
+       { "BEL",        '\007' },
+       { "alert",      '\007' },
+       { "BS",         '\010' },
+       { "backspace",  '\b' },
+       { "HT",         '\011' },
+       { "tab",        '\t' },
+       { "LF",         '\012' },
+       { "newline",    '\n' },
+       { "VT",         '\013' },
+       { "vertical-tab",       '\v' },
+       { "FF",         '\014' },
+       { "form-feed",  '\f' },
+       { "CR",         '\015' },
+       { "carriage-return",    '\r' },
+       { "SO", '\016' },
+       { "SI", '\017' },
+       { "DLE",        '\020' },
+       { "DC1",        '\021' },
+       { "DC2",        '\022' },
+       { "DC3",        '\023' },
+       { "DC4",        '\024' },
+       { "NAK",        '\025' },
+       { "SYN",        '\026' },
+       { "ETB",        '\027' },
+       { "CAN",        '\030' },
+       { "EM",         '\031' },
+       { "SUB",        '\032' },
+       { "ESC",        '\033' },
+       { "IS4",        '\034' },
+       { "FS",         '\034' },
+       { "IS3",        '\035' },
+       { "GS",         '\035' },
+       { "IS2",        '\036' },
+       { "RS",         '\036' },
+       { "IS1",        '\037' },
+       { "US",         '\037' },
+       { "space",              ' ' },
+       { "exclamation-mark",   '!' },
+       { "quotation-mark",     '"' },
+       { "number-sign",        '#' },
+       { "dollar-sign",        '$' },
+       { "percent-sign",       '%' },
+       { "ampersand",          '&' },
+       { "apostrophe",         '\'' },
+       { "left-parenthesis",   '(' },
+       { "right-parenthesis",  ')' },
+       { "asterisk",   '*' },
+       { "plus-sign",  '+' },
+       { "comma",      ',' },
+       { "hyphen",     '-' },
+       { "hyphen-minus",       '-' },
+       { "period",     '.' },
+       { "full-stop",  '.' },
+       { "slash",      '/' },
+       { "solidus",    '/' },
+       { "zero",       '0' },
+       { "one",        '1' },
+       { "two",        '2' },
+       { "three",      '3' },
+       { "four",       '4' },
+       { "five",       '5' },
+       { "six",        '6' },
+       { "seven",      '7' },
+       { "eight",      '8' },
+       { "nine",       '9' },
+       { "colon",      ':' },
+       { "semicolon",  ';' },
+       { "less-than-sign",     '<' },
+       { "equals-sign",        '=' },
+       { "greater-than-sign",  '>' },
+       { "question-mark",      '?' },
+       { "commercial-at",      '@' },
+       { "left-square-bracket",        '[' },
+       { "backslash",          '\\' },
+       { "reverse-solidus",    '\\' },
+       { "right-square-bracket",       ']' },
+       { "circumflex",         '^' },
+       { "circumflex-accent",  '^' },
+       { "underscore",         '_' },
+       { "low-line",           '_' },
+       { "grave-accent",       '`' },
+       { "left-brace",         '{' },
+       { "left-curly-bracket", '{' },
+       { "vertical-line",      '|' },
+       { "right-brace",        '}' },
+       { "right-curly-bracket",'}' },
+       { "tilde",              '~' },
+       { "DEL",        '\177' },
+       { NULL, 0 }
 };
index 85881824be978e5d8654018f12716d8447aa5184..32b1785635b00fd483cba255433c6b09813a104a 100644 (file)
@@ -679,6 +679,7 @@ sopno lev;                  /* PLUS nesting level */
        /* "can't happen" */
        assert(nope);
        /* NOTREACHED */
+       return(NULL);
 }
 
 /*
index 19f21aa654d13ef768127f2a8b0035d30f557a5a..b688cd888accf6b53b4d010074418f61118c76ef 100644 (file)
@@ -146,7 +146,7 @@ static char nuls[10];               /* place to point scanner in event of error */
 #define        NEXTn(n)        (p->next += (n))
 #define        GETNEXT()       (*p->next++)
 #define        SETERROR(e)     seterr(p, (e))
-#define        REQUIRE(co, e)  ((co) || SETERROR(e))
+#define        REQUIRE(co, e)  (void) ((co) || SETERROR(e))
 #define        MUSTSEE(c, e)   (REQUIRE(MORE() && PEEK() == (c), e))
 #define        MUSTEAT(c, e)   (REQUIRE(MORE() && GETNEXT() == (c), e))
 #define        MUSTNOTSEE(c, e)        (REQUIRE(!MORE() || PEEK() != (c), e))
@@ -287,8 +287,8 @@ register struct parse *p;
 int stop;                      /* character this ERE should end at */
 {
        register char c;
-       register sopno prevback;
-       register sopno prevfwd;
+       register sopno prevback = HERE();
+       register sopno prevfwd = HERE();
        register sopno conc;
        register int first = 1;         /* is this the first alternative? */
 
@@ -1593,8 +1593,8 @@ struct parse *p;
 register struct re_guts *g;
 {
        register sop *scan;
-       sop *start;
-       register sop *newstart;
+       sop *start = g->strip;
+       register sop *newstart = g->strip;
        register sopno newlen;
        register sop s;
        register char *cp;
index b7fb3bf193b584c524acc71d1ffe0ad3a16109ce..ee92bc4182d570716ea9f40ec733ee6ad00b057b 100644 (file)
@@ -88,23 +88,23 @@ static struct rerr {
        char *name;
        char *explain;
 } rerrs[] = {
-       REG_NOMATCH,    "REG_NOMATCH",  "regexec() failed to match",
-       REG_BADPAT,     "REG_BADPAT",   "invalid regular expression",
-       REG_ECOLLATE,   "REG_ECOLLATE", "invalid collating element",
-       REG_ECTYPE,     "REG_ECTYPE",   "invalid character class",
-       REG_EESCAPE,    "REG_EESCAPE",  "trailing backslash (\\)",
-       REG_ESUBREG,    "REG_ESUBREG",  "invalid backreference number",
-       REG_EBRACK,     "REG_EBRACK",   "brackets ([ ]) not balanced",
-       REG_EPAREN,     "REG_EPAREN",   "parentheses not balanced",
-       REG_EBRACE,     "REG_EBRACE",   "braces not balanced",
-       REG_BADBR,      "REG_BADBR",    "invalid repetition count(s)",
-       REG_ERANGE,     "REG_ERANGE",   "invalid character range",
-       REG_ESPACE,     "REG_ESPACE",   "out of memory",
-       REG_BADRPT,     "REG_BADRPT",   "repetition-operator operand invalid",
-       REG_EMPTY,      "REG_EMPTY",    "empty (sub)expression",
-       REG_ASSERT,     "REG_ASSERT",   "\"can't happen\" -- you found a bug",
-       REG_INVARG,     "REG_INVARG",   "invalid argument to regex routine",
-       0,              "",             "*** unknown regexp error code ***",
+       { REG_NOMATCH,  "REG_NOMATCH",  "regexec() failed to match" },
+       { REG_BADPAT,   "REG_BADPAT",   "invalid regular expression" },
+       { REG_ECOLLATE, "REG_ECOLLATE", "invalid collating element" },
+       { REG_ECTYPE,   "REG_ECTYPE",   "invalid character class" },
+       { REG_EESCAPE,  "REG_EESCAPE",  "trailing backslash (\\)" },
+       { REG_ESUBREG,  "REG_ESUBREG",  "invalid backreference number" },
+       { REG_EBRACK,   "REG_EBRACK",   "brackets ([ ]) not balanced" },
+       { REG_EPAREN,   "REG_EPAREN",   "parentheses not balanced" },
+       { REG_EBRACE,   "REG_EBRACE",   "braces not balanced" },
+       { REG_BADBR,    "REG_BADBR",    "invalid repetition count(s)" },
+       { REG_ERANGE,   "REG_ERANGE",   "invalid character range" },
+       { REG_ESPACE,   "REG_ESPACE",   "out of memory" },
+       { REG_BADRPT,   "REG_BADRPT",   "repetition-operator operand invalid" },
+       { REG_EMPTY,    "REG_EMPTY",    "empty (sub)expression" },
+       { REG_ASSERT,   "REG_ASSERT",   "\"can't happen\" -- you found a bug" },
+       { REG_INVARG,   "REG_INVARG",   "invalid argument to regex routine" },
+       { 0,            "",             "*** unknown regexp error code ***" }
 };
 
 /*