[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: AC_TYPE_MBSTATE_T
From: |
Paul Eggert |
Subject: |
Re: AC_TYPE_MBSTATE_T |
Date: |
23 Jul 2003 17:36:57 -0700 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.3 |
Stepan Kasal <address@hidden> writes:
> It seems that wchar.h would include <sys/_mbstate_t.h>, if
> _INCLUDE__STDC_A1_SOURCE were defined.
What does that symbol mean? From its name, I wouldn't mess with it:
it sounds like it has something to do with internal communication from
the HP-UX compiler to the include file.
Autoconf generates a script that attempts to compile with -Ae option
on HP-UX 10.20 and later. That sounds related. Perhaps HP-UX's -Ae
option is doing something that GCC also should be doing. But you'll
need somebody on the ground in HP-land to check this out.
> Or is it better to simply call AC_FUNC_MBRTOWC which would find out
> that mbstate_t is not defined and would disable multibyte support
> for that platform?
Yes, that's the ticket.
Another point: these days, if the host doesn't declare a function, I
wouldn't use it. That is, prefer AC_CHECK_DECLS to AC_CHECK_FUNCS.
> A somewhat related question: why does AC_TYPE_MBSTATE_T define
> mbstate_t if it is not defined by the headers? Just so that declarations
> of functions can contain it?
Yes, it's for user functions that want to define code that uses
mbstate_t. If the system doesn't really support mb states, then any
mbstate_t should do.