> In message "[ruby-talk:30242] Patch for Ruby 1.7" > on 02/01/05, "Lyle Johnson" <ljohnson / resgen.com> writes: > | > |Looking at the CVS version of Ruby, the declaration for rb_rescue2() in > |ruby.h isn't quite right when you're compiling under a C++ compiler. It > |currently reads: > | > | VALUE rb_rescue2 > |__((VALUE(*)(ANYARGS),VALUE,VALUE(*)(ANYARGS),VALUE,...)); > | > |but should instead read: > | > | VALUE rb_rescue2 __((VALUE(*)(VALUE),VALUE,VALUE(*)(VALUE),VALUE,...)); > > I don't remember why I did this. I guess I must had reason... So... does that mean it will be fixed or not? If you look at the code for rb_rescue2() in eval.c it's pretty clear that those two function pointers (i.e. the first and third arguments to rb_rescue2) only take one argument and aren't intended to accept variable-length argument lists.