[Insight-developers] NumericTraits for long long and __int64
Bill Lorensen
bill.lorensen at gmail.com
Mon Nov 23 10:56:29 EST 2009
Brad,
I can't tell from your note. Is this a Borland only problem? If so, I
can take a look.
Bill
On Mon, Nov 23, 2009 at 10:14 AM, Bradley Lowekamp
<blowekamp at mail.nih.gov> wrote:
> Hello,
> I have been working on adding NumericTraits for types long long and __int64.
> To address the issue of size_t being type long long on win64, and to get a
> more portable 64-bit integer.
> The traits for type long long and unsigned long long seem to be working on
> the systems which support the tyoe. std::numeric_limits is specialized and
> the values seem to be set and printed ok in the NumericTraitsTest.
> Unfortunately __int64 does not seem to be working right. It appears that the
> Borland compiler is the only one where it is a fundamental type and it is
> convertible to double. It does not have a specialized std::numeric_limits
> defined. More problematic is the basic value of One and Zero set it
> itkNumericTraits.cxx don't seem to be functioning correctly. The output of
> itkNumericTraitsTest is:
>
> itk::NumericTraits<__int64>
> is_specialized: 0
> digits: 0
> digits10: 0
>
> is_signed: 0
> round_error(): 0
> denorm_min(): 0
> epsilon(): 0
> min(): 0
> max(): 0
> IsPositive( One )0
> IsNonpositive( One )1
> IsNegative( One )1
> IsNonnegative( One )0
> Zero: 1072693248
> One: 0
> ZeroValue(): 1072693248
> OneValue(): 0
> max(__int64): 0
> min(__int64): 0
> NonpositiveMin(): 0
> itk::NumericTraits<unsigned __int64>
> is_specialized: 0
> digits: 0
> digits10: 0
> is_signed: 0
> round_error(): 0
> denorm_min(): 0
> epsilon(): 0
> min(): 0
> max(): 0
> IsPositive( One )1
> IsNonpositive( One )0
> IsNegative( One )0
> IsNonnegative( One )1
> Zero: 0
> One: 1
> ZeroValue(): 0
> OneValue(): 1
> max(unsigned __int64): 0
> min(unsigned __int64): 0
> NonpositiveMin(): 0
>
> Take note of the One and Zero values it "__int64".
> I don't have access to the borland compiler, and don't know how to look into
> this issue further. I am tempted to say that we just shouldn't support the
> __int64 type as it'll make things simpler.
> Brad
>
> ========================================================
>
> Bradley Lowekamp
>
> Lockheed Martin Contractor for
>
> Office of High Performance Computing and Communications
>
> National Library of Medicine
>
> blowekamp at mail.nih.gov
>
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Kitware offers ITK Training Courses, for more information visit:
> http://kitware.com/products/protraining.html
>
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-developers
>
>
More information about the Insight-developers
mailing list