From 98d099be7e6d0251a7909dfeed10b13f453cc0f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=9C=E9=83=A8=E6=98=8C=E5=B9=B3?= Date: Wed, 3 Jun 2020 18:33:59 +0900 Subject: vm_empty_cc: fix MSVC compile error Seems they do not allow compound literals for static variables. See https://github.com/ruby/ruby/runs/733735274 --- vm.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/vm.c b/vm.c index e243f0ef00..a6f8d927d2 100644 --- a/vm.c +++ b/vm.c @@ -386,7 +386,15 @@ rb_serial_t ruby_vm_global_method_state = 1; rb_serial_t ruby_vm_global_constant_state = 1; rb_serial_t ruby_vm_class_serial = 1; -static const struct rb_callcache vm_empty_cc = VM_CC_ON_STACK(0, vm_call_general, { 0 }, 0); +static const struct rb_callcache vm_empty_cc = { + .flags = T_IMEMO | (imemo_callcache << FL_USHIFT) | VM_CALLCACHE_UNMARKABLE, + .klass = Qfalse, + .cme_ = NULL, + .call_ = vm_call_general, + .aux_ = { + .v = Qfalse, + } +}; static void thread_free(void *ptr); -- cgit v1.2.3