Issue #15409 has been updated by jeremyevans0 (Jeremy Evans). marcandre (Marc-Andre Lafortune) wrote in #note-9: > I opened a PR that resolves this: https://github.com/ruby/ostruct/pull/15 I reviewed the PR and the changes look good to me. In regards to OpenStruct in general, I agree with @marcandre and @mame that= it is an antipattern. I think it is almost always preferable to use a plai= n hash. Personally, I would like to move ostruct from default gems to bund= led gems, and at some point consider removing it as a bundled gem. The onl= y complicating factor is json has a dependency on ostruct. JSON::GenericObj= ect inherits from OpenStruct, though as far as I can tell, it doesn't seem = to be used internally. ---------------------------------------- Bug #15409: OpenStruct error when attribute is called 'method' https://bugs.ruby-lang.org/issues/15409#change-87511 * Author: elioncho (El=EDas Orozco) * Status: Assigned * Priority: Normal * Assignee: marcandre (Marc-Andre Lafortune) * ruby -v: ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-darwin16] * Backport: 2.4: UNKNOWN, 2.5: UNKNOWN ---------------------------------------- The following error is shown when you try to access an OpenStruct with a pr= operty called method: `method': wrong number of arguments (given 0, expected 1) (ArgumentError) To replicate: ~~~ ruby require 'ostruct' o =3D OpenStruct.new({ method: 'get' }) o.method ~~~ The expected behavior should be to return 'get' -- = https://bugs.ruby-lang.org/ Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=3Dunsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>