autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: AC_TYPE_UINT8_T and co


From: Stepan Kasal
Subject: Re: AC_TYPE_UINT8_T and co
Date: Wed, 30 May 2007 14:48:12 +0200
User-agent: Mutt/1.4.2.2i

Hello,

On Wed, May 30, 2007 at 11:48:42AM +0100, Patrick Welche wrote:
> - I never see uint8_t (cached), and I think this is because
>   AC_TYPE_INT8_T uses ac_cv_c_uint8_t, whereas AC_CHECK_TYPES tests
>   ac_cv_type_uint8_t, yet you seem to see it - I do see it for size_t...

well, I was cheating.  It was not paste, it was edited.  The actual
results look like this:

checking for uint8_t... yes
checking for size_t... yes
checking for uint8_t... yes
checking for size_t... (cached) yes

And yes, it sounds inconsistent.  IMVHO the ac_cv_c_ prefix should be
changed to ac_cv_type_ here.  What do others think?

So it might be safer to use

AC_CHECK_TYPES([int64_t])
AC_TYPE_INT64_T

which will continue to give the same results even if the above
inconsistency gets fixed.

> #ifdef HAVE_INT64_T
>   code using int64_t
> #else
>   long winded int32_t alternative
> #endif

You explanation is correct: this works, but might prove to be
fragile.

It is documented that the fallback definition is provided as #define,
not typedef.  So you might rely on that and use:

#if defined(HAVE_INT64_T) || defined(int64_t)
   #define USE_INT64 1
#else
   #undef USE_INT64
#endif

> > Hope you find this mosaic of comments useful,
        ... ``incorrect comments,'' I should have said ...
> Yes, thank you!

Yet it helped, wow!

Have a nice day,
        Stepan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]