From: tom@... Date: 2014-04-10T06:04:39+00:00 Subject: [ruby-core:61940] [ruby-trunk - Bug #9722] [Open] Failure with multiple keyword arguments Issue #9722 has been reported by Thomas Cioppettini. ---------------------------------------- Bug #9722: Failure with multiple keyword arguments https://bugs.ruby-lang.org/issues/9722 * Author: Thomas Cioppettini * Status: Open * Priority: Normal * Assignee: * Category: core * Target version: current: 2.2.0 * ruby -v: ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-darwin13.0] * Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN ---------------------------------------- I am running ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-darwin13.0] Given the following person class: class Person attr_reader :name, :age def initialize name:, age: @name = name @age = age end end There are a few cases of unexpected behavior when you instantiate a Person class given the above code. Failure 1: person = Person.new(name: "Tom", age: 24) person.name # expect "Tom" => nil person.age # expect 24 => 24 Failure 2: person = Person.new(name: "Tom") # expect ArgumentError missing keyword age person.name => "Tom" person.age => "Tom" If I were to just give an age keyword argument instantiation would fail as expected. -- https://bugs.ruby-lang.org/