[前][次][番号順一覧][スレッド一覧]

ruby-changes:24687

From: nobu <ko1@a...>
Date: Mon, 20 Aug 2012 23:02:47 +0900 (JST)
Subject: [ruby-changes:24687] nobu:r36738 (trunk): parse.y: token name

nobu	2012-08-20 23:02:32 +0900 (Mon, 20 Aug 2012)

  New Revision: 36738

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=36738

  Log:
    parse.y: token name
    
    * parse.y: more descriptive token names in syntax error messages.

  Modified files:
    trunk/ChangeLog
    trunk/bootstraptest/test_syntax.rb
    trunk/parse.y

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 36737)
+++ ChangeLog	(revision 36738)
@@ -1,3 +1,7 @@
+Mon Aug 20 23:02:27 2012  Nobuyoshi Nakada  <nobu@r...>
+
+	* parse.y: more descriptive token names in syntax error messages.
+
 Mon Aug 20 20:36:30 2012  Nobuyoshi Nakada  <nobu@r...>
 
 	* vm_insnhelper.c (vm_call_method): follow iclasses as klass in cfp
Index: bootstraptest/test_syntax.rb
===================================================================
--- bootstraptest/test_syntax.rb	(revision 36737)
+++ bootstraptest/test_syntax.rb	(revision 36738)
@@ -529,7 +529,7 @@
 end
 assert_syntax_error "unterminated string meets end of file", '().."', '[ruby-dev:29732]'
 assert_equal %q{[]}, %q{$&;[]}, '[ruby-dev:31068]'
-assert_syntax_error "syntax error, unexpected tSTAR, expecting '}'", %q{{*0}}, '[ruby-dev:31072]'
+assert_syntax_error "syntax error, unexpected *, expecting '}'", %q{{*0}}, '[ruby-dev:31072]'
 assert_syntax_error "`@0' is not allowed as an instance variable name", %q{@0..0}, '[ruby-dev:31095]'
 assert_syntax_error "identifier $00 is not valid to get", %q{$00..0}, '[ruby-dev:31100]'
 assert_syntax_error "identifier $00 is not valid to set", %q{0..$00=1}
Index: parse.y
===================================================================
--- parse.y	(revision 36737)
+++ parse.y	(revision 36738)
@@ -741,34 +741,40 @@
 /*%
 %type <val> program reswords then do dot_or_colon
 %*/
-%token tUPLUS		/* unary+ */
-%token tUMINUS		/* unary- */
-%token tPOW		/* ** */
-%token tCMP		/* <=> */
-%token tEQ		/* == */
-%token tEQQ		/* === */
-%token tNEQ		/* != */
-%token tGEQ		/* >= */
-%token tLEQ		/* <= */
-%token tANDOP tOROP	/* && and || */
-%token tMATCH tNMATCH	/* =~ and !~ */
-%token tDOT2 tDOT3	/* .. and ... */
-%token tAREF tASET	/* [] and []= */
-%token tLSHFT tRSHFT	/* << and >> */
-%token tCOLON2		/* :: */
-%token tCOLON3		/* :: at EXPR_BEG */
+%token END_OF_INPUT 0	"end-of-input"
+%token tUPLUS		"unary+"
+%token tUMINUS		"unary-"
+%token tPOW		"**"
+%token tCMP		"<=>"
+%token tEQ		"=="
+%token tEQQ		"==="
+%token tNEQ		"!="
+%token tGEQ		">="
+%token tLEQ		"<="
+%token tANDOP		"&&"
+%token tOROP		"||"
+%token tMATCH		"=~"
+%token tNMATCH		"!~"
+%token tDOT2		".."
+%token tDOT3		"..."
+%token tAREF		"[]"
+%token tASET		"[]="
+%token tLSHFT		"<<"
+%token tRSHFT		">>"
+%token tCOLON2		"::"
+%token tCOLON3		":: at EXPR_BEG"
 %token <id> tOP_ASGN	/* +=, -=  etc. */
-%token tASSOC		/* => */
-%token tLPAREN		/* ( */
-%token tLPAREN_ARG	/* ( */
-%token tRPAREN		/* ) */
-%token tLBRACK		/* [ */
-%token tLBRACE		/* { */
-%token tLBRACE_ARG	/* { */
-%token tSTAR		/* * */
-%token tDSTAR		/* ** */
-%token tAMPER		/* & */
-%token tLAMBDA		/* -> */
+%token tASSOC		"=>"
+%token tLPAREN		"("
+%token tLPAREN_ARG	"( arg"
+%token tRPAREN		")"
+%token tLBRACK		"["
+%token tLBRACE		"{"
+%token tLBRACE_ARG	"{ arg"
+%token tSTAR		"*"
+%token tDSTAR		"**arg"
+%token tAMPER		"&"
+%token tLAMBDA		"->"
 %token tSYMBEG tSTRING_BEG tXSTRING_BEG tREGEXP_BEG tWORDS_BEG tQWORDS_BEG tSYMBOLS_BEG tQSYMBOLS_BEG
 %token tSTRING_DBEG tSTRING_DEND tSTRING_DVAR tSTRING_END tLAMBEG
 

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]