* parse.y (shadowing_lvar_gen): no duplicate error for "_".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14186 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
d2e596ad04
commit
6bd65de203
@ -1,3 +1,7 @@
|
|||||||
|
Tue Dec 11 01:21:21 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
|
||||||
|
|
||||||
|
* parse.y (shadowing_lvar_gen): no duplicate error for "_".
|
||||||
|
|
||||||
Mon Dec 10 22:08:47 2007 Akinori MUSHA <knu@iDaemons.org>
|
Mon Dec 10 22:08:47 2007 Akinori MUSHA <knu@iDaemons.org>
|
||||||
|
|
||||||
* array.c (rb_ary_slice_bang): If an invalid range is given, do
|
* array.c (rb_ary_slice_bang): If an invalid range is given, do
|
||||||
|
32
parse.y
32
parse.y
@ -7626,20 +7626,24 @@ assignable_gen(struct parser_params *parser, ID id, NODE *val)
|
|||||||
static void
|
static void
|
||||||
shadowing_lvar_gen(struct parser_params *parser, ID name)
|
shadowing_lvar_gen(struct parser_params *parser, ID name)
|
||||||
{
|
{
|
||||||
if (dyna_in_block()) {
|
static ID uscore;
|
||||||
if (dvar_curr(name)) {
|
|
||||||
yyerror("duplicated argument name");
|
if (!uscore) uscore = rb_intern("_");
|
||||||
}
|
if (uscore == name) return;
|
||||||
else if (dvar_defined(name) || local_id(name)) {
|
if (dyna_in_block()) {
|
||||||
rb_warningS("shadowing outer local variable - %s", rb_id2name(name));
|
if (dvar_curr(name)) {
|
||||||
vtable_add(lvtbl->vars, name);
|
yyerror("duplicated argument name");
|
||||||
}
|
}
|
||||||
}
|
else if (dvar_defined(name) || local_id(name)) {
|
||||||
else {
|
rb_warningS("shadowing outer local variable - %s", rb_id2name(name));
|
||||||
if (local_id(name)) {
|
vtable_add(lvtbl->vars, name);
|
||||||
yyerror("duplicated argument name");
|
}
|
||||||
}
|
}
|
||||||
}
|
else {
|
||||||
|
if (local_id(name)) {
|
||||||
|
yyerror("duplicated argument name");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#define RUBY_VERSION "1.9.0"
|
#define RUBY_VERSION "1.9.0"
|
||||||
#define RUBY_RELEASE_DATE "2007-12-10"
|
#define RUBY_RELEASE_DATE "2007-12-11"
|
||||||
#define RUBY_VERSION_CODE 190
|
#define RUBY_VERSION_CODE 190
|
||||||
#define RUBY_RELEASE_CODE 20071210
|
#define RUBY_RELEASE_CODE 20071211
|
||||||
#define RUBY_PATCHLEVEL 0
|
#define RUBY_PATCHLEVEL 0
|
||||||
|
|
||||||
#define RUBY_VERSION_MAJOR 1
|
#define RUBY_VERSION_MAJOR 1
|
||||||
@ -9,7 +9,7 @@
|
|||||||
#define RUBY_VERSION_TEENY 0
|
#define RUBY_VERSION_TEENY 0
|
||||||
#define RUBY_RELEASE_YEAR 2007
|
#define RUBY_RELEASE_YEAR 2007
|
||||||
#define RUBY_RELEASE_MONTH 12
|
#define RUBY_RELEASE_MONTH 12
|
||||||
#define RUBY_RELEASE_DAY 10
|
#define RUBY_RELEASE_DAY 11
|
||||||
|
|
||||||
#ifdef RUBY_EXTERN
|
#ifdef RUBY_EXTERN
|
||||||
RUBY_EXTERN const char ruby_version[];
|
RUBY_EXTERN const char ruby_version[];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user