From: matz@... (Yukihiro Matsumoto) Date: 2001-10-26T06:32:13+09:00 Subject: [ruby-talk:23356] Re: () vs (...) in header files Hi, First of all, I hate too strict prototypes. ;-) In message "[ruby-talk:23292] Re: () vs (...) in header files" on 01/10/25, Paul Brannan writes: |1) rb_thread_select and rb_thread_wait_for take ANYARGS, but passing just |any old arguments to these functions is likely to crash your program. I |once had a case where I accidentally passed the wrong type for the timeval |parameter, and it took me a while to figure out what was going on. |Changing these to use the correct arguments in the header does not appear |to break anything (at least in 1.6.5). I'm sorry but I'm not going to change this until Rite restructure. |2) A less important issue, rb_define_method and friends take ANYARGS, but |I don't think it's ever legal for these functions to ever take a method |that doesn't have at least one VALUE parameter for self (so they should |take VALUE(*)__(VALUE, ...). As in [ruby-talk:23319], it's not that easy. |3) I think there could be similar issues as #2 for rb_iterate, rb_rescue, |etc. | |4) rb_protect_inspect still takes a VALUE(*)(). I think I can fix above two though. matz.