diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-10-29 18:08:56 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-10-29 18:08:56 +0000 |
commit | bd89d0cba5a20a2d2f76c4d98e3e70553973c7e7 (patch) | |
tree | e3b9a1a3f714e7f3a86d24fb1cce0a018b6be88e | |
parent | e33cbc0f540560a3fe0694a5c2792a1b45499951 (diff) | |
download | ruby-bd89d0cba5a20a2d2f76c4d98e3e70553973c7e7.tar.gz |
rbconfig/obsolete.rb: Config
* lib/rbconfig/obsolete.rb (Config): re-introduce warnings for a
lame-duck. [ruby-core:46836] [Bug #6809]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | lib/rbconfig/obsolete.rb | 38 | ||||
-rwxr-xr-x | tool/mkconfig.rb | 1 |
3 files changed, 44 insertions, 0 deletions
@@ -1,3 +1,8 @@ +Tue Oct 30 03:08:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/rbconfig/obsolete.rb (Config): re-introduce warnings for a + lame-duck. [ruby-core:46836] [Bug #6809] + Tue Oct 30 02:20:10 2012 Aaron Patterson <aaron@tenderlovemaking.com> * thread.c: added Thread#thread_variable_(get|set), diff --git a/lib/rbconfig/obsolete.rb b/lib/rbconfig/obsolete.rb new file mode 100644 index 0000000000..8669186083 --- /dev/null +++ b/lib/rbconfig/obsolete.rb @@ -0,0 +1,38 @@ +module ::RbConfig + module Obsolete + end + class << Obsolete + def _warn_ + loc, = caller_locations(2, 1) + loc = "#{loc.to_s}: " if loc + warn "#{loc}Use RbConfig instead of obsolete and deprecated Config." + self + end + + def const_missing(name) + _warn_ + ::RbConfig.const_get(name) + end + + def method_missing(*args, &block) + _warn_ + rbconfig = ::RbConfig + result = rbconfig.__send__(*args, &block) + result = rbconfig if rbconfig.equal?(result) + result + end + + def respond_to_missing?(*args, &block) + _warn_ + ::RbConfig.respond_to_missing?(*args, &block) + end + end +end + +::Config = ::RbConfig::Obsolete._warn_ +=begin +def Object.const_missing(name) + return super unless name == :Config + ::RbConfig::Obsolete._warn_ +end +=end diff --git a/tool/mkconfig.rb b/tool/mkconfig.rb index e5203c4d2a..f9d97d3d71 100755 --- a/tool/mkconfig.rb +++ b/tool/mkconfig.rb @@ -248,6 +248,7 @@ print <<EOS ) end end +autoload :Config, "rbconfig/obsolete.rb" # compatibility for ruby-1.8.4 and older. CROSS_COMPILING = nil unless defined? CROSS_COMPILING EOS |