[ruby-core:62425] [ruby-trunk - Bug #5328] Splat args are treated wrongly in instance_exec and class_exec

From: myron.marston@...
Date: 2014-05-06 16:38:25 UTC
List: ruby-core #62425
Issue #5328 has been updated by Myron Marston.


Thanks for taking the time to explain.

This surprises me a bit because I've followed ruby development closely for a number of years and this is the first time I've heard of this particular proc vs lambda difference (I know of others like the difference in `return` and `ArgumentError` if a lambda is given the wrong number of args).  It also seems very counterintuitive to me.

Is there a prior issue where this was discussed?  I'd like to read up on it.

Thanks!

----------------------------------------
Bug #5328: Splat args are treated wrongly in instance_exec and class_exec
https://bugs.ruby-lang.org/issues/5328#change-46574

* Author: Myron Marston
* Status: Rejected
* Priority: Normal
* Assignee: Akira Tanaka
* Category: 
* Target version: 
* ruby -v: ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-darwin10.8.0]
* Backport: 
----------------------------------------
This gist demonstrates the issue:

https://gist.github.com/1218664

On 1.8.7, instance_exec and class_exec treat splat block args the same as method splat args.  On 1.9, it is treated differently and this is very unexpected.



-- 
https://bugs.ruby-lang.org/

In This Thread