ruby-changes:7037
From: nobu <ko1@a...>
Date: Wed, 13 Aug 2008 14:00:44 +0900 (JST)
Subject: [ruby-changes:7037] Ruby:r18555 (trunk): * common.mk (parse.c): generates parse.h together.
nobu 2008-08-13 14:00:26 +0900 (Wed, 13 Aug 2008) New Revision: 18555 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=18555 Log: * common.mk (parse.c): generates parse.h together. * id.c, id.h: use constants for parser tokens. Modified files: trunk/ChangeLog trunk/common.mk trunk/id.c trunk/id.h Index: ChangeLog =================================================================== --- ChangeLog (revision 18554) +++ ChangeLog (revision 18555) @@ -1,3 +1,9 @@ +Wed Aug 13 14:00:19 2008 Nobuyoshi Nakada <nobu@r...> + + * common.mk (parse.c): generates parse.h together. + + * id.c, id.h: use constants for parser tokens. + Wed Aug 13 13:47:05 2008 Koichi Sasada <ko1@a...> * vm.c: rewind cfp to show proper backtrace. Index: common.mk =================================================================== --- common.mk (revision 18554) +++ common.mk (revision 18555) @@ -392,10 +392,12 @@ {$(VPATH)}parse.c: {$(VPATH)}parse.y $(srcdir)/tool/ytab.sed {$(srcdir)}.y.c: - $(YACC) $(YFLAGS) -o y.tab.c $< + $(YACC) -d $(YFLAGS) -o y.tab.c $< sed -f $(srcdir)/tool/ytab.sed -e "/^#/s!y\.tab\.c!$@!" y.tab.c > $@.new - @$(RM) $@ y.tab.c @$(MV) $@.new $@ + sed -e "/^#/s!y\.tab\.h!$(@:.c=.h)!" y.tab.h > $(@:.c=.h).new + @$(MV) $(@:.c=.h).new $(@:.c=.h) + @$(RM) y.tab.c y.tab.h acosh.$(OBJEXT): {$(VPATH)}acosh.c alloca.$(OBJEXT): {$(VPATH)}alloca.c {$(VPATH)}config.h Index: id.c =================================================================== --- id.c (revision 18554) +++ id.c (revision 18555) @@ -11,6 +11,7 @@ #include "ruby/ruby.h" +#define YYSTYPE_IS_DECLARED #define extern #include "id.h" #undef extern @@ -25,26 +26,6 @@ symCFUNC = ID2SYM(rb_intern("<CFUNC>")); /* IDs */ - idPLUS = rb_intern("+"); - idMINUS = rb_intern("-"); - idMULT = rb_intern("*"); - idDIV = rb_intern("/"); - idMOD = rb_intern("%"); - idLT = rb_intern("<"); - idLTLT = rb_intern("<<"); - idLE = rb_intern("<="); - idGT = rb_intern(">"); - idGE = rb_intern(">="); - idEq = rb_intern("=="); - idEqq = rb_intern("==="); - idBackquote = rb_intern("`"); - idEqTilde = rb_intern("=~"); - idNot = rb_intern("!"); - idNeq = rb_intern("!="); - - idAREF = rb_intern("[]"); - idASET = rb_intern("[]="); - idEach = rb_intern("each"); idTimes = rb_intern("times"); idLength = rb_intern("length"); Index: id.h =================================================================== --- id.h (revision 18554) +++ id.h (revision 18555) @@ -12,28 +12,34 @@ #ifndef RUBY_ID_H #define RUBY_ID_H +#include "parse.h" + extern VALUE symIFUNC; extern VALUE symCFUNC; -extern ID idPLUS; -extern ID idMINUS; -extern ID idMULT; -extern ID idDIV; -extern ID idMOD; -extern ID idLT; -extern ID idLTLT; -extern ID idLE; -extern ID idGT; -extern ID idGE; -extern ID idEq; -extern ID idEqq; -extern ID idNeq; -extern ID idNot; -extern ID idBackquote; -extern ID idEqTilde; +enum ruby_method_ids { + idPLUS = '+', + idMINUS = '-', + idMULT = '*', + idDIV = '/', + idMOD = '%', + idLT = '<', + idLTLT = tLSHFT, + idLE = tLEQ, + idGT = '>', + idGE = tGEQ, + idEq = tEQ, + idEqq = tEQQ, + idNeq = tNEQ, + idNot = '!', + idBackquote = '`', + idEqTilde = tMATCH, + idAREF = tAREF, + idASET = tASET, + idDummy +}; + extern ID idThrowState; -extern ID idAREF; -extern ID idASET; extern ID idIntern; extern ID idMethodMissing; extern ID idLength; -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/