Guillaume Melquiond wrote:
Quoting Andreas Fabri:
even with the release candidate for 1_34 I get this error message
c:/Boost/include/boost-1_34\boost/numeric/interval/hw_rounding.hpp(38) : fatal error C1189: #error : Boost.Numeric.Interval: Please specify rounding control mechanism.
on AMD Turion with XP 64 and VC 2005.
Can anybody fix this or give a hint what I have to find out on mt platform to fix it.
I have access neither to this processor nor to this operating system nor to this compiler, so it's a bit complicated to tell you how to fix it. Can you tell me on which FPU (x87, SSE2, 3Dnow) the floating-point computations are executed on your platform?
If your platform supports the C99 fenv.h rounding control, then you don't have to know the FPU, you can just modify the hw_rounding.hpp file at line 28 by adding a check for a macro identifying your system. Please report to this mailing-list which macro you used so that other users can benefit from it and I can put it into CVS.
I believe _M_X64 might be the right macro here (but Andreas needs to check as I don't have a Win64 platform either). I'm not completely sure but I believe this platform depricates the x87 instruction set in favour of the SSE registers, in case that makes any difference, again Andreas would have to take a look at the compilers assembly output to figure that one out. BTW I believe recent Intel Win32 compiler releases do the same thing for x86 as well (which is to say they don't use the x87 instructions just the SSE ones). But maybe someone more knowledgable will step in and comfirm this: or maybe it makes no difference? HTH, John.