summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2010-01-30merges r25408 from trunk into ruby_1_9_1.yugui
-- * include/ruby/win32.h (finite, scalb): inline'ed non-standard identifier macros. [ruby-core:2234] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@26497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-30merges r25294 from trunk into ruby_1_9_1.yugui
-- * include/ruby/ruby.h (RB_GC_GUARD_PTR): workaround for gcc optimization. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@26479 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-12-05merges r25092 from trunk into ruby_1_9_1.yugui
-- * win32/win32.c, include/ruby/win32.h (rb_w32_access): new function to replace MSVCRT's access(). [ruby-core:25761] * file.c (eaccess): workaround for recent MSVCRT is no longer needed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@26017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-27merges r24544 from trunk into ruby_1_9_1.yugui
-- \d, \s and \w are now non Unicode class. [ruby-dev:39026] * include/ruby/oniguruma.h (ONIGENC_CTYPE_SPECIAL_MASK): added. (ONIGENC_CTYPE_D): ditto. (ONIGENC_CTYPE_S): ditto. (ONIGENC_CTYPE_W): ditto. * regparse.c: \d, \s and \w are now non Unicode class. [ruby-dev:39026] (fetch_token_in_cc): use ONIGENC_CTYPE_[DSW] for \d/\s/\w. (fetch_token): ditto. (add_ctype_to_cc): add routines for ONIGENC_CTYPE_[DSW]. (parse_exp): ditto. * test/ruby/test_regexp.rb (TestRegexp#test_char_class): add tests for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@25941 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-01merges r24888 from trunk into ruby_1_9_1.yugui
-- * include/ruby/ruby.h (SYM2ID): needs parens. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@25619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-28merges r24684 from trunk into ruby_1_9_1.yugui
-- * vm_method.c (rb_remove_method_id): exported. * numeric.c (num_sadded): fix for non-ascii method name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@25547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-25merges r24513,r24514 and r24515 from trunk into ruby_1_9_1.yugui
-- * class.c (rb_define_class_id_under, rb_define_module_id_under): new functions to define a nested class/module with non-ascii name. * struct.c (make_struct): use name with encoding. * struct.c (inspect_struct): ditto. [ruby-core:24849] -- * test/ruby/test_marshal.rb (test_class_nonascii): test for non-ascii name class. -- * class.c (rb_define_module_id_under): fix the name. * class.c (rb_define_module_under): fix for prevvious changes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@25479 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-25merges r24488, r24489 and r24493 from trunk into ruby_1_9_1.yugui
-- * marshal.c (class2path, w_unique, w_extended, w_class, w_uclass): deal with non-ascii class path. [ruby-core:24790] * marshal.c (r_unique, path2class, path2module, obj_alloc_by_path), (r_object0): ditto. * variable.c (rb_path_to_class): new encoding-aware function to get a class from its name. -- * marshal.c (must_not_be_anonymous): fixed silly miss. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@25474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-08-08merges r24321 from trunk into ruby_1_9_1.yugui
-- * insns.def (defineclass): preserve encoding of class/module names. [ruby-core:24600] * variable.c (rb_set_class_path_string): set class path with a string value. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@24450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-26merges r24179 from trunk into ruby_1_9_1.yugui
-- * include/ruby/win32.h: include winsock headers in extern "C++" for C++ extension libraries. * include/ruby/missing.h (vsnprintf): workaround for VC++. [ruby-core:23096] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@24287 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-13merges r24013 from trunk into ruby_1_9_1.yugui
-- * include/ruby/ruby.h (rb_obj_{untrust,untrusted,trust}): added prototypes. [ruby-dev:38756] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@24078 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-12merges r23916 from trunk into ruby_1_9_1.yugui
-- * re.c (reg_match_pos): adjust offset based on characters, not bytes. [ruby-dev:38722] * string.c (rb_str_offset): new function. * string.c (rb_str_index_m): no call to rb_reg_adjust_startpos(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@24049 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-06-20merges r23571 from trunk into ruby_1_9_1.yugui
-- * include/ruby/ruby.h (FilePathValue): prevent from GC. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@23763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-06-20merges r23557 and r23563 from trunk into ruby_1_9_1.yugui
-- * thread.c (rb_exec_recursive_paired): new function for proper handling of recursive arrays. [EXPERIMENTAL] [ruby-core:23402] * array.c (rb_ary_equal, rb_ary_eql, rb_ary_cmp): use above. * hash.c (hash_equal): ditto. -- * test/ruby/test_hash.rb (TestHash::test_equal2): recursive hashes are handled properly now. ref: [ruby-core:23402] * test/ruby/test_m17n.rb (TestM17N#test_sprintf_p): test fixed git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@23759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-04merges r23134 from trunk into ruby_1_9_1.yugui
-- * include/ruby/intern.h (RB_NUM_COERCE_FUNCS_NEED_OPID): macro to check compatibility. [ruby-dev:38162] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@23329 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-22merges r22255 from trunk into ruby_1_9_1.yugui
* compile.c (compile_array_, defined_expr, iseq_compile_each): hide and freeze internal literal objects, to prevent from modifying. [ruby-dev:37959] * iseq.c (insn_operand_intern): copy internal literal objects. * insns.def (putstring, duparray): ditto. * string.c (rb_str_replace): exported. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@22532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-22merges r22132 from trunk into ruby_1_9_1.yugui
* include/ruby/st.h, st.c: order entries by a linked list instead of a loop to fix iteration miss when hash is modified during iteration. [ruby-dev:37910] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@22522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-22merges r22130 from trunk into ruby_1_9_1.yugui
* include/ruby/backward/rubysig.h (rb_thread_blocking_region_begin), (rb_thread_blocking_region_end): marked as deprecated. * include/ruby/backward/rubysig.h (TRAP_BEG): fix for C++. a patch from Aman Gupta at [ruby-core:21934] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@22521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-22merges r22123 from trunk into ruby_1_9_1.yugui
* include/ruby/backward/rubysig.h: extern "C" was missing. [ruby-core:21929] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@22520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-28merges r21709, r21710 from trunk into ruby_1_9_1.yugui
* include/ruby/io.h (FMODE_EOF): EOF flag on TTY. * io.c (io_set_eof): sets EOF flag for TTY. * io.c (io_seek): clears EOF flag. * io.c (io_fillbuf): returns EOF if already met EOF. [ruby-dev:37798] * io.c (io_fillbuf, io_fread, io_getpartial): sets EOF. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@21816 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-17merges r21179 from trunk into ruby_1_9_1.yugui
* pack.c (pack_pack): template f should not accept non float values. [ruby-dev:37656] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@21623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-15merges r21487 from trunk into ruby_1_9_1.yugui
* include/ruby/intern.h, thread.c, win32/Makefile.sub (rb_fdset_t, rb_fd_init, rb_fd_term, rb_fd_zero, rb_fd_set, rb_fd_clr, rb_fd_isset, rb_fd_select, rb_fd_ptr, rb_fd_max, HAVE_RB_FD_INIT): new type, functions, and macros for Windows. * win32/win32.c (extract_fd, rb_w32_select): use rb_fdset_t to expand fd_array if needed. [ruby-core:19946] * win32/win32.c (copy_fd): new funcion for rb_w32_select(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@21549 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-15merges r21473 from trunk into ruby_1_9_1.yugui
* win32/win32.c (internal_cmd_match): extracted from is_internal_cmd. * win32/win32.c (argv_size, join_argv): escapes redirection, pipe and carret punctuations with carrets. * win32/win32.c (rb_w32_aspawn): ditto, and redirections and pipe have no meanings. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@21540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-04merges r21227 from trunk into ruby_1_9_1.yugui
* include/ruby/missing.h, sprintf.c: get rid of a warning of VC++. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@21306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-26merges r21059 from trunk into ruby_1_9_1.yugui
* io.c (fptr_finalize): close the IO object even if finish_writeconv or flush is failed. (finish_writeconv): don't raise. return errno or exception. (finish_writeconv_arg): removed. (finish_writeconv_sync): follow finish_writeconv change. * transcode.c (rb_econv_make_exception): new function. * include/ruby/encoding.h (rb_econv_make_exception): declared. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@21069 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-25merges r20933 from trunk into ruby_1_9_1.yugui
* include/ruby/st.h: need to include defines.h because LONG_LONG is defined there. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@21009 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-25merges r20909 and r20910 from trunk into ruby_1_9_1.yugui
* configure.in (mingw): no longer uses snprintf and vsnprintf of msvcrt. * win32/win32.c (rb_w32_vsnprintf, rb_w32_snprintf): removed. * win32/Makefile.sub (config.h): vsnprintf exists in VC7 or later. * win32/mkexports.rb (Exports#initialize): aliases rb_w32_vsnprintf and rb_w32_snprintf for binary compatibility. * sprintf.c (rb_str_format): uses snprintf instead of sprintf. * numeric.c (flo_to_s, rb_num2long, rb_num2ll): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-19merges r20870 from trunk into ruby_1_9_1.yugui
* io.c (rb_io_extract_encoding_option): "internal_encoding: nil" to specify no-transcoding. and other corner case fixed. [ruby-dev:37496] * hash.c (rb_hash_lookup2): new function to look-up hash with default value. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-11* include/ruby/st.h (size_t): needs stddef.h or stdlib.h.nobu
[ruby-core:20339] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20622 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-05merges r20531 from trunk into ruby_1_9_1.yugui
* load.c (rb_get_load_path): returns the load path without touching. * load.c (rb_feature_provided): new function to return the loading path in addition to rb_provided(). * load.c (search_required): sets path if loading. * variable.c (autoload_provided): load paths are expanded to check if loading. * variable.c (autoload_node): keeps autoload mark while loading. [ruby-core:20235] * variable.c (rb_const_get_0): loops while autoload mark is set. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-18merges r20224 from trunk into ruby_1_9_1yugui
* include/ruby/intern.h (rb_{external,locale}_str_new_cstr): optimized versions for literal strings. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-18merges r20223 from trunk into ruby_1_9_1.yugui
* load.c (rb_require_safe): destroys barrier after successfully loaded, to get rid of loading same library again. [ruby-core:19798] * thread.c (rb_barrier_wait): can not wait destroyed barrier. * thread.c (rb_barrier_destroy): destroys barrier so that no longer waited. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20260 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-11merges r20145 from trunk into ruby_1_9_1.yugui
* ext/curses/curses.c: curses encoding should obey locale. * ext/curses/curses.c (curses_getch): 1.9 getch should return one character string for single byte string. wchar_t support may follow in the future. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-11merges r20144 from trunk into ruby_1_9_1.yugui
* include/ruby/io.h (rb_io_t): added write_lock to serialize. [ruby-core:19668] * gc.c (gc_mark_children): mark write_lock. * gc.c (rb_gc_call_finalizer_at_exit): Mutex also needs to be deferred. * io.c (io_fflush, io_binwrite, fptr_finalize): serializes writing. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-04merges r20102 from trunk into ruby_1_9_1.yugui
* include/ruby/intern.h (rb_mutex_synchronize): fixed prototype. * thread.c (rb_mutex_synchronize): fixed function name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-04merges r20101 from trunk into ruby_1_9_1.yugui
* missing.h: needs RUBY_EXTERN instead of extern for mswin. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20109 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-22* string.c (rb_external_str_new_with_enc): no implicit strlen call.matz
[ruby-dev:36854] * string.c (rb_external_str_new_cstr): new function to create string from external NUL terminated C string. * string.c (rb_locale_str_new_cstr): ditto. * ext/readline/readline.c: now use rb_locale_str_new_cstr(). * test/sdbm/test_sdbm.rb (TestSDBM#test_delete_with_block): deleted key to the block may be a copy of specified key. * test/dbm/test_dbm.rb (TestDBM#test_delete_with_block): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-21* include/ruby/vm.h: write a comment.ko1
* common.mk: remove vm.h from any rules. vm.h is not needed on this version. * vm_core.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-21* ext/zlib/zlib.c: remove obsolete prototype macros.matz
* ext/zlib/zlib.c (struct gzfile): add encoding field to gzfile structure. * ext/zlib/zlib.c (rb_gzreader_getc): now works on characters. * ext/zlib/zlib.c (rb_gzreader_getbyte): new method to retrieve single byte. * ext/zlib/zlib.c (rb_gzreader_readbyte): ditto. * ext/zlib/zlib.c (rb_gzreader_each_byte): renamed from each_char * ext/zlib/zlib.c (rb_gzreader_ungetc): allow unget strings. * ext/zlib/zlib.c (rb_gzreader_ungetbyte): renamed from ungetc. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-21* io.c, include/ruby/intern.h (rb_io_ascii8bit_binmode): externed.shugo
* ext/socket/socket.c (init_sock): use rb_io_ascii8bit_binmode() instead of rb_io_binmode(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-20* include/ruby/ruby.h (ExportStringValue): new macro to convertmatz
string in internal encoding to external to export. * string.c (rb_str_export): new function to do conversion to external encoding. * ext/sdbm/init.c: encoding conversion support. * ext/dbm/dbm.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-20* string.c (rb_locale_str_new): new function to convert stringmatz
from locale to internal encoding. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-18* string.c (rb_external_str_new): a new function to convert frommatz
external encoding to internal encoding. if something went wrong, it returns a string with the external encoding. * string.c (rb_external_str_new_with_enc): same as above besides you can specify the source encoding. * ruby.c (ruby_set_argv): use rb_external_str_new() * ruby.c (set_arg0, ruby_script): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-16* io.c (rb_getc, rb_io_fread, rb_io_fwrite, rb_read_pending):mame
remove deprecated functions which do not work. [ruby-dev:36697] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-14* io.c (Init_IO): $FILENAME and $* must be read-only. [ruby-dev:36698]nobu
* variable.c (*_getter, *_setter, *_marker): made public. * include/ruby/ruby.h (rb_gvar_*_{getter,setter,marker}): declared. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-10* include/ruby.h: updated macros for headers. [ruby-core:19275]nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19748 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-09 * include/ruby/ruby.h: embeds the elements of an array into itsyugui
struct RArray for # of elements <= 3. * array.c: ditto. * gc.c (gc_mark_children): following the change of struct RArray. * ext/tk/tcltklib.c (ip_ruby_cmp): ditto. * parse.y (coverage): ditto. * proc.c (curry): ditto. * .gdbinit: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-07* encoding.c (rb_default_internal_encoding): merged a patch frommatz
Michael Selig <michael.selig at fs.com.au> in [ruby-core:18985]. * io.c (rb_io_ext_int_to_encs): ditto. * ruby.c (proc_options): support default internal encoding in -E option. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-04* dln.c: Ruby no longer supports VMS.yugui
* error.c: ditto. * eval.c: ditto. * eval_intern.h: ditto. * include/ruby/defines.h: ditto. * include/ruby/ruby.h: ditto. * io.c: ditto. * process.c: ditto. * ruby.c: ditto. * vms/config.h: removed. * vms/vms.h: ditto. * vms/vmsruby_private.c: ditto. * vms/vmsruby_private.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19682 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-04* dln.c: Ruby no longer supports Windows CE.yugui
* eval.c: ditto. * include/ruby/defines.h: ditto. * include/ruby/win32.h: ditto. * ruby.c: ditto. * strftime.c: ditto. * win32/Makefile.sub: ditto. * win32/win32.c: ditto. * ext/tk/extconf.rb: ditto. * lib/fileutils.rb: ditto. * test/fileutils/test_fileutils.rb: ditto. * wince/*: removed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19681 b2dd03c8-39d4-4d8f-98ff-823fe69b080e