Граф коммитов

17314 Коммитов

Автор SHA1 Сообщение Дата
nobu c15e6bf465 * ChangeLog: reverted entries removed mistakenly at r23889.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24146 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-16 08:55:00 +00:00
ko1 b5dd85f049 * vm_method.c (rb_alias): fix a case which try non-existing method alias.
* test/ruby/test_alias.rb: add a test.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24145 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-16 08:44:23 +00:00
nobu 53163f8138 * io.c (io_reopen): discards read buffer. [ruby-core:24240]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24144 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-16 07:00:23 +00:00
nobu 5e65d8f433 * bignum.c (rb_big_new, rb_bigzero_p), range.c (rb_range_values):
added for random.c.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24143 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-16 06:52:29 +00:00
nobu eb9bc2d265 * random.c (rb_random_t): objectified. [EXPERIMENTAL]
[ruby-dev:30954]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24142 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-16 06:00:35 +00:00
matz 57264a4fae * array.c (rb_ary_sample): RDoc update. a patch from Florian
Frank.   [ruby-core:24347]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-16 05:10:18 +00:00
naruse 606ea39a3b Fix SEGV of readline on FreeBSD. [ruby-core:21884]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24140 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-16 03:45:12 +00:00
nobu 34f8c6becd * vm_eval.c: adjusted indent.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-16 00:38:07 +00:00
nobu 934b700100 * method.h: properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-16 00:37:25 +00:00
ko1 94664d6d0c * node.h, vm_core.h, variable.c: rename global_entry to rb_global_entry.
* compile.c, insns.def, iseq.c, vm_insnhelper.h: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-16 00:01:06 +00:00
ko1 d4628c0bcd * vm_method.c: separate clearing cache entry code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-15 23:59:15 +00:00
ko1 0e03a296e6 * dir.c (push_glob): re-fix GC problem.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24133 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-15 23:57:33 +00:00
ko1 7030385273 * common.mk: add method.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24132 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-15 23:56:25 +00:00
svn 7336e81145 * 2009-07-16
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-15 23:55:30 +00:00
ko1 0d2449bd35 * io.c (argf_free): free data body.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24130 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-15 23:55:21 +00:00
ko1 c330876d7c * method.h, vm_core.h: add rb_method_entry_t. Remove nodes around
method management.  This change affect some VM control stack structure.
* vm.c, vm_insnhelper.c, vm_method.c, vm_eval.c: ditto.  and make some
  refactoring.
* insns.def, class.c, eval.c, proc.c, vm_dump.c : ditto.
* vm_core.h, compile.c (iseq_specialized_instruction): remove
  VM_CALL_SEND_BIT.  use another optimization tech for Kernel#send.
* node.h: remove unused node types.
* ext/objspace/objspace.c (count_nodes): ditto.
* gc.c: add mark/free functions for method entry.
* include/ruby/intern.h: remove decl of
  rb_define_notimplement_method_id().  nobody can use it
  because noex is not opend.
* iseq.c (iseq_mark): fix to check ic_method is available.
* iseq.c (rb_iseq_disasm): fix to use rb_method_get_iseq().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24128 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-15 14:59:41 +00:00
ko1 d3cbda6e8d * dir.c (push_glob): fix GC problem.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24127 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-15 14:46:44 +00:00
yugui 618cb2cab0 * ext/purelib.rb: translates a fake path to rubygems in $" into
an alternative in $: so that Kernel.#require does not load
  more rubygems.rb.
  Resolves many failures in test/rubygems/*.

* gem_prelude.rb (Gem.load_full_rubygems_library): supports case 
  the rubygems to load is not in $(rubylibprefix).
  (Gem.path_to_full_rubygems_library): new method for the changes in
  purelib.rb and Gem.load_full_rubygems_library.
  (Gem.fake_rubygems_as_loaded): new method.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24117 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-15 09:05:32 +00:00
usa dc1327a6f2 * win32/Makefile.sub (LIBPATHFLAG): path is already quoted in mkmf.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24116 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-15 07:30:42 +00:00
nagai 3272d17d0c * ext/tk/extconf.rb: --with-{tcl,tk}-dir doesn't work.[ruby-dev:38782]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-14 21:29:49 +00:00
svn 0845f5c165 * 2009-07-15
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-14 19:30:34 +00:00
naruse ed55083246 Set tempfile name with literal.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24108 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-14 19:26:59 +00:00
nobu c749e4fca2 * ext/io/nonblock: moved from ext/io/wait/lib.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24106 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-14 12:53:23 +00:00
naruse 6a3931e0f6 Check pos and strlen on Regexp#index(str, pos) [ruby-core:23660]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24103 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-14 08:30:54 +00:00
nobu 9681409e36 * io.c (rb_io_initialize): check if the descriptor can be accessed
in the specified open mode.  [ruby-dev:38571]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24102 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-14 07:13:11 +00:00
nagai ed58635229 * ext/tk/lib/multi-tk.rb: Long-term-callback support isn't stable yet.
So, disable the feature and waiting for improvement in the future.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24100 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-14 00:28:31 +00:00
nagai 2b94358ac4 * ext/tk/lib/tk/menuspec.rb: commit miss on my last commitment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24097 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 23:11:34 +00:00
naruse 5cc1edcd0d Follow tests for changes of ENV's encoding.
* test/ruby/test_m17n.rb (TestM17N#test_env): the encoding of ENV
  is now locale encoding.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 16:32:00 +00:00
naruse f03642038e * marshal.c (r_object0): should return real object.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24095 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 16:26:08 +00:00
mame cb46d98caa * enumerator.c (yielder_yield_i): use rb_proc_new instead of
rb_iterate.  [ruby-dev:38518]
 
* README.EXT: rb_iterate is obsolete since 1.9; use rb_block_call
  instead.
 
* README.EXT.ja: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24094 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 16:07:43 +00:00
svn 9e6a1e1479 * 2009-07-14
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24093 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 15:47:29 +00:00
yugui d41195a3bc * test/ruby/test_case.rb (TestCase#test_deoptimization):
test for [ruby-core:23190].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24092 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 15:47:20 +00:00
yugui 7287b852da * lib/prime.rb (Prime#prime_division): now decomposes
negative integer into a decomposition with element [-1, 1].

* test/test_prime.rb: test for it.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 13:51:49 +00:00
usa 0fefd19023 * io.c (pipe_open): handles leaked on win32 when an error occurs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 13:33:00 +00:00
yugui 76e3005431 * proc.c (Kernel#define_singleton_method): rdoc. based on a patch by
Marc-Andre Lafortune <ruby-core-mailing-list AT marc-andre.ca>.
  [ruby-core:23944].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 12:41:24 +00:00
yugui b3b6698e2f * lib/tempfile (Tempfile.open): rdoc. patch by Nobuhiro IMAI.
#1694

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24088 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 11:39:05 +00:00
nobu 4fbc270cd5 * marshal.c (r_object0): should not shadow outer variable not to
return Qnil always.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 11:21:55 +00:00
naruse ecb962058a * marshal.c (r_object0): copy instance variables to new regexp.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24086 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 10:43:45 +00:00
ko1 20d9aefccb * vm_core.h, compile.c: declare struct iseq_inline_cache_entry.
Inline cache (IC) entries are no longer GC managed object.
  IC entries are freed when ISeq is freed.
* iseq.c: fix mark, free, memsize functions for above change.
* insns.def: remove rb_gc_write_barrier().
* vm_insnhelper.c (vm_method_search): ditto.
* tool/instruction.rb, template/insns_info.inc.tmpl (insn_iclen):
  added.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 09:30:23 +00:00
yugui 762f9b28c6 * .gitignore: synchronized with svn:ignore.
* spec/.gitignore: merged into /.gitignore

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 09:12:02 +00:00
yugui b36ca6e21d ignores $(srcdir)/breakpoints.gdb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24083 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 09:09:45 +00:00
yugui 1d84d2b28c ext/tk: ignores generated ext/tk/config_list
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 09:06:31 +00:00
ko1 0ac93a1a40 * insns.def, vm_insnhelper.c (getinstancevariable):
fix to use inline cache.
* compile.c: fix to skip inline cache entry (IC).  IC is added
  automatically by compiler.
* insns.def, vm_insnhelper.h: fix IC positions.
* iseq.c: increment minor_version of ISeq because of above change.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24067 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 04:44:20 +00:00
nobu 405452b5bb * ext/tk: eol-style.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24066 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 02:43:44 +00:00
nobu aaf53ad5b8 * lib/pstore.rb (PStore#on_windows): fixed typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13 00:33:06 +00:00
nagai ed6ce8b43b * ext/tk/extconf.rb: New strategy for searching Tcl/Tk libraries.
* ext/tk/*: Support new features of Tcl/Tk8.6b1 and minor bug fixes.
     ( [KNOWN BUG] Ruby/Tk on Ruby 1.9 will not work on Cygwin. )
* ext/tk/*: Unify sources between Ruby 1.8 & 1.9.
            Improve default_widget_set handling.
* ext/tk/*: Multi-TkInterpreter (multi-tk.rb) works on Ruby 1.8 & 1.9.
     ( [KNOWN BUG] On Ruby 1.8, join to a long term Thread on Tk
       callbacks may freeze. On Ruby 1.9, cannot create a second 
       master interpreter (creating slaves are OK); supported master
       interpreter is the default master interpreter only. )
* ext/tk/lib/tkextlib/*: Update supported versions of Tk extensions.
         Tcllib 1.8/Tklib 0.4.1  ==>  Tcllib 1.11.1/Tklib 0.5
         BWidgets 1.7            ==>  BWidgets 1.8
         TkTable 2.9             ==>  TkTable 2.10
         TkTreeCtrl 2005-12-02   ==>  TkTreeCtrl 2.2.9
         Tile 0.8.0/8.5.1        ==>  Tile 0.8.3/8.6b1
         IncrTcl 2005-02-14      ==>  IncrTcl 2008-12-15
         TclX 2005-02-07         ==>  TclX 2008-12-15
         Trofs 0.4.3             ==>  Trofs 0.4.4


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24063 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-12 23:08:32 +00:00
akr e13fb8029b rdoc update.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-12 17:36:23 +00:00
nobu 796fc30f84 * time.c (time_timespec): rounds subsecond toward zero.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-12 16:18:18 +00:00
svn 400d826393 * 2009-07-13
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-12 15:04:42 +00:00
naruse 0dc7839b7f ENV is now locale encoding.
* hash.c (env_str_new): use rb_locale_str_new instead of
  rb_tainted_str_new. rb_locale_str_new set string locale
  encoding and tainted.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-12 15:04:33 +00:00