>> that often happens when a function that returns double has no external >> declaration in scope where it's used, > > hang on: perhaps that only causes stack overflow. oh well, now you know not > to do it in any case.
i've checked now: that case does give stack overflow. stack underflow will result if you declare a function as returning double in the caller, but it doesn't actually do that, perhaps it's void or int.
