os-test > basic > wchar
Legend
| Outcomes | ||||||
|---|---|---|---|---|---|---|
| Good | Good | Missing optional | Outside libc | |||
| Partial | Extension | Previous posix | ||||
| Neutral | None | |||||
| Bad | Compile error | Incompatible | Missing header | Undeclared | Undefined reference | Unknown type |
Good. A cell is good if the declaration is present
in the header and can be linked with libc. This outcome means the test
succeeded with the appropriate -D_POSIX_C_SOURCE=202405 or
-D_XOPEN_SOURCE=800 feature macros and the standard
libraries libc, libpthread, libm, librt, and libxnet.
Missing optional. A cell is missing_optional if the test could not be compiled, but the declaration is optional in POSIX and need not be provided.
Outside libc. A cell is outside_libc if the test could be compiled, but had to be linked with another standard library than the ones prescribed by POSIX: libc, libpthread, libm, librt, and libxnet. This may not conform to POSIX depending on the linking options provided by getconf(1)/confstr(3).
Extension. A cell is extension if the test could
not be compiled with the _POSIX_C_SOURCE and
_XOPEN_SOURCE feature macros, but it could instead be
compiled with other system-specific feature macros that provide the
entire API. This outcome means the system header feature macro logic
does not support the latest POSIX.1-2024 standard and only receives
partial credit. This outcome typically indicates a declaration new to
POSIX.1-2024.
Previous posix. A cell is previous_posix if the
test could not be compiled with the
-D_POSIX_C_SOURCE=202405 or
-D_XOPEN_SOURCE=800 feature macros from the POSIX.1-2024
standard, but the test could instead be compiled with the older
-D_POSIX_C_SOURCE=200809L or
-D_XOPEN_SOURCE=700
feature macros from the older POSIX.1-2008 standard. This
outcome means the system header feature macro logic does not support
the latest POSIX.1-2024 standard and only receives partial credit. In
particular, the header did not check if the value was higher than the
supported value, but instead hard-coded the supported values, and
failed to be forward compatible with new standard versions.
None. A cell is none if there is no test data result for that operating system.
Compile error. A cell is compile_error if the test could not be compiled and the error message was not recognized as a more precise error test outcome.
Incompatible. A cell is incompatible if the declaration existed in the header, but had a signature that is incompatible with the standardized declaration. This outcome typically indicates a type error in the declaration. Addressing the issue may require an incompatible ABI change or special compatibility logic.
Missing header. A cell is missing_header if the header did not exist.
Undeclared. A cell is undeclared if the header did not contain the declaration.
Undefined reference. A cell is undefined if the test could be compiled, but could not be linked with the standard library.
Unknown type. A cell is unknown_type if the test could not be compiled and failed because a required type was not declared. In some cases, functions fail because the header omitted a required type for a function and instead declared the function in an alternate fashion with an incompatible alias for the type.
§. The § link on the left of each row links to that row.
wchar
| genode Genode |
|
|---|---|
| § btowc | genode: good exit: 0 |
| § fgetwc | genode: good exit: 0 |
| § fgetws | genode: good exit: 0 |
| § fputwc | genode: good exit: 0 |
| § fputws | genode: good exit: 0 |
| § fwide | genode: good exit: 0 |
| § fwprintf | genode: good exit: 0 |
| § fwscanf | genode: good exit: 0 |
| § getwc | genode: good exit: 0 |
| § getwchar | genode: bad fputwc: EBADF |
| § mbrlen | genode: good exit: 0 |
| § mbrtowc | genode: good exit: 0 |
| § mbsinit | genode: bad mbsinit(&ps) == 0 |
| § mbsnrtowcs | genode: good exit: 0 |
| § mbsrtowcs | genode: good exit: 0 |
| § open_wmemstream | genode: good exit: 0 |
| § putwc | genode: good exit: 0 |
| § putwchar | genode: bad putwchar: EBADF |
| § swprintf | genode: good exit: 0 |
| § swscanf | genode: good exit: 0 |
| § ungetwc | genode: good exit: 0 |
| § vfwprintf | genode: good exit: 0 |
| § vfwscanf | genode: good exit: 0 |
| § vswprintf | genode: good exit: 0 |
| § vswscanf | genode: good exit: 0 |
| § vwprintf | genode: bad vwprintf: EBADF |
| § vwscanf | genode: bad puts: EBADF |
| § wcpcpy | genode: good exit: 0 |
| § wcpncpy | genode: good exit: 0 |
| § wcrtomb | genode: good exit: 0 |
| § wcscasecmp | genode: good exit: 0 |
| § wcscasecmp_l | genode: undefined |
| § wcscat | genode: good exit: 0 |
| § wcschr | genode: good exit: 0 |
| § wcscmp | genode: good exit: 0 |
| § wcscoll | genode: good exit: 0 |
| § wcscoll_l | genode: undefined |
| § wcscpy | genode: good exit: 0 |
| § wcscspn | genode: good exit: 0 |
| § wcsdup | genode: good exit: 0 |
| § wcsftime | genode: good exit: 0 |
| § wcslcat | genode: good exit: 0 |
| § wcslcpy | genode: good exit: 0 |
| § wcslen | genode: good exit: 0 |
| § wcsncasecmp | genode: good exit: 0 |
| § wcsncasecmp_l | genode: undefined |
| § wcsncat | genode: good exit: 0 |
| § wcsncmp | genode: good exit: 0 |
| § wcsncpy | genode: good exit: 0 |
| § wcsnlen | genode: good exit: 0 |
| § wcsnrtombs | genode: good exit: 0 |
| § wcspbrk | genode: good exit: 0 |
| § wcsrchr | genode: good exit: 0 |
| § wcsrtombs | genode: good exit: 0 |
| § wcsspn | genode: good exit: 0 |
| § wcsstr | genode: good exit: 0 |
| § wcstod | genode: good exit: 0 |
| § wcstof | genode: good exit: 0 |
| § wcstok | genode: good exit: 0 |
| § wcstol | genode: good exit: 0 |
| § wcstold | genode: bad wcstold returned 0.000000 rather than 0.000000 |
| § wcstoll | genode: good exit: 0 |
| § wcstoul | genode: good exit: 0 |
| § wcstoull | genode: good exit: 0 |
| § wcsxfrm | genode: good exit: 0 |
| § wcsxfrm_l | genode: undefined |
| § wctob | genode: good exit: 0 |
| § wmemchr | genode: good exit: 0 |
| § wmemcmp | genode: good exit: 0 |
| § wmemcpy | genode: good exit: 0 |
| § wmemmove | genode: good exit: 0 |
| § wmemset | genode: good exit: 0 |
| § wprintf | genode: bad wprintf: EBADF |
| § wscanf | genode: bad fputws: EBADF |
|
Optional: XSI X/Open System Interfaces |
|
| § wcswidth | genode: good exit: 0 |
| § wcwidth | genode: good exit: 0 |