summaryrefslogtreecommitdiff
path: root/ext
Commit message (Collapse)AuthorAgeFilesLines
* * ext/extmk.rb, lib/mkmf.rb ($INCFLAGS): new var for -I$(topdir).eban2002-09-101-1/+2
| | | | | | | | * lib/mkmf.rb: add #define WIN32_LEAN_AND_MEAN to improve compile times. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/stringio/stringio.c (strio_set_string): reinitializenobu2002-09-091-11/+25
| | | | | | | | | | | | properly. * ext/stringio/stringio.c (strio_become): added self-assign check and experimental auto-conversion to StringIO. * ext/stringio/stringio.c (strio_reopen): added. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2827 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * time.c (time_free): prototype; struct time_object -> void *.eban2002-09-081-6/+4
| | | | | | | | avoid GCC warnings. * lib/mkmf.rb, ext/extmk.rb ($LINK, $CPP): move to lib/mkmf.rb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tcltklib/tcltklib.c: prototype; invoke_queue_handler() to avoidusa2002-09-081-0/+1
| | | | | | | VC++ warning. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2824 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/mkmf.rb (have_struct_member): moved from ext/socket/extconf.rb.eban2002-09-083-86/+26
| | | | | | | | | * ext/socket/extconf.rb: use macro_defined? instead of egrep_cpp. * ext/etc/extconf.rb: use have_struct_member. * ext/etc/etc.c: add prefix HAVE_ST_ to PW_ macros. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* removed.eban2002-09-081-544/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2820 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * configure.in: modify program_prefix only if specifiedeban2002-09-0827-2/+577
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | --program-prefix. * configure.in: don't generate ext/extmk.rb. * Makefile.in: execute directly $(srcdir)/ext/extmk.rb. remove -Cext option, "Dir::chdir 'ext'" in ext/extmk.rb. * {win32,bccwin32}/Makefile.sub: ditto. * instruby.rb: ditto. * ext/extmk.rb: renamed from ext/extmk.rb.in. * lib/mkmf.rb (module Logging): create log files (mkmf.log) in each extension module directories. * ext/extmk.rb: ditto. * lib/mkmf.rb (macro_defined?): new method. * ext/.cvsignore: remove extmk.rb. * ext/*/.cvsignore: add "*.def". git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2819 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bcc32/configure.bat : Control of a message.H_Konishi2002-09-081-1/+1
| | | | | | | | | bcc32/makefile.sub : @(sitearch) typo. ext/extmk.rb.in : [bccwin32] libdir is added to a library path. lib/mkmf.rb : ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2818 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* = should be ==matz2002-09-051-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * extmk.rb (create_makefile): add macro MAKEDIRS, INSTALL_PROG,eban2002-09-041-21/+11
| | | | | | | | | | | INSTALL_DATA. * extmk.rb (create_makefile): support for building to any directory. * extmk.rb (xsystem): move to mkmf.rb. * mkmf.rb (xsystem): support for extmk.rb * mkmf.rb ($CPP): remove '-E' option. add CPPFLAGS. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix rb_digest_base_become (ruby-core:428)michal2002-09-041-3/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * class.c (rb_make_metaclass): obj.meta.super.meta should be equalmatz2002-09-042-4/+2
| | | | | | | | | | | | to obj.meta.meta.super (ruby-bugs-ja:PR#324). * parse.y (yylex): the warning message "invalid character syntax" was never issued. * marshal.c (r_bytes): do not use alloca (ruby-bugs:PR#382). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * extmk.rb: require mkmf.rb. remove duplicate methods.eban2002-09-031-383/+68
| | | | | | | | use Config::CONFIG["FOO"] instead of @FOO@. * mkmf.rb: extmk.rb support. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_copy_generic_ivar): remove old generic instancematz2002-09-034-79/+55
| | | | | | | | | | variable table if it existes. * class.c (rb_make_metaclass): metaclass of a metaclass is a metaclass itself. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32ole.c(fole_each) : ensure to release IEnumVARIANT interface.suke2002-09-011-11/+28
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2776 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/socket/socket.c (sock_s_getaddrinfo): add strcmp.eban2002-08-301-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/Win32API/Win32API.c (Win32API_Call): typo.H_Konishi2002-08-301-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/Win32API/Win32API.c (Win32API_Call): RSTRING()->ptr may benobu2002-08-305-14/+13
| | | | | | | | | | | | | | | | | NULL. * ext/nkf/nkf.c (rb_nkf_guess): ditto. * ext/readline/readline.c (readline_s_set_completion_append_character): ditto. * ext/socket/socket.c (sock_s_getaddrinfo, sock_s_getnameinfo): ditto. * ext/tcltklib/tcltklib.c (ip_toUTF8, ip_fromUTF8): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2768 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Merged Nakada's patch [ruby-dev:18097].ttate2002-08-291-5/+7
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2765 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/stringio/stringio.c (strio_initialize): RSTRING(mode)->ptrnobu2002-08-281-6/+17
| | | | | | | | | can be NULL. * ext/stringio/stringio.c (strio_ungetc): fix buffer overflow. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (rb_thread_cleanup): should not modify the globalmatz2002-08-211-0/+19
| | | | | | | variable curr_thread. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * array.c (sort_2): *a - *b may overflow.matz2002-08-191-19/+37
| | | | | | | | | | | | | | | | * array.c (ary_new): len*sizeof(VALUE) may be a positive value. * array.c (rb_ary_initialize): ditto. * object.c (rb_class_allocate_instance): move singleton class check from rb_obj_alloc(). * re.c (rb_reg_initialize): should not modify frozen Regexp. * ext/tcltklib/tcltklib.c (ip_init): allocation framework. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ole_invoke: retry when calling by reference is fail.suke2002-08-131-2/+20
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2707 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * hash.c (rb_hash_replace): should copy ifnone.matz2002-08-132-10/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * hash.c (rb_hash_dup): should preserve HASH_PROC_DEFAULT and HASH_DELETED flags. * hash.c (rb_hash_shift): shift from empty hash should not return its default proc. * hash.c (rb_hash_default_proc): new method. [new] * array.c (rb_ary_aref): no need for Bignum check. * array.c (rb_ary_aset): explicit Bignum check removd. * numeric.c (fix_aref): normalize bignum before bit-op. * bignum.c (rb_big_rand): max may be Bignum zero. * bignum.c (rb_cstr_to_inum): should normalize bignums, to avoid returning fixable bignum value. * bignum.c (rb_uint2big): there should be no zero sized bignum. * ext/extmk.rb.in: extmake() that works properly for both tkutil (tk/tkutil.so) and digest/sha1. * hash.c (rb_hash_equal): should check HASH_PROC_DEFAULT too. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2706 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (rb_big_cmp): use dbl2big() for Floats, instead ofmatz2002-08-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | big2dbl(). * bignum.c (Init_Bignum): rb_big_zero_p() removed. There may be Bignum zero. * eval.c (rb_call0): new argument added for original method name. preserve original method name in frame->orig_func. * eval.c (is_defined): use frame->orig_func, not last_func. * eval.c (rb_eval): ditto. * eval.c (method_call): supply data->oid also to rb_call0(). * object.c (rb_class_allocate_instance): call rb_obj_alloc() when called from alias, thus invoke original "allocate". * eval.c (remove_method): removing allocate from classes should cause NameError. * hash.c (rb_hash_equal): should check default values. * ext/socket/socket.c (s_recvfrom): update RSTRING len. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2702 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32ole.c(WIN32OLE#ole_methods): list up all methods.suke2002-08-101-115/+172
| | | | | | | * win32ole.c(WIN32OLE#ole_method_help): get all method information. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/Win32API/extconf.rb: check existence of <windows.h>.eban2002-08-091-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/racc/cparse/cparse.c: reduce goto.aamine2002-08-061-46/+46
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* typonobu2002-08-061-17/+17
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/racc/cparse/cparse.c (parse_main): avoid GCC 3 warning.eban2002-08-061-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2689 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * MANIFEST: add lib/racc/parser.rb.aamine2002-08-052-385/+443
| | | | | | | | * ext/racc/cparse/cparse.c: code refine. * ext/racc/cparse/MANIFEST: add depend. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2688 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Multiple call of the initialize.ttate2002-08-053-0/+9
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2687 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Conform to the allocation framework.ttate2002-08-045-49/+83
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2686 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/curses/curses.c: follow allocation framework.nobu2002-08-041-23/+35
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/strscan/strscan.c: follow allocation framework.aamine2002-08-021-109/+208
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2682 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * parse.y (tokadd_string): ignore backslashed spaces in %w.matz2002-08-011-4/+9
| | | | | | | | * enum.c (enum_find): do not use rb_eval_cmd(); should not accept a string for if_none. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Get rid of "return".ttate2002-07-301-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/tcltklib/stubs.c (ruby_tcltk_stubs): win32_getenv returnseban2002-07-301-0/+6
| | | | | | | | | the same address always, so allocate string by ruby_strdup. * win32/win32.c: prototype; rb_w32_open_osfhandle(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/extmk.rb.in: always use File.expand_path for $top_srcdir.eban2002-07-291-6/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/extmk.rb.in (create_makefile): use Regexp in gsub.eban2002-07-261-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * random.c: replace with Mersenne Twister RNG.matz2002-07-261-10/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * eval.c (jump_tag_but_local_jump): preserve retval in LocalJumpError exceptions. * parse.y (command): no more check for "super outside of method". * eval.c (rb_mod_define_method): should set last_class and last_func in the block->frame. * eval.c (error_handle): should handle TAG_THROW as well. * parse.y (yylex): new decimal notation '0d4567'. * parse.y (yylex): new octal notation '0o777'. * parse.y (string_content): every string_content node should return string only. use NODE_EVSTR to coercing. * eval.c (rb_eval): NODE_EVSTR support. * re.c (rb_reg_quote): avoid unnecessary string allocation. * string.c (get_pat): quote metachracters before compiling a string into a regex. * string.c (rb_str_split_m): special treatment of strings of size 1, but AWK emulation. now uses get_pat(). * string.c (rb_str_match_m): quote metacharacters. * string.c (rb_str_match2): ditto. * ext/socket/socket.c (sock_addrinfo): make all 3 versions of getaddrinfo happy. [ruby-core:00184] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/stringio/stringio.c (strio_gets_internal): fixed for recordnobu2002-07-111-2/+2
| | | | | | | separator longer than 1. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * string.c (rb_str_slice_bang): if there's no correspondingmatz2002-07-112-2/+16
| | | | | | | | | | | | | | | | | | | | substring, slice! should return nil without exception. * array.c (rb_ary_insert): type fixed. * string.c (rb_str_split_m): accept separator value nil as well. * string.c (rb_str_become): was leaking memory. * class.c (rb_include_module): should not alter other classes/modules by inclusion. by this fix, local order may not be preserved for some cases. * class.c (include_class_new): module may be T_ICLASS; retrieve original module information. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * re.c (rb_reg_expr_str): need to process backslashes properly.matz2002-06-283-39/+39
| | | | | | | | | | | | | | | | | | * object.c (rb_any_to_a): declare Object#to_a to be obsolete. * object.c (rb_Array): do not convert nil into [] automagically. * object.c (rb_Integer): use "to_int" instead of "to_i". [experimental] * object.c (nil_to_f): new method. * object.c (rb_Integer): Symbols and nil should cause error. * object.c (rb_Float): nil should cause error. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add Importable::symbol.ttate2002-06-271-39/+55
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (rb_eval): NODE_EVSTR is no longer used.nobu2002-06-242-2/+2
| | | | | | | | | | | | | | | | | * eval.c (eval): not enforce to make assigned variables dynamic. * parse.y (string): split rules to strings/xstring/regexp to allow arbitrary statements inside string interpolation. * parse.y (here_document): splitted into three phases. * parse.y (literall_append, literal_concat): added. append/concatinate string literals. * sample/test.rb (valid_syntax): adjust line number for BEGIN. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/readline/readline.c (readline_readline): get rid ofnobu2002-06-201-0/+3
| | | | | | | libreadline's bug. (ruby-bugs-ja:PR#268) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2588 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/extmk.rb, lib/mkmf.rb (xsystem): open the log file if xsystem is called.eban2002-06-191-2/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * parse.y (yylex): obsolete '?<whitespace>'; use '?\s', '?\n',matz2002-06-181-1/+1
| | | | | | | | | | | | | | | | etc, instead. * parse.y (yylex): no here document after a dot. * parse.y (yylex): should have set lex_state after '`'. * parse.y (yylex): should have set lex_state properly after tOP_ASGN. * bignum.c (rb_big2dbl): return canonical HUGE_VAL for infinity. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2579 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/exmk.rb.in, lib/singleton.rb: remove nested ""s.matz2002-06-131-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e