>>>>> "P" == PaulC  <paulch / megapathdsl.net> writes:

P> It definitely looks like the problem is limited to the *BSDs - the question
P> is does anyone have any ideas what the underlying cause might be ?

 I know nothing about *BSD, but in a previous message you have said :

P> Also if I replace the 'raise' in the offending function with a 'return Qnil'
P> all the problems go away.

 Try in your source to don't mix C++-try with rb_raise()


Guy Decoux