mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
fix build for MRB_NO_BOXING + MRB_INT64 on 32-bit
- array.h: disable embedded arrays when MRB_INT64 makes mrb_value too large to embed (fixes MRB_ARY_EMBED_LEN_MAX assertion) - error.h: enable MRB_USE_RBREAK_VALUE_UNION for all 32-bit no-boxing builds (MRB_USE_FLOAT32 is irrelevant without word/nan boxing) - gc.c: restrict RVALUE 8-byte alignment padding to MRB_WORD_BOXING builds (fixes RVALUE size assertion) - vm.c: guard direct ary->as.ary access with MRB_ARY_NO_EMBED Fixes #6722. Co-authored-by: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -20,7 +20,7 @@ typedef struct mrb_shared_array {
|
||||
mrb_value *ptr;
|
||||
} mrb_shared_array;
|
||||
|
||||
#if defined(MRB_32BIT) && defined(MRB_NO_BOXING) && !defined(MRB_USE_FLOAT32) && !defined(MRB_ARY_NO_EMBED)
|
||||
#if defined(MRB_32BIT) && defined(MRB_NO_BOXING) && (!defined(MRB_USE_FLOAT32) || defined(MRB_INT64)) && !defined(MRB_ARY_NO_EMBED)
|
||||
# define MRB_ARY_NO_EMBED
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user