summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-01-21 09:59:45 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-01-21 09:59:45 +0000
commit415c33409280269c970a871c7efde1ee36dbac49 (patch)
tree7912dcf4ec9ecfb7d01567cf71271c31aac11eb7
parent543ed3652fff1be63e2c4452eba8abaa7abc83e4 (diff)
keywords: shrink struct kwtable
* defs/keywords (struct kwtable): shrink since members do not exceed 16bit. lex_state needs to be int (or enum lex_state_e) when EXPR_MAX_STATE reaches it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--defs/keywords2
-rw-r--r--defs/lex.c.src2
-rw-r--r--lex.c.blt2
3 files changed, 3 insertions, 3 deletions
diff --git a/defs/keywords b/defs/keywords
index 7f5422faef..fc30ec2d15 100644
--- a/defs/keywords
+++ b/defs/keywords
@@ -1,5 +1,5 @@
%{
-struct kwtable {int name, id[2], state;};
+struct kwtable {short name, id[2], state;};
const struct kwtable *rb_reserved_word(const char *, unsigned int);
#ifndef RIPPER
static const struct kwtable *reserved_word(/*!ANSI{*/const char *, unsigned int/*}!ANSI*/);
diff --git a/defs/lex.c.src b/defs/lex.c.src
index 7f5422faef..fc30ec2d15 100644
--- a/defs/lex.c.src
+++ b/defs/lex.c.src
@@ -1,5 +1,5 @@
%{
-struct kwtable {int name, id[2], state;};
+struct kwtable {short name, id[2], state;};
const struct kwtable *rb_reserved_word(const char *, unsigned int);
#ifndef RIPPER
static const struct kwtable *reserved_word(/*!ANSI{*/const char *, unsigned int/*}!ANSI*/);
diff --git a/lex.c.blt b/lex.c.blt
index d93a0b84b5..92a4793b00 100644
--- a/lex.c.blt
+++ b/lex.c.blt
@@ -31,7 +31,7 @@
#define gperf_offsetof(s, n) (short)offsetof(struct s##_t, s##_str##n)
#line 1 "defs/keywords"
-struct kwtable {int name, id[2], state;};
+struct kwtable {short name, id[2], state;};
const struct kwtable *rb_reserved_word(const char *, unsigned int);
#ifndef RIPPER
static const struct kwtable *reserved_word(/*const char *, unsigned int*/);