From a7b50be35be6d594423290043f68822f54593c5a Mon Sep 17 00:00:00 2001 From: KOBAYASHI Shuji Date: Wed, 25 Nov 2020 10:17:52 +0900 Subject: Fix C source compilation with `MRB_USE_ALL_SYMBOLS`; ref #5187 However, compiling by `mrbc` fails with another issue (#5116). --- src/symbol.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/symbol.c b/src/symbol.c index c94f6f239..ebb269206 100644 --- a/src/symbol.c +++ b/src/symbol.c @@ -311,7 +311,7 @@ sym2name_len(mrb_state *mrb, mrb_sym sym, char *buf, mrb_int *lenp) if (name) return name; } sym -= MRB_PRESYM_MAX; - + if (sym == 0 || mrb->symidx < sym) { if (lenp) *lenp = 0; return NULL; @@ -324,7 +324,11 @@ sym2name_len(mrb_state *mrb, mrb_sym sym, char *buf, mrb_int *lenp) MRB_API const char* mrb_sym_name_len(mrb_state *mrb, mrb_sym sym, mrb_int *lenp) { +#ifdef MRB_USE_ALL_SYMBOLS + return sym2name_len(mrb, sym, NULL, lenp); +#else return sym2name_len(mrb, sym, mrb->symbuf, lenp); +#endif } mrb_bool -- cgit v1.2.3