[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: proposed gnulib-related additions to Autoconf
From: |
Ralf Wildenhues |
Subject: |
Re: proposed gnulib-related additions to Autoconf |
Date: |
Sat, 1 Apr 2006 12:00:10 +0200 |
User-agent: |
Mutt/1.5.9i |
Hi Paul,
* Paul Eggert wrote on Fri, Mar 31, 2006 at 09:51:45PM CEST:
> Ralf Wildenhues <address@hidden> writes:
>
> > Even that is theoretical at this point: I do not know of a system that
> > has an intmax_t that is larger than long long. But AFAIK C99 allows it.
>
> Once we go down that route we're in trouble. C99 allows an infinite
> number of integer types. For example, an implementation can have an
> integer type that is halfway between int and long. I think the only
> way we can address this, with the current API, is to catalog the
> monsters that we find. (I'm hoping we don't find any.)
OK. Let's not add intmax_t then until we find such a monster. :)
> > That's why I only suggested it for long and long long, not for int.
> > But maybe I'm still missing something else here.
>
> Ah, OK, I think I see your point now. Yes, that would be an optimization.
OK, good.
> Here's my current attempt to address all the issues you mentioned, as
> a patch against CVS Autoconf. I started to factor out the bits-width
> stuff into a new macro _AC_C_TYPE_BITS_INTEGER, but it doesn't have a
> public API yet, since I still don't have the caching/sharing issues
> nailed down.
OK. Well, I've rewritten that beast completely. Coming up in another
post.
> 2006-03-31 Paul Eggert <address@hidden>
>
> Import macros from gnulib (often changing their name).
Just one comment to this:
> +# _AC_STRUCT_DIRENT(MEMBER)
> +# -------------------------
> +AC_DEFUN([_AC_STRUCT_DIRENT],
> +[
> + AC_REQUIRE([AC_HEADER_DIRENT])
> + AC_CHECK_MEMBERS([struct dirent.$1], [], [],
> + [
> +#include <sys/types.h>
> +#ifdef HAVE_DIRENT_H
> +# include <dirent.h>
> +#else
> +# define dirent direct
> +# ifdef HAVE_SYS_NDIR_H
> +# include <sys/ndir.h>
> +# endif
> +# ifdef HAVE_SYS_DIR_H
> +# include <sys/dir.h>
> +# endif
> +# ifdef HAVE_NDIR_H
> +# include <ndir.h>
> +# endif
> +#endif
> + ])
> +])
I'd double-quote the INCLUDES argument here.
Cheers,
Ralf