1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

label as lvalue is a GCCism

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
shyouhei 2018-01-02 06:41:54 +00:00
parent a6b50f379d
commit 1f76918a33
2 changed files with 5 additions and 6 deletions

View file

@ -1461,9 +1461,9 @@ match_at(regex_t* reg, const UChar* str, const UChar* end,
# define CASE(x) L_##x: sbegin = s; OPCODE_EXEC_HOOK;
# define DEFAULT L_DEFAULT:
# define NEXT sprev = sbegin; JUMP
# define JUMP goto *oplabels[*p++]
# define JUMP RB_GNUC_EXTENSION_BLOCK(goto *oplabels[*p++])
static const void *oplabels[] = {
RB_GNUC_EXTENSION static const void *oplabels[] = {
&&L_OP_FINISH, /* matching process terminator (no more alternative) */
&&L_OP_END, /* pattern code terminator (success end) */
@ -4617,4 +4617,3 @@ onig_copy_encoding(OnigEncodingType *to, OnigEncoding from)
{
*to = *from;
}

View file

@ -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");