Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
4.1.3
-
None
-
None
-
HP aCC 3.77/HP-UX 11.11
Description
The test below attempts to exhaustively exercise the synopsis of the <wchar.h> header. With stdcxx it fails to compile with HP aCC 3.77 on HP-UX 11.11 even though it compiles when using the native C++ Standard Library (with the -AA compiler option):
$ cat t.cpp && uname -sr && aCC -V && gmake t
#include <wchar.h>
#ifndef NULL
- error NULL not #defined
#endif
#ifndef WCHAR_MAX
- error WCHAR_MAX not #defined
#endif
#ifndef WCHAR_MIN
- error WCHAR_MIN not #defined
#endif
#ifndef WEOF
- error WEOF not #defined
#endif
#ifdef __cplusplus
extern "C" {
#endif
void test_signatures ()
{
mbstate_t state;
wint_t wint;
size_t size;
struct tm t;
&fgetwc;
&fgetws;
&fputwc;
&fputws;
&fwprintf;
&fwscanf;
&getwc;
&getwchar;
&mbrlen;
&mbrtowc;
&mbsinit;
&mbsrtowcs;
&putwc;
&putwchar;
&swprintf;
&swscanf;
&ungetwc;
&vfwprintf;
&vwprintf;
&wcrtomb;
&wcscat;
#ifdef __cplusplus
{ wchar_t* (*pf)(wchar_t*, wchar_t) = &wcschr; } { const wchar_t* (*pf)(const wchar_t*, wchar_t) = &wcschr; }#else
&wcschr;
#endif
&wcscmp;
&wcscoll;
&wcscpy;
&wcscspn;
&wcslen;
&wcsncat;
&wcsncmp;
&wcsncpy;
#ifdef __cplusplus
{ wchar_t* (*pf)(wchar_t*, const wchar_t*) = &wcspbrk; } { const wchar_t* (*pf)(const wchar_t*, const wchar_t*) = &wcspbrk; } { wchar_t* (*pf)(wchar_t*, wchar_t) = &wcsrchr; } { const wchar_t* (*pf)(const wchar_t*, wchar_t) = &wcsrchr; }#else
&wcspbrk;
&wcsrchr;
#endif
&wcsrtombs;
&wcsspn;
#ifdef __cplusplus
{ wchar_t* (*pf)(wchar_t*, const wchar_t*) = &wcsstr; } { const wchar_t* (*pf)(const wchar_t*, const wchar_t*) = &wcsstr; }#else
&wcsstr;
#endif
&wcstod;
&wcstok;
&wcstol;
&wcstoul;
&wcsxfrm;
&wctob;
#ifdef __cplusplus
{ wchar_t* (*pf)(wchar_t*, wchar_t, size_t) = &wmemchr; } { const wchar_t* (*pf)(const wchar_t*, wchar_t, size_t) = &wmemchr; }#else
&wmemchr;
#endif
&wmemcmp;
&wmemcpy;
&wmemmove;
&wmemset;
&wprintf;
&wscanf;
}
#ifdef __cplusplus
} // extern "C"
#endif
int main ()
{
test_signatures ();
}
HP-UX B.11.11
aCC: HP ANSI C++ B3910B A.03.77
aCC -c -I/house/sebor/stdcxx-2007-06-28-r551753/include/ansi -I/usr/include -D_RWSTDDEBUG -mt -I/house/sebor/stdcxx-2007-06-28-r551753/include -I/house/sebor/build/stdcxx-2007-06-28-r551753-aCC-3.77-15s/include -I/house/sebor/stdcxx-2007-06-28-r551753/examples/include -Aa +nostl -g +d +w +W392 +W655 +W684 +W818 +W819 +W849 t.cpp
Error 119: "t.cpp", line 8 # #error WCHAR_MAX not #defined
- error WCHAR_MAX not #defined
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Error 119: "t.cpp", line 12 # #error WCHAR_MIN not #defined - error WCHAR_MIN not #defined
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Error 419: "t.cpp", line 25 # 'mbstate_t' is used as a type, but has not been
defined as a type.
mbstate_t state;
^^^^^^^^^
Error 403: "t.cpp", line 34 # Undeclared variable 'fwprintf'. Perhaps
'fprintf' as in "int fprintf(FILE *,const char *,...)"
["/usr/include/../include/stdio.h", line 233] was intended.
&fwprintf;
^^^^^^^^
Error 403: "t.cpp", line 35 # Undeclared variable 'fwscanf'. Perhaps 'fscanf'
as in "int fscanf(FILE *,const char *,...)"
["/usr/include/../include/stdio.h", line 234] was intended.
&fwscanf;
^^^^^^^
Error 403: "t.cpp", line 38 # Undeclared variable 'mbrlen'. Perhaps 'mblen' as
in "int mblen(const char *,unsigned long)"
["/usr/include/../include/stdlib.h", line 122] was intended.
&mbrlen;
^^^^^^
Error 403: "t.cpp", line 39 # Undeclared variable 'mbrtowc'. Perhaps 'mbtowc'
as in "int mbtowc(wchar_t *,const char *,unsigned long)"
["/usr/include/../include/stdlib.h", line 123] was intended.
&mbrtowc;
^^^^^^^
Error 172: "t.cpp", line 40 # Undeclared variable 'mbsinit'.
&mbsinit;
^^^^^^^
Error 403: "t.cpp", line 41 # Undeclared variable 'mbsrtowcs'. Perhaps
'mbstowcs' as in "unsigned long mbstowcs(wchar_t *,const char *,unsigned
long)" ["/usr/include/../include/stdlib.h", line 125] was intended.
&mbsrtowcs;
^^^^^^^^^
Error 403: "t.cpp", line 44 # Undeclared variable 'swprintf'. Perhaps
'sprintf' as in "int sprintf(char *,const char *,...)"
["/usr/include/../include/stdio.h", line 237] was intended.
&swprintf;
^^^^^^^^
Error 403: "t.cpp", line 45 # Undeclared variable 'swscanf'. Perhaps 'sscanf'
as in "int sscanf(const char *,const char *,...)"
["/usr/include/../include/stdio.h", line 238] was intended.
&swscanf;
^^^^^^^
Error 403: "t.cpp", line 47 # Undeclared variable 'vfwprintf'. Perhaps
'vfprintf' as in "int vfprintf(FILE *,const char *,double *)"
["/usr/include/../include/stdio.h", line 570] was intended.
&vfwprintf;
^^^^^^^^^
Error 699: "t.cpp", line 47 # Error limit reached; halting compilation.
&vfwprintf;
^^^^^^^^^
Attachments
Issue Links
- is related to
-
STDCXX-125 [aCC 3.63/HP-UX 11.23] wctob undeclared in <wchar.h>
- Resolved