diff --git a/builtin.h b/builtin.h index f4d485e08d..ce02720e32 100644 --- a/builtin.h +++ b/builtin.h @@ -22,8 +22,9 @@ struct rb_builtin_function { void rb_load_with_builtin_functions(const char *feature_name, const struct rb_builtin_function *table); -#ifndef VM_CORE_H_EC_DEFINED +#ifndef rb_execution_context_t typedef struct rb_execution_context_struct rb_execution_context_t; +#define rb_execution_context_t rb_execution_context_t #endif /* The following code is generated by the following Ruby script: diff --git a/vm_core.h b/vm_core.h index 754ce981e6..76757dce66 100644 --- a/vm_core.h +++ b/vm_core.h @@ -827,7 +827,7 @@ typedef char rb_thread_id_string_t[sizeof(rb_nativethread_id_t) * 2 + 3]; typedef struct rb_fiber_struct rb_fiber_t; -typedef struct rb_execution_context_struct { +struct rb_execution_context_struct { /* execution information */ VALUE *vm_stack; /* must free, must mark */ size_t vm_stack_size; /* size in word (byte size / sizeof(VALUE)) */ @@ -876,7 +876,12 @@ typedef struct rb_execution_context_struct { size_t stack_maxsize; RUBY_ALIGNAS(SIZEOF_VALUE) jmp_buf regs; } machine; -} rb_execution_context_t; +}; + +#ifndef rb_execution_context_t +typedef struct rb_execution_context_struct rb_execution_context_t; +#define rb_execution_context_t rb_execution_context_t +#endif // for builtin.h #define VM_CORE_H_EC_DEFINED 1