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:
parent
a6b50f379d
commit
1f76918a33
2 changed files with 5 additions and 6 deletions
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
@ -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");
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue