diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2017-07-11 08:18:11 +0300 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2017-07-11 08:18:11 +0300 |
commit | 4dfba438f210317f2d85516d33faa208e70e4d5c (patch) | |
tree | 9e749a539609e5becd41c818573d4a861700e651 /awkgram.c | |
parent | 1d8243e10c9e2462adcd72ca34702d33bd896d32 (diff) | |
parent | 9e419cfbc401e9b9fd45c8e854fdf5ae799261d5 (diff) | |
download | egawk-4dfba438f210317f2d85516d33faa208e70e4d5c.tar.gz egawk-4dfba438f210317f2d85516d33faa208e70e4d5c.tar.bz2 egawk-4dfba438f210317f2d85516d33faa208e70e4d5c.zip |
Merge branch 'master' into feature/fix-comments
Diffstat (limited to 'awkgram.c')
-rw-r--r-- | awkgram.c | 14 |
1 files changed, 13 insertions, 1 deletions
@@ -6531,7 +6531,7 @@ retry: } } - if (c != '_' && ! is_alpha(c)) { + if (! is_letter(c)) { yyerror(_("invalid char '%c' in expression"), c); return lasttok = LEX_EOF; } @@ -8753,6 +8753,18 @@ is_alnum(int c) } +/* + * is_letter --- function to check letters + * isalpha() isn't good enough since it can look at the locale. + * Underscore counts as a letter in awk identifiers + */ + +bool +is_letter(int c) +{ + return (is_alpha(c) || c == '_'); +} + /* is_identchar --- return true if c can be in an identifier */ bool |