From: Robert Klemme Date: 2005-08-12T21:16:15+09:00 Subject: Re: Array redefinition problem Leslie Viljoen wrote: > Hello! > > I have a large program which needs to be able to use Postgres OR > MySQL. Since the MySQL module's query result has a num_rows method > and Postgres returns an array, I thought I'd just redefine Array like > this: > > class Array > def num_rows > return length > end > end > > But in another line (@entries = Array.new) I get: > > /var/www/ruby/core.rb:443:in `initialize': wrong number of arguments > (0 for 2) (ArgumentError) > > Now if I do the same thing in a small test program, I get no errors. > This works: > > class Array > def num_rows > return length > end > end > > res = Array.new > puts res.num_rows > > In the large program I am not redefining Array anywhere else - what > else can > cause this error? My guess is that it's unrelated to your change of the Array class. Did you check line 443 of core.rb? robert