diff --git a/parse.y b/parse.y index d0c6a28a857fb2..c2f6683166dbb9 100644 --- a/parse.y +++ b/parse.y @@ -6351,6 +6351,17 @@ ripper_dispatch_delayed_token(struct parser_params *p, enum yytokentype t) #define dispatch_delayed_token(p, t) ripper_dispatch_delayed_token(p, t) #endif /* RIPPER */ +static inline int +parse_isascii(int c) +{ + return '\0' <= c && c <= '\x7f'; +} + +#ifdef ISASCII +#undef ISASCII +#define ISASCII parse_isascii +#endif + static inline int is_identchar(struct parser_params *p, const char *ptr, const char *MAYBE_UNUSED(ptr_end), rb_encoding *enc) { diff --git a/ruby_parser.c b/ruby_parser.c index 94c2c1f4eca83c..9a2c067b69b07f 100644 --- a/ruby_parser.c +++ b/ruby_parser.c @@ -791,7 +791,6 @@ rb_parser_config_initialize(rb_parser_config_t *config) config->strtod = ruby_strtod; config->isspace = rb_isspace; - config->isascii = rb_isascii; config->iscntrl = rb_iscntrl; config->isalpha = rb_isalpha; config->isdigit = rb_isdigit; diff --git a/rubyparser.h b/rubyparser.h index 848002e64e9ed9..8ca6f0065e2a9b 100644 --- a/rubyparser.h +++ b/rubyparser.h @@ -588,7 +588,6 @@ typedef struct rb_parser_config_struct { /* ctype */ int (*isspace)(int c); - int (*isascii)(int c); int (*iscntrl)(int c); int (*isalpha)(int c); int (*isdigit)(int c);