On Thu, 7 Nov 2013, Uros Bizjak wrote: > Please note that following code form fenv.c won't generate overflow > exception on x87: > > if (excepts & FP_EX_OVERFLOW) > { > volatile float max = __FLT_MAX__; > r = max * max; > }
r being volatile is intended to ensure that the result does get stored back to memory, and so in particular that a result computed with excess precision gets converted back to float and the exception is raised. -- Joseph S. Myers jos...@codesourcery.com