Skip to content

Commit

Permalink
rbconfig/obsolete.rb: Config
Browse files Browse the repository at this point in the history
* lib/rbconfig/obsolete.rb (Config): re-introduce warnings for a
  lame-duck.  [ruby-core:46836] [Bug ruby#6809]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
  • Loading branch information
nobu committed Oct 29, 2012
1 parent e33cbc0 commit bd89d0c
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 0 deletions.
5 changes: 5 additions & 0 deletions ChangeLog
@@ -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),
Expand Down
38 changes: 38 additions & 0 deletions 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
1 change: 1 addition & 0 deletions tool/mkconfig.rb
Expand Up @@ -248,6 +248,7 @@ def RbConfig.ruby
)
end
end
autoload :Config, "rbconfig/obsolete.rb" # compatibility for ruby-1.8.4 and older.
CROSS_COMPILING = nil unless defined? CROSS_COMPILING
EOS

Expand Down

0 comments on commit bd89d0c

Please sign in to comment.