summaryrefslogtreecommitdiffstats
path: root/variable.c
Commit message (Collapse)AuthorAgeFilesLines
* * dir.c, dln.c, parse.y, re.c, ruby.c, sprintf.c, strftime.c,nobu2009-03-171-8/+10
| | | | | | | | string.c, util.c, variable.c: use strlcpy, memcpy and snprintf instead of strcpy, strncpy and sprintf. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@22984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * array.c, bignum.c, dln.c, error.c, gc.c, io.c, marshal.c,nobu2009-03-121-6/+6
| | | | | | | | | | numeric.c, pack.c, strftime.c, string.c, thread.c, transcode.c, transcode_data.h, util.c, variable.c, vm_dump.c, include/ruby/encoding.h, missing/crypt.c, missing/vsnprintf.c: suppress VC type warnings. [ruby-core:22726] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@22914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_define_hooked_variable): suppress false assertionnobu2009-02-151-31/+26
| | | | | | | with VC9. [ruby-core:22115] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@22322 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix grammos regarding the verb "refer".knu2009-02-101-1/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@22196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_const_get_0), vm_insnhelper.c (vm_get_ev_const):nobu2009-01-311-0/+3
| | | | | | | avoids infinite self recursion autoload. [ruby-core:21696] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@21925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm.c (rb_vm_inc_const_missing_count, ruby_vm_const_missing_count):ko12009-01-151-1/+5
| | | | | | | | | | | | added. * vm_insnhelper.h: ditto. * variable.c (rb_const_get_0), insns.def: Constants should not be cached if const_missing is called. [ruby-core:21059] [Bug #967] * bootstraptest/test_class.rb: add a test. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@21536 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * load.c (rb_get_load_path): returns the load path withoutnobu2008-12-041-29/+48
| | | | | | | | | | | | | | | | | | | | 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: http://svn.ruby-lang.org/repos/ruby/trunk@20531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (Init_IO): $FILENAME and $* must be read-only. [ruby-dev:36698]nobu2008-10-141-23/+25
| | | | | | | | | * variable.c (*_getter, *_setter, *_marker): made public. * include/ruby/ruby.h (rb_gvar_*_{getter,setter,marker}): declared. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_mod_remove_cvar): fix r19711.mame2008-10-091-2/+2
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19727 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (classname, rb_obj_remove_instance_variable),nobu2008-10-081-23/+28
| | | | | | | | (autoload_delete, autoload_file, rb_mod_remove_const), (rb_mod_remove_cvar): fixed type-punned pointer casts. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19711 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (autoload_delete, autoload_file): should not deletenobu2008-10-081-10/+2
| | | | | | | | autoload table, since it may be shared with duplicated modules. [ruby-core:19181] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_define_hooked_variable): cast to get rid of compilerusa2008-09-261-2/+2
| | | | | | | | warnings. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (global_variable, struct trace_var): made functionnobu2008-09-261-21/+29
| | | | | | | members more strict. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/node.h, node.h: move node.h from include path.ko12008-09-231-1/+1
| | | | | | | | | | | | | | This change stop to install node.h beacuase of saving ABI (node.h will be changed. Extensions should not depends on this file). * blockinlining.c, class.c, compile.c, debug.h, enum.c, gc.c, iseq.c, parse.y, ruby.c, signal.c, variable.c, vm.c, vm_core.h, vm_dump.c: ditto. * ext/ripper/depend: ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * object.c (rb_obj_untrusted): new method Object#untrusted?.shugo2008-08-131-5/+5
| | | | | | | | | | | | | | | (rb_obj_untrust): new method Object#untrust. (rb_obj_trust): new method Object#trust. * array.c, debug.c, time.c, include/ruby/ruby.h, re.c, variable.c, string.c, io.c, dir.c, vm_method.c, struct.c, class.c, hash.c, ruby.c, marshal.c: fixes for Object#untrusted?. * test/ruby/test_module.rb, test/ruby/test_array.rb, test/ruby/test_object.rb, test/ruby/test_string.rb, test/ruby/test_marshal.rb, test/ruby/test_hash.rb: added tests for Object#untrusted?. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/digest/digest.c (rb_digest_instance_inspect): constified.shyouhei2008-07-011-1/+1
| | | | | | | * variable.c (rb_path2class): field precision should have type int. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17775 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_f_trace_var): should not be allowed at safe level 4. matz2008-06-261-0/+1
| | | | | | a patch from Keita Yamaguchi <keita.yamaguchi@gmail.com>. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (CONST_ID): constant ID cache for non-gcc.nobu2008-06-091-4/+6
| | | | | | | * *.c: no cache in init functions. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * array.c, bignum.c, cont.c, dir.c, dln.c, encoding.c, enumerator.c,ko12008-06-081-3/+3
| | | | | | | | | | | | | | | | | | | enumerator.c (enumerator_allocate), eval_jump.c, file.c, hash.c, io.c, load.c, pack.c, proc.c, random.c, re.c, ruby.c, st.c, string.c, thread.c, thread_pthread.c, time.c, util.c, variable.c, vm.c, gc.c: allocated memory objects by xmalloc (ruby_xmalloc) should be freed by xfree (ruby_xfree). * ext/curses/curses.c, ext/dbm/dbm.c, ext/digest/digest.c, ext/gdbm/gdbm.c, ext/json/ext/parser/parser.c, ext/json/ext/parser/unicode.c, ext/openssl/ossl_cipher.c, ext/openssl/ossl_hmac.c, ext/openssl/ossl_pkey_ec.c, ext/sdbm/init.c, ext/strscan/strscan.c, ext/zlib/zlib.c: ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * suppress warnings with -Wwrite-string.nobu2008-05-311-2/+2
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_define_hooked_variable): guard *var from GC toakr2008-05-021-1/+8
| | | | | | | prevent collecting argf under RUBY_DEBUG=gc_stress. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16272 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * load.c (rb_provided): check expanded path for relative pathnobu2008-04-071-3/+3
| | | | | | | | | | features, loading or loaded features are already expanded in 1.9. * variable.c (rb_autoload_load): no needs to check if provided before rb_require_safe. [ruby-dev:34266] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_mod_constants): rdoc updated. a patch frommatz2008-03-261-2/+2
| | | | | | Florian Gilcher <flo AT andersground.net> in [ruby-core:16009]. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (rb_f_local_variables): local_variables should return anmatz2008-03-101-1/+1
| | | | | | | | array of symbols. [ruby-dev:34008] * vm.c (collect_local_variables_in_env): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix doc.akr2008-03-091-4/+4
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (ROBJECT_NUMIV): renamed from ROBJECT_LEN.akr2008-02-251-16/+16
| | | | | | | | | | | | | | | | (ROBJECT_IVPTR): renamed from ROBJECT_PTR. * variable.c: follow the above renaming. * object.c: ditto. * gc.c: ditto. * marshal.c: ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (RObject): add iv_index_tbl for shortcut ofakr2008-02-131-26/+35
| | | | | | | | | | | | | | | | RCLASS_IV_INDEX_TBL(rb_obj_class(obj)). (ROBJECT_IV_INDEX_TBL): defined. * object.c (init_copy): initialize iv_index_tbl in struct RObject. * variable.c (ivar_get): use ROBJECT_IV_INDEX_TBL. (rb_ivar_defined): ditto. (obj_ivar_each): ditto. (rb_obj_remove_instance_variable): ditto. (rb_ivar_set): update iv_index_tbl in struct RObject. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * $Date$ keyword removed to avoid inclusion of locale dependentakr2008-01-061-1/+0
| | | | | | | string. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@14912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * proc.c (method_name): preserve Symbol's encoding.matz2007-12-241-3/+3
| | | | | | * numeric.c (fix_id2name): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@14620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (rb_exc_raise): ANSI style.akr2007-12-241-2/+1
| | | | | | | | | | | | (rb_exc_fatal): ditto. (rb_raise_jump): ditto. (rb_jump_tag): ditto. (rb_block_given_p): ditto. * variable.c (original_module): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@14596 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * object.c (rb_obj_freeze): preserve frozen state of immediatematz2007-12-181-1/+1
| | | | | | | | | | | values in internal hash table, a la generic_ivar. * object.c (rb_obj_frozen_p): check immediate values too. * variable.c (generic_ivar_set): add frozen check fro immediate values. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@14294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_f_global_variables): variable names should notmatz2007-11-261-6/+4
| | | | | | duplicate. [ruby-dev:32344] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@14014 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * configure.in: check struct timespec, clock_gettime, utimensat,akr2007-11-191-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | struct stat.st_atim, struct stat.st_atimespec, struct stat.st_atimensec, struct stat.st_mtim, struct stat.st_mtimespec, struct stat.st_mtimensec, struct stat.st_ctim, struct stat.st_ctimespec, struct stat.st_ctimensec. * include/ruby/missing.h: provide struct timespec if not available. * time.c: support nanosecond-resolution using struct timespec. * include/ruby/intern.h: provide rb_time_nano_new. * file.c (utime_internal): use utimensat if available. (rb_file_s_utime): refactored. (rb_f_test): use stat_atime, stat_mtime, stat_ctime. (rb_stat_cmp): check tv_nsec. (stat_atimespec): new function. (stat_atime): ditto. (stat_mtimespec): ditto. (stat_mtime): ditto. (stat_ctimespec): ditto. (stat_ctime): ditto. (rb_stat_atime): use stat_atime. (rb_file_s_atime): ditto. (rb_file_atime): ditto. (rb_stat_mtime): use stat_mtime. (rb_file_s_mtime): ditto. (rb_file_mtime): ditto. (rb_file_ctime): use stat_ctime. (rb_file_s_ctime): ditto. (rb_stat_ctime): ditto. * variable.c (rb_copy_generic_ivar): clear clone's instance variables if obj has no instance variable. * marshal.c (w_object): dump instance variables of generated string for TYPE_USERDEF, even if original object has instance variables. * lib/time.rb (Time#xmlschema): use nsec instead of usec. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@13968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_cvar_set): cvar assignment obey same rule to cvarmatz2007-11-091-35/+27
| | | | | | reference. [ruby-dev:32192] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@13854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_cvar_set): check whether class variable ismatz2007-10-031-9/+61
| | | | | | | | | | defined in superclasses. root classes have higher priority. removes lower class variable entry from IV_TBL (if it's defined in classes, not modules). * variable.c (rb_cvar_get): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@13604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (obj_ivar_each): get rid of warning.usa2007-09-291-1/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@13570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_ivar_set): fix class instance variable.akr2007-09-291-0/+1
| | | | | | | * object.c (rb_class_real): cl argument may be 0. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@13563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/intern.h: export rb_ivar_foreach.akr2007-09-281-70/+192
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/ruby/ruby.h: modify struct RObject and RClass for optimizing T_OBJECT space. [ruby-dev:31853] (ROBJECT_LEN, ROBJECT_PTR) (RCLASS_IV_TBL, RCLASS_M_TBL, RCLASS_SUPER, RCLASS_IV_INDEX_TBL) (RMODULE_IV_TBL, RMODULE_M_TBL, RMODULE_SUPER): abstract accessor defined. * variable.c: support the modified RObject and RClass. * object.c: ditto. * class.c: ditto. * gc.c: ditto. * marshal.c: ditto. * eval_method.ci: use the abstract accessor. * insns.def: ditto. * proc.c: ditto. * struct.c: ditto. * eval.c: ditto. * error.c: ditto. * vm.c: ditto. * insnhelper.ci: ditto. * ext/digest/digest.c: ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@13543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval_jump.ci (rb_f_catch): generate new tag object if no argument ismatz2007-09-011-1/+2
| | | | | | | | | | | | | | | | | | | given. backported from MatzRuby. [ruby-dev:31609] * eval_jump.ci (rb_catch): call #catch without arguments if tag string is NULL. * eval_jump.ci (rb_f_throw): allow throwing non-symbol object. * eval.c (rb_catch_obj): new function to wait throw with arbitrary object. * eval.c (rb_throw_obj): new function to throw arbitrary object. * variable.c (check_autoload_table): prevent multiple calls from RSTRING_PTR(). git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@13331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * encoding.c: provide basic features for M17N.matz2007-08-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * parse.y: encoding aware parsing. * parse.y (pragma_encoding): encoding specification pragma. * parse.y (rb_intern3): encoding specified symbols. * string.c (rb_str_length): length based on characters. for older behavior, bytesize method added. * string.c (rb_str_index_m): index based on characters. rindex as well. * string.c (succ_char): encoding aware succeeding string. * string.c (rb_str_reverse): reverse based on characters. * string.c (rb_str_inspect): encoding aware string description. * string.c (rb_str_upcase_bang): encoding aware case conversion. downcase, capitalize, swapcase as well. * string.c (rb_str_tr_bang): tr based on characters. delete, squeeze, tr_s, count as well. * string.c (rb_str_split_m): split based on characters. * string.c (rb_str_each_line): encoding aware each_line. * string.c (rb_str_each_char): added. iteration based on characters. * string.c (rb_str_strip_bang): encoding aware whitespace stripping. lstrip, rstrip as well. * string.c (rb_str_justify): encoding aware justifying (ljust, rjust, center). * string.c (str_encoding): get encoding attribute from a string. * re.c (rb_reg_initialize): encoding aware regular expression * sprintf.c (rb_str_format): formatting (i.e. length count) based on characters. * io.c (rb_io_getc): getc to return one-character string. for older behavior, getbyte method added. * ext/stringio/stringio.c (strio_getc): ditto. * io.c (rb_io_ungetc): allow pushing arbitrary string at the current reading point. * ext/stringio/stringio.c (strio_ungetc): ditto. * ext/strscan/strscan.c: encoding support. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@13261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_global_entry, rb_f_untrace_var, rb_alias_variable,nobu2007-06-171-33/+44
| | | | | | | | | | rb_generic_ivar_table, generic_ivar_get, generic_ivar_set, generic_ivar_defined, generic_ivar_remove, rb_mark_generic_ivar, rb_free_generic_ivar, rb_copy_generic_ivar, rb_obj_instance_variables): suppress warnings. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@12563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_path2class): get rid of dangling pointer caused bynobu2007-06-171-4/+1
| | | | | | | optimized out value. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@12562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval_load.c (Init_load): delay allocating an array for rb_load_pathakr2007-06-141-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to avoid GC problem in very early stage. (RUBY_GC_STRESS causes GC in such stage.) * variable.c (rb_gc_mark_global_tbl): rb_global_tbl may be 0 in very early stage. * thread.c (thread_cleanup_func) [IA64]: clear register stack position. (thread_start_func_2) [IA64]: record the beginning of register stack using extra argument. (rb_gc_save_machine_context) [IA64]: record the end of register stack. * gc.c [IA64] (SET_STACK_END): record the end of register stack. (garbage_collect) [IA64]: use recorded register stack area for GC marking. (yarv_machine_stack_mark) [IA64]: GC mark from the register stack area. * yarvcore.c [IA64] (rb_gc_register_stack_start): defined. (Init_VM): store th->self on stack to fix GC problem. (Init_yarv) [IA64]: initialize the beginning of register stack. * yarvcore.h (struct rb_thread_struct) [IA64]: new members for register stack area. * thread_pthread.ci (thread_start_func_1) [IA64]: call thread_start_func_2 with the end of register stack. * cont.c (struct rb_context_struct) [IA64]: new members for register stack area. (cont_mark) [IA64]: GC mark from register stack area. (cont_free) [IA64]: free saved register stack. (cont_save_machine_stack) [IA64]: record the position and contents of the register stack. (cont_capture): store cont->self on stack to fix GC problem. (cont_restore_1) [IA64]: restore the register stack. [IA64] (register_stack_extend): new function. (cont_restore_0) [IA64]: call register_stack_extend instead of cont_restore_1. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@12537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby: moved public headers.nobu2007-06-101-4/+4
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * iseq.c (prepare_iseq_build): freeze filename and name string.ko12007-06-071-2/+6
| | | | | | | | * variable.c: freeze class name string. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@12458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * parse.y, compile.c, gc.c, insns.def, intern.h, iseq.c, node.h,matz2007-02-231-1/+1
| | | | | | | | | | | object.c, string.c, variable.c, vm_macro.def: revert private instance variable feature, which is postponed until next major release. * marshal.c: TYPE_SYMBOL2 removed; MARSHAL_MINOR reverted back to 8th version. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (ivar_i): need to support class local instancematz2007-02-061-1/+1
| | | | | | variables. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11641 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm.c (eval_get_cvar_base): destination for class variable accessmatz2007-02-021-9/+33
| | | | | | | | | | | | | | | | | is now strictly innermost surrounding class or module. warned if accessed from toplevel. * variable.c (rb_cvar_get): new class variable look-up scheme: 1) look up in the class. 2) if the class is singleton attached to a class (i.e. metaclass) then start look up in the attached class and its ancestors. 3) otherwise, look-up in ancestors of the class. * eval.c (cvar_cbase): destination for class variable access is the class/module that holds the method, or cbase outside of methods. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * variable.c (rb_cvar_set): remove warn argument.matz2007-02-021-3/+3
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11611 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * Merge YARVko12006-12-311-60/+34
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e