Theoretically they&#x27;re supposed to be (in practice it&#x27;s hard to tell given how slow the rest of the language is and so I wouldn&#x27;t be surprised if there were undiscovered implementation issues, but they <i>should</i> be). The case where you do trap an overflow and redo the calculation with bignums is of course a bit slower than doing it with bignums in the first place so it&#x27;s not a completely free lunch (though AIUI the bignum calculation takes substantially longer than the trapped attempt at doing it with fixnums so it doesn&#x27;t really matter).