Bug #10708
Updated by nobu (Nobuyoshi Nakada) almost 10 years ago
Consider this: ~~~ruby def foo; end foo(*[]) #Splatting an empty list is ok foo(**{}) #Double splatting an empty hash is like calling foo({}) which gives an error ~~~ This is annoying in a function that is a wrapper around another function and just process some keywords: ~~~ruby def wrapper(*args, keyword: true, **others) puts keyword wrappee(*args,**others) #here this code will fail if others is empty end ~~~