Commit a66a1e92 authored by Yukihiro "Matz" Matsumoto's avatar Yukihiro "Matz" Matsumoto Committed by GitHub

Merge pull request #3179 from ksss/struct

Should not define to `Struct` class
parents 34ac707e bf21063a
...@@ -299,7 +299,7 @@ mrb_struct_s_def(mrb_state *mrb, mrb_value klass) ...@@ -299,7 +299,7 @@ mrb_struct_s_def(mrb_state *mrb, mrb_value klass)
} }
st = make_struct(mrb, name, rest, struct_class(mrb)); st = make_struct(mrb, name, rest, struct_class(mrb));
if (!mrb_nil_p(b)) { if (!mrb_nil_p(b)) {
mrb_yield_with_class(mrb, b, 1, &st, st, mrb_class_ptr(klass)); mrb_yield_with_class(mrb, b, 1, &st, st, mrb_class_ptr(st));
} }
return st; return st;
......
...@@ -23,6 +23,9 @@ assert('Struct#==', '15.2.18.4.1') do ...@@ -23,6 +23,9 @@ assert('Struct#==', '15.2.18.4.1') do
cc1 = c.new(1,2) cc1 = c.new(1,2)
cc2 = c.new(1,2) cc2 = c.new(1,2)
assert_true cc1 == cc2 assert_true cc1 == cc2
Struct.new(:m1, :m2) { def foo; end }
assert_raise(NoMethodError) { Struct.new(:m1).new.foo }
end end
assert('Struct#[]', '15.2.18.4.2') do assert('Struct#[]', '15.2.18.4.2') do
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment