diff options
author | shyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-01-02 06:41:54 +0000 |
---|---|---|
committer | shyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-01-02 06:41:54 +0000 |
commit | 1f76918a33c1ca0e563910940f292303016f34fe (patch) | |
tree | 51a0c09acea1c4e52090facc58c968357c08e52d /vm_exec.h | |
parent | a6b50f379d4b71acac73ac6b22cbe2d2c5b50b3f (diff) | |
download | ruby-1f76918a33c1ca0e563910940f292303016f34fe.tar.gz |
label as lvalue is a GCCism
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_exec.h')
-rw-r--r-- | vm_exec.h | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -75,7 +75,7 @@ error ! #define LABEL(x) INSN_LABEL_##x #define ELABEL(x) INSN_ELABEL_##x -#define LABEL_PTR(x) &&LABEL(x) +#define LABEL_PTR(x) RB_GNUC_EXTENSION(&&LABEL(x)) #define INSN_ENTRY_SIG(insn) \ if (0) fprintf(stderr, "exec: %s@(%d, %d)@%s:%d\n", #insn, \ @@ -106,7 +106,7 @@ error ! /* for GCC 3.4.x */ #define TC_DISPATCH(insn) \ INSN_DISPATCH_SIG(insn); \ - goto *(void const *)GET_CURRENT_INSN(); \ + RB_GNUC_EXTENSION_BLOCK(goto *(void const *)GET_CURRENT_INSN()); \ ; #else @@ -115,7 +115,7 @@ error ! #define TC_DISPATCH(insn) \ DISPATCH_ARCH_DEPEND_WAY(insns_address_table[GET_CURRENT_INSN()]); \ INSN_DISPATCH_SIG(insn); \ - goto *insns_address_table[GET_CURRENT_INSN()]; \ + RB_GNUC_EXTENSION_BLOCK(goto *insns_address_table[GET_CURRENT_INSN()]); \ rb_bug("tc error"); |