1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
eregon 2019-01-20 20:38:57 +00:00
parent 58573c33e4
commit 6204e0804b
147 changed files with 2728 additions and 21522 deletions

View file

@ -758,3 +758,31 @@ describe "A local variable assigned only within a conditional block" do
end
end
end
describe 'Local variable shadowing' do
ruby_version_is ""..."2.6" do
it "leads to warning in verbose mode" do
-> do
eval <<-CODE
a = [1, 2, 3]
a.each { |a| a = 3 }
CODE
end.should complain(/shadowing outer local variable/, verbose: true)
end
end
ruby_version_is "2.6" do
it "does not warn in verbose mode" do
result = nil
-> do
eval <<-CODE
a = [1, 2, 3]
result = a.map { |a| a = 3 }
CODE
end.should_not complain(verbose: true)
result.should == [3, 3, 3]
end
end
end