[Insight-developers] vnl_math changes

Brad King brad.king at kitware.com
Mon Jul 19 15:04:31 EDT 2004


Hans Johnson wrote:
> Brad,
> 
> The error with intel 8 compiler is that the finite function is
> overloaded to take either float or double, but not long double.  The
> float version simply calls finitef.  In order to work around this, I
> thought it would be most appropriate to test for finitef finite, and
> finitel separately. I also thought that the VNL_HAS_IEEEFP was a
> parallel construct that should also test for these separatly.
> 
> The real problem is that the original code will not compile because of
> the ambiguous call to finite(double xxx) or finite(float xxx) when xxx
> is a long double.
> 
> All the VNL_*_IEEEFP changes could be reverted back, as I now know they
> are not used on the intel 8, or gcc platforms.

Okay, now I understand the situation.  Since whatever we do has to be 
contributed back to VXL proper and they use a different set of 
platforms/compilers than ITK, let's keep the changes as simple as possible.

Please revert all these changes back and just put a simple #ifdef in for 
the intel compiler to solve this immediate problem.  Then add a feature 
request to the bug tracker to reimplement vnl_math.cxx and assign it to 
me.  Include in the bug report this explanation you just sent me.  I'll 
add to it the issues I encountered months ago.  That way the situation 
will be documented and I can bring it up with the VXL folks.  Then once 
it is fixed in VXL I'll import the changes into ITK's version.

Thanks,
-Brad


More information about the Insight-developers mailing list