nobu
bb19bcf93e
* parse.y (rb_intern3): split to registration check and new
...
registration.
* parse.y (rb_intern_str): make interned string shared with the
given string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34354 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-22 06:41:29 +00:00
nobu
f1dc132b41
* parse.y (rb_intern3, rb_intern_str): check the coderange first.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34352 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-22 06:23:38 +00:00
nobu
731e45216a
* node.h (rb_args_info): change pre_args_num and post_args_num as
...
int, to match with rb_iseq_t.
* parse.y (new_args_gen): check overflow.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-27 12:17:36 +00:00
mame
1ab3974b0e
* node.h, node.c, parse.y: implement a parser part for keyword arguments. This is a preparation for keyword argument (see [ruby-core:40290]).
...
* gc.c (gc_mark_children): bookkeeping.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-26 14:20:03 +00:00
mame
afb10c62c2
* node.h, parse.y (new_args_gen), compile.c (iseq_set_arguments): use struct rb_args_info instead of NODEs. This is a preparation for keyword argument (see [ruby-core:40290]).
...
* node.c (dump_node), gc.c (gc_mark_children, obj_free): bookkeeping.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-26 14:19:58 +00:00
mame
90b1afa310
* node.h, parse.y (lambda, f_larglist): remove NEW_LAMBDA hack. This is a preparation for keyword argument (see [ruby-core:40290]).
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34133 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-26 14:19:52 +00:00
nobu
d62f56b041
* parse.y (primary): point method name line. [ruby-core:40936]
...
[Bug #5614 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34031 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-13 15:01:20 +00:00
nobu
0f9662f366
* parse.y (parser_magic_comment): should pass the proper value.
...
[ruby-dev:44984][Bug #5753 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-12 21:29:53 +00:00
shugo
900b4a6db6
* parse.y (stmt_or_begin): changed the error message for BEGIN not
...
at toplevel. [ruby-dev:44963] [Bug #5738 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34016 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-12 13:43:56 +00:00
nobu
b526738c3b
* bignum.c (big_rshift), compile.c (validate_label,
...
iseq_build_from_ary_exception), cont.c (cont_capture), dir.c
(dir_open_dir), gc.c (objspace_each_objects), io.c (pipe_open)
(rb_io_advise), parse.y (parser_compile_string)
(rb_parser_compile_file), proc.c (binding_free), process.c
(rb_proc_exec_n, rb_seteuid_core, proc_setegid, rb_setegid_core)
(p_uid_exchange, p_gid_exchange), regparse.c (strdup_with_null),
signal.c (sig_dfl), vm.c (rb_iseq_eval, rb_iseq_eval_main),
vm_insnhelper.c (vm_expandarray): suppress
unused-but-set-variable warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33951 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-05 09:57:00 +00:00
nobu
4659b00b9a
* parse.y (nodetype, nodeline): suppress warnings.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-29 00:51:37 +00:00
usa
4d6de2f7c4
* parse.y (nodetype, nodeline): static. these functions are for
...
debugging, and not intend to be public.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-28 03:49:00 +00:00
naruse
615d5068d2
* parse.y (parser_nextc): set encoding for the buffer of ripper.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33542 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-10-28 02:30:22 +00:00
nobu
560a6c6ffa
* ext/ripper/eventids2.c (ripper_init_eventids2): separate
...
initializations of IDs and objects.
* ext/ripper/tools/generate.rb (generate_eventids1): ditto.
* parse.y (Init_ripper, InitVM_ripper): fix inversed roles.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-10-18 14:05:51 +00:00
nobu
8e6e8e6288
* use RB_TYPE_P which is optimized for constant types, instead of
...
comparison with TYPE.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33357 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-29 11:07:45 +00:00
nobu
c4d77cb4ad
* parse.y (parser_data_type): inherit the core type in ripper so
...
that checks in core would work. [ruby-core:39591] [Bug #5331 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-17 14:34:13 +00:00
nobu
4705fcc3c0
* README.EXT, README.EXT.ja (2.2.2), parse.y (rb_check_id): add
...
documents for rb_check_id().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33255 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-12 04:38:15 +00:00
matz
6126c50add
* parse.y (bv_decls): parse.y relies on $$ = $1 before action
...
routines. a patch from Michael Edgar. [Bug #5303 ]
[ruby-core:39429]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-09 23:32:56 +00:00
nobu
5e14b97947
* parse.y (parser_tokadd_string, parser_yylex): ignore a backslash
...
which prefixes an non-ascii character, which has no escape
syntax. [ruby-core:39222] [Ruby 1.9 - Bug #5262 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33161 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-09-02 00:58:10 +00:00
nobu
3fbc65d47f
* parse.y (rb_check_id): make the given name a symbol or a string.
...
based on the second patch by Jeremy Evans at [ruby-core:38447]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32684 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-26 16:05:27 +00:00
naruse
65658ea0d4
* parse.y (rb_enc_symname_type): :$a!, @a! and so on are not
...
valid symbols, so they should be inspected with quotes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32639 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-23 10:03:30 +00:00
nobu
12d9be6b72
* parse.y (rb_check_id): take care of attrset ID created
...
implicitly by local ID. [Bug #5084 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-23 03:19:07 +00:00
nobu
d9242d5966
* parse.y (rb_check_id): conversion condition was inverse.
...
[Bug #5084 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-23 03:12:28 +00:00
nobu
34918aa832
* object.c (rb_mod_{const,cvar}_defined, rb_obj_ivar_defined):
...
avoid inadvertent symbol creation in reflection methods. based
on a patch by Jeremy Evans at [ruby-core:38367]. [Feature #5072 ]
* vm_method.c (rb_mod_method_defined)
(rb_mod_{public,private,protected}_method_defined)
(obj_respond_to): ditto.
* parse.y (rb_check_id): new function returns already interned ID
or 0.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-22 12:06:42 +00:00
nobu
c276b73804
* parse.y (rb_is_global_id, rb_is_attrset_id): add missing
...
predicates.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-22 11:44:53 +00:00
nobu
e0060732f1
* parse.y (rb_enc_symname2_p): get rid of potential out-of-bound
...
access.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32618 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-22 10:05:49 +00:00
nobu
577c03c713
* parse.y (var_ref): distinguish vcall from local variable
...
references. based on a patch by Michael Edgar michael.j.edgar
AT dartmouth.edu. Bug #5002
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32498 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-10 13:38:17 +00:00
mame
b0f115da1a
* parse.y (reduce_nodes_gen): NODE_RETURN in rescue body must not be
...
reduced when there is an else clause. This caused bizarre behavior
in [Bug #4473 ] [ruby-core:35629] [ruby-core:37884].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-10 02:42:07 +00:00
nobu
cfa0035962
* encoding.c (rb_enc_set_index, rb_enc_associate_index): should
...
check if frozen.
* parse.y (rb_intern3), ruby.c (process_options, ruby_script):
defer freezing after associating encodings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-07 06:44:46 +00:00
nobu
c1d84bfcdb
* parse.y (arg): rescue_mod is in inverse order from other
...
modifiers. patched by michael.j.edgar AT dartmouth.edu at
[ruby-core:36248]. fixed #4716 .
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32428 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-06 19:31:33 +00:00
matz
aab018f8fe
* parse.y (opt_call_args): allow trailing comma after assoc
...
argument e.g. 'foo(bar:1,)'. fixed #3456
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-06 15:39:27 +00:00
nobu
2ac460af94
* parse.y (parser_here_document): should dispatch heredoc_end
...
scanner event on an empty here document. fixed Bug#4543.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-05 06:28:07 +00:00
nobu
198c2570e7
* sytle fixes.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32344 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-30 20:20:32 +00:00
drbrain
926301969f
* math.c: Attach documentation for Math.
...
* object.c: Document NIL, TRUE, FALSE.
* io.c: Improve grammar in ARGF comment. Document STDIN/OUT/ERR.
Document ARGF global constant.
* lib/rake: Hide deprecated toplevel constants from RDoc (import from
rake trunk).
* lib/thwait.rb: Document ThWait.
* lib/mathn.rb: Hide Math redefinition from RDoc
* lib/sync.rb: Add a basic comment for Sync_m, Synchronizer_m, Sync,
Synchronizer.
* parse.y: Document SCRIPT_LINES__.
* hash.c: Document ENV class and global constant.
* vm.c: Document TOPLEVEL_BINDING.
* version.c: Document RUBY_* constants.
* ruby.c: Document DATA and ARGV.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-29 03:09:34 +00:00
naruse
8d00a7c274
* parse.y (rb_parser_end_seen_p): fix documentation about return
...
value. patched by Sho Hashimoto. [Bug #4511 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-26 15:45:49 +00:00
shyouhei
d6e89e0c4e
* parse.y: comma at the end of line is no longer allowed.
...
A patch from Yukihiro Matsumoto <matz AT ruby-lang.org>.
(fixed #3456 ).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-26 09:09:49 +00:00
akr
7da3ea811e
* method.h, internal.h iseq.h: declare internal functions.
...
* compile.c, eval.c, iseq.c, object.c, parse.y, proc.c, process.c,
thread.c, vm.c, vm_eval.c, vm_insnhelper.c, vm_method.c: don't
declare internal functions.
Note that rb_method_entry_eq() is defined in vm_method.c but
there was a declaration in proc.c with different const-ness.
Now it is declared in method.h with same const-ness to the
definition.
* object.c (rb_mod_module_exec): don't declare functions declared in
include/ruby/intern.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-18 03:49:33 +00:00
akr
afd7e4668f
* internal.h: declare more internal functions.
...
* iseq.h (rb_method_get_iseq): declared.
* compile.c, eval.c, eval_error.c, iseq.c, parse.y, proc.c, range.c,
ruby.c, time.c, util.c, vm.c: don't declare internal functions.
* eval.c, parse.y, thread_pthread.c: non-existing function declarations
removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32158 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-18 01:54:57 +00:00
akr
e7996eb3cc
* internal.h: declare internal functions here.
...
* node.h: declare NODE dependent internal functions here.
* iseq.h: declare rb_iseq_t dependent internal functions here.
* vm_core.h: declare rb_thread_t dependent internal functions here.
* bignum.c, class.c, compile.c, complex.c, cont.c, dir.c, encoding.c,
enumerator.c, error.c, eval.c, file.c, gc.c, hash.c, inits.c, io.c,
iseq.c, load.c, marshal.c, math.c, numeric.c, object.c, parse.y,
proc.c, process.c, range.c, rational.c, re.c, ruby.c, string.c,
thread.c, time.c, transcode.c, variable.c, vm.c,
tool/compile_prelude.rb: don't declare internal functions declared
in above headers. include above headers if required.
Note that rb_thread_mark() was declared as
void rb_thread_mark(rb_thread_t *th) in cont.c but defined as
void rb_thread_mark(void *ptr) in vm.c. Now it is declared as
the later in internal.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-17 22:43:38 +00:00
nobu
ce90fcdbbd
* parse.y (parser_parse_string): flush delayed token. based on a
...
patch by Masaya Tarui in [ruby-dev:43762]. Bug #4544
* parse.y (yylex): revert r24557. delayed token at the end of
string should be flushed already by the above change.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32067 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-13 14:38:26 +00:00
nobu
402cbc870d
* parse.y (peek_n): new macro to see next nth char.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-01 06:42:23 +00:00
naruse
78df33a0c1
* enc/utf_16le.c: surpress warning: shorten-64-to-32.
...
* ext/dbm/dbm.c: ditto.
* ext/gdbm/gdbm.c: ditto.
* parse.y (Init_ripper): surpress warning: unused value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-21 21:23:42 +00:00
naruse
f1b2fb6706
* parse.y (parser_encode_length): add exception as UTF8-MAC for
...
magic comment's emacs newline specifier
patched by James M. Lawrence [ruby-core:35476] fixes #4489
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31086 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-10 13:07:03 +00:00
naruse
eb778a7b6b
* parse.y (parser_encode_length): fix typo: the length of
...
"-dos" and "-mac" is not 5 but 4.
patched by James M. Lawrence [ruby-core:35476] fixes #4489
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-10 08:07:56 +00:00
nobu
b1986003bd
* parse.y (words, qwords): dispatch array events. based on a
...
patch from Michael Edgar. [Bug #4365 ].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-06 03:18:44 +00:00
nobu
476ba90835
* parse.y (mlhs_basic): include mlhs_post for ripper. a patch
...
from Michael Edgar at [ruby-core:35078].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-05 12:47:16 +00:00
nobu
f6b4cba666
* parse.y (lex_getline, parser_set_encode): set encoding of lines
...
in SCRIPT_LINES__ as source encoding. [ruby-dev:43168]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-04 17:09:45 +00:00
mame
a525f4d5fb
* parse.y: avoid NULL reference. [ruby-dev:43067]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30597 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-18 18:17:29 +00:00
usa
90d5bcf910
* re.c (rb_reg_expr_str): need to escape if the coderage is invalid.
...
* error.c, include/ruby/intern.h (rb_compile_error_with_enc): new
function to raise syntax error, with source encoding'ed message.
* parse.y (compile_error): use above function.
[ruby-core:33951] (#4217 )
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-28 09:43:49 +00:00
nobu
cc479b25ba
* parse.y (stmt): missing ripper rule. i.e., `a::B ||= c 1'.
...
http://twitter.com/#!/wannabe53/status/18797576396472321
http://twitter.com/#!/wannabe53/status/18798416150663168
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30381 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-26 02:39:14 +00:00