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

1812 Коммитов

Автор SHA1 Сообщение Дата
eban 5fb3efb267 * bcc32/Makefile.sub: undefine HAVE_GETGROUPS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3947 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-16 05:44:22 +00:00
matz aabb785197 * regex.c (calculate_must_string): should handle option_set
properly. [ruby-talk:73481]

* regex.c (re_compile_fastmap): a bug in flag manipulation.
  [ruby-talk:73549]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-16 04:49:25 +00:00
matz d616f6005c * eval.c (method_arity): should handle NODE_BMETHOD and
NODE_DMETHOD. [ruby-core:01138]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3941 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-14 13:41:29 +00:00
shugo e0a5ffa941 * lib/net/ftp.rb (storebinary): seek correctly. Thanks, William Webber.
* lib/net/ftp.rb (putbinaryfile): rescue FTPPermError.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-13 00:26:51 +00:00
why e921ea2d78 * ext/syck/token.c: preserve newlines prepended to a block.
* ext/syck/implicit.c (syck_match_implicit): added !merge and !default.

* lib/yaml/constants.rb: remove '\z' escape.

* lib/yaml/emitter.rb: ensure reset of @seq_map shortcut flag.

* lib/yaml/encoding.rb: remove Unicode translation methods.

* lib/yaml/rubytypes.rb: improved round-tripping of Strings.
  [ruby-core:1134]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-10 14:15:27 +00:00
matz 373a59b95b * lib/irb.rb (IRB::Irb::eval_input): warn and exit if $SAFE >=3
after input evaluation.

* lib/irb.rb (IRB::Irb::eval_input): untaint input string.  now
  irb works for levels 1 and 2.

* ext/syck/rubyext.c (syck_loader_transfer): should not use
  rb_cProc directly, since type_proc may be Proc, Block, or
  Method.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-10 05:22:17 +00:00
nobu 1fe598da35 * configure.in: checks presence of grp.h and setgroups().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-09 10:02:36 +00:00
nobu 31094808f9 * process.c (proc_getgroups, proc_setgroups): raise
NotImplementedError unless available.  [ruby-talk:73014]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-09 04:27:17 +00:00
uema2 32bd3c5679 * wince/setup.mak: set SUBSYSTEM in each platform.
* wince/stdlib.c: fix mblen() bug.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-08 04:38:06 +00:00
matz 9481face42 * parse.y (value_expr0): class and module statements should not be
warned for "void value expression". [ruby-talk:72989]

* gc.c (add_final): should determine type by respond_to?

* gc.c (define_final): ditto.

* io.c (rb_io_ctl): should not depend on respond_to?

* range.c (range_step): rb_check_string_type().

* process.c (proc_setgroups): new functions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-07 15:34:31 +00:00
nobu fb81dcb863 * eval.c (error_print): needs to be exception proof.
* eval.c (error_handle, rb_longjmp): bails out when exception
  reentered.  (ruby-bugs-ja:PR#487), [ruby-core:01119],
  [ruby-core:01122]

* eval.c (Init_Proc): pre-allocates critical error objects.

* parse.y (cmd_brace_block, do_block, brace_block): initialize block
  variables at the beginning of the block.  [ruby-talk:72521]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-06 11:29:20 +00:00
matz bad7546f15 * gc.c (define_final): eliminate rb_f_lambda() call.
* class.c (rb_scan_args): ditto.

* signal.c (sig_trap): ditto.

* hash.c (rb_hash_initialize): ditto.

* variable.c (rb_f_trace_var): ditto.

* ext/dl/dl.c (rb_dl_callback): ditto.

* ext/win32ole/win32ole.c (ev_on_event): ditto.

* eval.c (ruby_cleanup): $SAFE is turned off in the finalization.
  Each END proc should preserve its own $SAFE level. [ruby-core:01119]

* marshal.c (marshal_load): remove unused variable "hash".
  [ruby-core:01120]

* hash.c (env_str_new): freeze strings from ENV. [ruby-talk:72860]

* array.c (rb_ary_first): optional argument to retrieve first n
  elements.

* array.c (rb_ary_last): optional argument to retrieve last n
  elements.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-06 09:44:22 +00:00
matz 9e77e91a13 * eval.c (ruby_cleanup): $SAFE is turned off in the finalization.
Each END proc should preserve its own $SAFE level. [ruby-core:01119]

* marshal.c (marshal_load): remove unused variable "hash".
  [ruby-core:01120]

* hash.c (env_str_new): freeze strings from ENV. [ruby-talk:72860]

* array.c (rb_ary_first): optional argument to retrieve first n
  elements.

* array.c (rb_ary_last): optional argument to retrieve last n
  elements.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-06 09:24:59 +00:00
aamine 1fa5c630cd * lib/net/http.rb: define Net::HTTPResponse#to_ary for backward compatibility. [ruby-talk:72927]
* lib/net/protocol.rb: add warning.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-06 07:05:52 +00:00
why 56796022a6 * ext/syck/rubyext.c (syck_parser_mark): was a bit heavy on the GC.
* lib/yaml.rb (YAML::transfer): added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-05 17:42:06 +00:00
uema2 b5d717afda * wince/stdlib.c: add mblen().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-05 12:33:19 +00:00
usa b1937a53e6 * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
(MISSING): link with missing/erf.c.

* missing.h (erf, erfc): fix prototype.

* missing/erf.c: new. [ruby-list:37753]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-05 09:38:01 +00:00
eban d9f893b70b * ext/curses/curses.c (window_s_allocate,curses_finalize):
avoid VC++ warnings.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-05 09:36:30 +00:00
matz c004ecfa1e * math.c (math_erf,math_erfc): new function. [ruby-list:37753]
* eval.c (ruby_finalize): no longer need to turn off $DEBUG in the
  finalizer. (ruby-bugs-ja PR#473)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-05 06:40:42 +00:00
why bd368e9749 * ext/syck/rubyext.c: using GC nodes caused segfault. [ruby-core:1071]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-05 05:40:03 +00:00
why 017d4ff10a * ext/syck/token.c: directives choked on a period.
* ext/syck/gram.y: anchors work above a collection. [ruby-core:1071]

* ext/syck/handler.c, ext/syck/syck.c: ensure a fresh strtable between
  parser iterations.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-05 04:43:05 +00:00
matz 45c7ea552d * eval.c (rb_call_super): should search superclass method based on
orig_func, not last_func.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3904 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-03 13:57:06 +00:00
matz c5fc4bca6d * eval.c (rb_call_super): inheritance line adjustment moved from
rb_call(). [ruby-core:01113]

* eval.c (rb_eval): use rb_call_super() to follow DRY principle.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-03 09:40:21 +00:00
matz 6125313d69 * array.c (push_values_at): Array#values_at should work with
ranges too.

* range.c (rb_range_beg_len): length calculation was wrong.

* eval.c (rb_call): should set T_ICLASS in the frame->last_class.
  [ruby-core:01110]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-02 04:49:46 +00:00
eban 9b616a5e85 * ext/digest/defs.h: avoid warnings on Cygwin.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-01 14:20:58 +00:00
eban fd681fe0e5 * configure.in: should not use def file, use ld with
--export-all-symbols option on Cygwin/MinGW.
* defines.h: ditto.
* cygwin/GNUmakefile.in: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3894 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-01 12:58:56 +00:00
uema2 dc13952417 * wince/string_wce.c: add strpbrk() for hpcpro support.
* wince/setup.mak: add hpcpro(CE2.11) & armv4t(CE.NET) support.

* wince/resource.rb: ditto.

* wince/Makefile.sub: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-01 04:44:45 +00:00
nobu 7b6452389d * variable.c (rb_autoload_load): autoloaded constants under a module
belong to the module.  [ruby-core:01094], [ruby-dev:20309]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-06-01 01:38:32 +00:00
usa e13e58bef6 * parse.y (rb_intern): should handle multibyte name.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3890 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-31 09:11:12 +00:00
why 38df1a90cc * ext/syck/rubyext.c (rb_syck_mktime): seconds calculated wrong.
* ext/syck/gram.c: flexibility to anchors and transfer methods on
  collections.

* ext/syck/token.c: hex escapes.

* lib/yaml/basenode.rb: YamlNode references changed to YAML::BaseNode.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-30 23:09:54 +00:00
matz 979f006b9e * io.c (rb_f_syscall): type dispatch should be based on
rb_check_string_type(), not FIXNUM_P(), because values may be a
  bignum.  [ruby-talk:72257]

* eval.c (rb_call0): should pass the current klass value to
  block_invoke, which may be called via "super". [ruby-core:01077]

* eval.c (block_invoke): now takes 4th argument "klass".

* eval.c (block_alloc): should propagate BLOCK_PROC to
  ruby_block.

* marshal.c (r_object0): should not use "yield" method, use "call"
  instead. (ruby-bugs-ja PR#476)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-30 16:08:03 +00:00
nobu 045eb9773e * numeric.c (rb_num2uint, rb_fix2int): new function to convert
values over INT_MAX.  [ruby-core:01099]

* ruby.h (NUM2UINT, FIX2INT): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-30 13:28:10 +00:00
nobu 7d9628ef02 * eval.c (rb_Array): exclude Kernel#to_a instead of Object#to_a.
(ruby-bugs-ja:PR#483)

* lib/optparse.rb (OptionParser::Switch#parse_arg): not splat.

* lib/optparse.rb (OptionParser::Switch#conv_arg): splat if no
  conversion supplied.

* lib/optparse.rb (OptionParser::Switch::PlacedArgument#parse):
  override next switch after argument conversion.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-30 05:55:50 +00:00
why 5b743d275e * ext/syck/token.c: preserve any indentation passed an explicit
indentation.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-29 23:51:16 +00:00
why 5d47fda3f8 * ext/syck/handler.c, ext/syck/syck.h: removed syck_fold_format().
* ext/syck/gram.c: flexibility for aliases and anchors.

* ext/syck/token.c: folding now handled in the tokenizer.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-29 23:33:10 +00:00
nobu f130d47f6a * variable.c (rb_autoload_load): should delete autoloaded
symbol itself before load.  [ruby-core:01097]

* variable.c (rb_mod_remove_const): must not return Qundef.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-29 21:21:23 +00:00
eban e617fd0bf8 * win32/win32.c (_CRTIMP): redefine _CRTIMP on MinGW.
* configure.in: remove '-D__USE_CRTIMP' from XCFLAGS on MinGW.
* win32/win32.c (NtMakeCmdVector): handle quotes only if not instring.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-29 09:11:18 +00:00
nobu c40c6bd386 commit miss
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-29 00:25:40 +00:00
nobu 5ddce4f7bc * eval.c (ev_const_defined, ev_const_get), variable.c
(rb_const_get_at, rb_const_get, rb_mod_remove_const): use Qundef
  as autoload marker.  [ruby-dev:18103], [ruby-dev:18184]

* eval.c (rb_mod_autoload, rb_mod_autoload_p): new method;
  Module#autoload, Module#autoload?.

* variable.c (rb_autoload, rb_autoload_load, rb_autoload_p):
  manage autoload constants per classes/modules.

* variable.c (rb_const_defined_at, rb_const_defined): return false
  for autoloading constants.

* class.c (rb_define_class, rb_define_module), eval.c (rb_eval),
  variable.c (rb_mod_const_at, rb_const_assign): removed autoload
  stuff.

* intern.h: prototypes; rb_autoload, rb_autoload_load,
  rb_autoload_p.

* lib/optparse.rb (OptionParser::Switch::PlacedArgument::parse):
  do not treat unmatched argument as an option.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3874 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-29 00:11:11 +00:00
nobu dc2bab2207 * eval.c, util.c: removed duplicated includes/defines.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-27 11:33:46 +00:00
nobu aa37cc7127 * ext/socket/socket.c (sock_addrinfo): get rid of SEGV at NULL ptr
String.  increase buffer size for 64bit platforms.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-27 11:07:57 +00:00
nobu 7712407048 * lib/mkmf.rb, lib/optparse.rb, lib/tracer.rb: use Method#to_block
instead of deprecated Method#to_proc.  (ruby-bugs-ja:PR#477)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-26 13:17:07 +00:00
nobu 6e242d868e * lib/optparse.rb (OptionParser::Switch::parse,
OptionParser::order): use {Block,Proc}#call instead of deprecated
  #yield.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-26 12:21:24 +00:00
matz b4fd4d6018 * eval.c (Init_Proc): Block/Proc separation. [huge change]
* eval.c (block_arity): returns exact arity number for Procs out
  of methods. also gives 1 for {|a|..}.

* string.c (rb_str_match): revert use of String#index for
  invocation like string =~ string.

* eval.c (rb_Array): move Object#to_a exclusion hack from
  splat_value().  need to be in eval.c for a while.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-26 08:22:33 +00:00
nobu c13ca74520 * bignum.c (rb_quad_pack): should negate negative bignum.
(ruby-bugs-ja:PR#474)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-25 14:48:26 +00:00
aamine d5d2ca754b * lib/net/smtp.rb: support LOGIN authentication. The patch is contributed by Kazuhiko Izawa. [ruby-talk:78981]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3863 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-24 18:24:26 +00:00
uema2 0ece2407d2 * wince/Makefile.sub: add eMbedded Visual C++ 4.0 support.
* wince/resource.rb: ditto.

* wince/setup.mak: ditto.

* wince/configure.bat: ditto.

* wince/mkexports.rb: delete japanese comments.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3862 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-24 09:17:35 +00:00
nobu 0cc87df01c * eval.c (rb_longjmp): get rid of reentering while debug warning.
(ruby-bugs-ja:PR473)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3860 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-23 09:34:09 +00:00
matz cec20793cb * eval.c (ruby_finalize): turn off ruby_debug flag before calling
at_exit procs and finalizers. (ruby-bugs-ja:PR473)

* ext/tcltklib/tcltklib.c (lib_mainloop_core): OK to block if
  there's no other thread. (ruby-bugs:PR#861)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-23 08:11:21 +00:00
nobu 228604473d * pack.c (pack_unpack): sign-extend if sizeof long is bigger than
32.  (ruby-bugs-ja:PR#472)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-05-23 06:16:20 +00:00