aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* mostly fix rb_iseq_loadnormal2014-12-037-67/+352
| | | | | | | | | | | | | | | | | | | | | | | | | This allows reporters commenters of [Feature #8543] to load instruction sequences directly. Some test cases are still failing but documented in test/-ext-/iseq_load/test_iseq_load.rb. * compile.c (rb_iseq_build_from_exception): entry->sp is unsigned (iseq_build_callinfo_from_hash): account for kw_arg (iseq_build_from_ary_body): update for r35459 (CHECK_STRING, CHECK_INTEGER): remove unused checks (int_param): new function for checking new `params' hash (iseq_build_kw): new function for loading rb_iseq_param_keyword (rb_iseq_build_from_ary): account for `misc' entry and general structure changes [Feature #8543] * iseq.c (CHECK_HASH): new macro (for `misc' and `param' entries) (iseq_load): account for `misc' and `params' hashes (iseq_data_to_ary): add final opt to arg_opt_labels, fix kw support, account for unsigned entry->sp * ext/-test-/iseq_load/iseq_load.c: new ext for test * ext/-test-/iseq_load/extconf.rb: ditto * test/-ext-/iseq_load/test_iseq_load.rb: new test git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48705 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* iseq.c: avoid segfault on incomplete iseqnormal2014-12-033-5/+17
| | | | | | | | | | | Compile failures will trigger iseq_free before iseq->callinfo_entries are allocated at all. * iseq.c (iseq_free): avoid segfault on incomplete iseq * test/ruby/test_syntax.rb (test_invalid_next): new test for syntax error, not segfault git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48704 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2014-12-04svn2014-12-031-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* load.c: reset errinfonobu2014-12-032-1/+9
| | | | | | | * load.c (ruby_require_internal): ignore error detail, just return an error. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48702 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* load.c: defer static linked ininobu2014-12-031-0/+6
| | | | | | | | | | | | * load.c (register_init_ext, ruby_init_ext): defer running the registered initialization function until required, not to enable extensions which have global effects just by loading, e.g., mathn/complex and mathn/rational. fix `make test` with --with-static-linked-ext. missing log at r48699t [ci skip] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48701 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* encoding.c: load by rb_require_internalnobu2014-12-034-11/+10
| | | | | | | * encoding.c (load_encoding): use rb_require_internal instead of calling rb_require_safe with protection. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* load.c: defer static linked initnobu2014-12-033-5/+19
| | | | | | | * enc/encinit.c.erb (Init_enc): initialize encdb and transdb directly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enc/prelude.rb: no encdb and transdbnobu2014-12-031-7/+0
| | | | | | | * enc/prelude.rb: no longer need to load encdb and transdb here. Init_enc should load them if possible. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* load.c: tweak the return valuenobu2014-12-032-8/+16
| | | | | | | * load.c (rb_require_internal): tweak the return value, 1 and 0 correspond to true and false in Kernel#require, respectively. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48697 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* dmyenc.c: try to load encdbnobu2014-12-034-12/+43
| | | | | | | | * load.c (ruby_require_internal): separate from rb_require_safe, not to raise exceptions. * ruby.c (process_options): remove unnatural encoding search. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48696 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* string.c: fake string is not sharingnobu2014-12-032-1/+6
| | | | | | | * string.c (setup_fake_str): fake string does not share another string, but just should not free. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* tcltklib.c: revert RUBY_UNTYPED_DATA_WARNINGnobu2014-12-031-4/+0
| | | | | | | * ext/tk/tcltklib.c (RUBY_UNTYPED_DATA_WARNING): Data_Get_Struct is not affected. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* intern.h: SIZED_ENUMERATORnobu2014-12-032-3/+5
| | | | | | | | | | * include/ruby/intern.h (SIZED_ENUMERATOR): separate from RETURN_SIZED_ENUMERATOR. * string.c (rb_str_enumerate_chars): get rid of calling rb_block_given_p() twice. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ruby.h: no warnings of hidden objectsnobu2014-12-032-0/+13
| | | | | | | * include/ruby/ruby.h (rb_data_object_alloc_warning): no warnings of internal hidden objects which klass == 0. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* tkutil.c: typed datanobu2014-12-031-16/+33
| | | | | | * ext/tk/tkutil/tkutil.c (cbsubst_info_type): use typed data. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48691 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/win32.c (w32_spawn): `v2` is used not only for `shell` but alsousa2014-12-032-1/+7
| | | | | | | | `cmd`, so must not free before using `cmd`. [ruby-core:66648] [Bug #10563] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* cparse.c: typed datanobu2014-12-032-15/+39
| | | | | | * ext/racc/cparse/cparse.c (cparse_params_type): use typed data. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48689 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/test_open3.rb: Add a simple test for env hash on popen3.headius2014-12-021-0/+7
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48688 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2014-12-03svn2014-12-021-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48687 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_eval.rb: add case to test "sticky" instance_evalheadius2014-12-021-0/+9
| | | | | | self when passed a reified block (proc/lambda). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48686 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: use typed data for com_hash.suke2014-12-022-2/+36
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: htmlnobu2014-12-021-2/+13
| | | | | | * common.mk (html): target to generate HTML form documentation. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48684 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* array.c: decorationnobu2014-12-021-2/+1
| | | | | | * array.c (rb_ary_plus): inline decoration of the operator. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* array.c (rb_ary_plus): in documentation, added note aboutduerst2014-12-022-0/+13
| | | | | | inefficiency of repeated += operations. [ci skip] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48682 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: clean more filesnobu2014-12-021-1/+3
| | | | | | | | * common.mk (distclean-local): clean fake file. * common.mk (realclean-local): clean generated files under srcdir. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48681 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* compile.c: set true and false directlynobu2014-12-021-6/+16
| | | | | | | * compile.c (iseq_set_arguments): directly set true and false default values not only nil to keyword arguments. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48680 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* iseq.c: use lvar indexnobu2014-12-021-1/+1
| | | | | | | * iseq.c (iseq_data_to_ary): use local variable indexes for hidden variable instead of meaningless ID values. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* iseq.c (iseq_data_to_ary): keep hidden variablesnormal2014-12-012-1/+11
| | | | | | | We must not ignore hidden variables when rb_id2str fails. Thanks to wanabe [ruby-core:66566] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/psych/lib/psych.rb: bumping versiontenderlove2014-12-013-6/+12
| | | | | | * ext/psych/psych.gemspec: ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * properties.svn2014-12-010-0/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/psych/lib/psych/visitors/to_ruby.rb: support objects that aretenderlove2014-12-014-0/+93
| | | | | | | | | | | marshalable, but inherit from basic object. Thanks Sean Griffin <sean@thoughtbot.com> * ext/psych/lib/psych/visitors/yaml_tree.rb: ditto * test/psych/test_marshalable.rb: test for fix git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: preserve tSTRING_CONTENT resultsnobu2014-12-013-4/+13
| | | | | | | * parse.y (ripper_flush_string_content): preserve the dispatched results at tSTRING_CONTENT. [ruby-dev:48714] [Bug #10437] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: check single regexp onlynobu2014-12-012-4/+9
| | | | | | | | * parse.y (regexp_contents): check in ripper only if the whole content is a single regexp without interpolation. [ruby-dev:48714] [Bug #10437] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* re.c: rb_reg_region_copynobu2014-12-014-8/+26
| | | | | | | * re.c (rb_reg_region_copy): new function to try with GC if copy failed and return the error. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: remove garbagenobu2014-12-011-1/+0
| | | | | | | * parse.y (parser_magic_comment): remove a garbage line inserted at previous ripper fix, r48668. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48671 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* strscan.c: fix conditionnobu2014-12-011-1/+1
| | | | | | | * ext/strscan/strscan.c (strscan_init_copy): fix inverted condition. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48670 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* re.c: check if onig_region_copy failednobu2014-12-013-0/+10
| | | | | | | * re.c (CHECK_REGION_COPIED): onig_region_copy() can fail when memory exhausted but returns nothing, so check by if allocated. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48669 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: enable encoding pragma in rippernobu2014-12-013-6/+14
| | | | | | | * parse.y (magic_comment_encoding): enable in ripper, since the encoding is necessary to parse non-default encoding scripts. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48668 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2014-12-02svn2014-12-011-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/uri/generic.rb (URI::Generic.build):naruse2014-12-013-4/+31
| | | | | | | | | | | | | | use hostname= to detect and wrap IPv6 hosts. Build is accepting URI components and users may not expect that a host component needs to be wrapped with square brackets since it's not providing a URI. Note: initialize with arg_check => true does not wrap IPv6 hosts. by Joe Rafaniello <jrafanie@redhat.com> https://github.com/ruby/ruby/pull/765 fix GH-765 * test/uri/test_generic.rb: Add more tests git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: use typed data for WIN32OLE.suke2014-12-014-52/+73
| | | | | | | | | * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_event.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: rebuild verconf.h for each configurenobu2014-12-014-2/+11
| | | | | | | * win32/Makefile.sub (verconf.h): so depends on verconf.mk, which is rebuilt by setup.mak. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: ext/json/parser/parser.cnobu2014-12-011-0/+7
| | | | | | | * common.mk (ext/json/parser/parser.c): sometimes need for local development. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* use 0 for reservednobu2014-12-0147-59/+59
| | | | | | | use 0 for rb_data_type_t::reserved instead of NULL, since its type may be changed in the future and possibly not a pointer type. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ChangeLog: fixed reference number of github issue [ci skip]hsbt2014-12-011-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48661 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * proc.c: fix grammar by @BenMorganIO [fix GH-764][ci skip]hsbt2014-12-012-1/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * remove trailing spaces.svn2014-12-011-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * man/rake.1: Update latest man content by @aledovskyhsbt2014-12-012-192/+140
| | | | | | [fix GH-771][ci skip] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2014-12-01svn2014-12-011-3/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * doc/syntax/refinements.rdoc: refinements are no longer experimental.hsbt2014-12-012-5/+5
| | | | | | patch by @gaurish [fix GH-755][ci skip] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e