
|
If you were logged in you would be able to see more operations.
|
|
|
|
|
| Component/s: |
Tests
|
| Affects Version/s: |
4.2.0
|
| Fix Version/s: |
4.2.1
|
|
| Severity: |
Incorrect Behavior
|
The 21.cwchar.cpp test fails with the following assertions:
-----------
- ASSERTION (S7) (4 lines):
- TEXT: masking macro getwc unexpectedly defined
- CLAUSE: lib.c.strings
- LINE: 512
- ASSERTION (S7) (4 lines):
- TEXT: masking macro putwc unexpectedly defined
- CLAUSE: lib.c.strings
- LINE: 512
- ASSERTION (S7) (4 lines):
- TEXT: std::wcstok() not declared (_RWSTD_NO_WCSTOK = 0, _RWSTD_NO_WCSTOK_IN_LIBC = 0)
- CLAUSE: lib.c.strings
- LINE: 916
-----------
Also there are another assertions (see below), but I think these assertions should be avoided when _RWSTD_NO_XXX == 1 && _RWSTD_NO_XXX_IN_LIBC == 1
-----------
- ASSERTION (S7) (4 lines):
- TEXT: std::btowc() not declared (_RWSTD_NO_BTOWC = 1, _RWSTD_NO_BTOWC_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 942
- ASSERTION (S7) (4 lines):
- TEXT: std::wctob() not declared (_RWSTD_NO_WCTOB = 1, _RWSTD_NO_WCTOB_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 943
- ASSERTION (S7) (4 lines):
- TEXT: std::mbrlen() not declared (_RWSTD_NO_MBRLEN = 1, _RWSTD_NO_MBRLEN_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 948
- ASSERTION (S7) (4 lines):
- TEXT: std::mbrtowc() not declared (_RWSTD_NO_MBRTOWC = 1, _RWSTD_NO_MBRTOWC_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 949
- ASSERTION (S7) (4 lines):
- TEXT: std::wcrtomb() not declared (_RWSTD_NO_WCRTOMB = 1, _RWSTD_NO_WCRTOMB_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 950
- ASSERTION (S7) (4 lines):
- TEXT: std::mbsrtowcs() not declared (_RWSTD_NO_MBSRTOWCS = 1, _RWSTD_NO_MBSRTOWCS_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 952
- ASSERTION (S7) (4 lines):
- TEXT: std::wcsrtombs() not declared (_RWSTD_NO_WCSRTOMBS = 1, _RWSTD_NO_WCSRTOMBS_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 953
-----------
|
|
Description
|
The 21.cwchar.cpp test fails with the following assertions:
-----------
- ASSERTION (S7) (4 lines):
- TEXT: masking macro getwc unexpectedly defined
- CLAUSE: lib.c.strings
- LINE: 512
- ASSERTION (S7) (4 lines):
- TEXT: masking macro putwc unexpectedly defined
- CLAUSE: lib.c.strings
- LINE: 512
- ASSERTION (S7) (4 lines):
- TEXT: std::wcstok() not declared (_RWSTD_NO_WCSTOK = 0, _RWSTD_NO_WCSTOK_IN_LIBC = 0)
- CLAUSE: lib.c.strings
- LINE: 916
-----------
Also there are another assertions (see below), but I think these assertions should be avoided when _RWSTD_NO_XXX == 1 && _RWSTD_NO_XXX_IN_LIBC == 1
-----------
- ASSERTION (S7) (4 lines):
- TEXT: std::btowc() not declared (_RWSTD_NO_BTOWC = 1, _RWSTD_NO_BTOWC_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 942
- ASSERTION (S7) (4 lines):
- TEXT: std::wctob() not declared (_RWSTD_NO_WCTOB = 1, _RWSTD_NO_WCTOB_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 943
- ASSERTION (S7) (4 lines):
- TEXT: std::mbrlen() not declared (_RWSTD_NO_MBRLEN = 1, _RWSTD_NO_MBRLEN_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 948
- ASSERTION (S7) (4 lines):
- TEXT: std::mbrtowc() not declared (_RWSTD_NO_MBRTOWC = 1, _RWSTD_NO_MBRTOWC_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 949
- ASSERTION (S7) (4 lines):
- TEXT: std::wcrtomb() not declared (_RWSTD_NO_WCRTOMB = 1, _RWSTD_NO_WCRTOMB_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 950
- ASSERTION (S7) (4 lines):
- TEXT: std::mbsrtowcs() not declared (_RWSTD_NO_MBSRTOWCS = 1, _RWSTD_NO_MBSRTOWCS_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 952
- ASSERTION (S7) (4 lines):
- TEXT: std::wcsrtombs() not declared (_RWSTD_NO_WCSRTOMBS = 1, _RWSTD_NO_WCSRTOMBS_IN_LIBC = 1)
- CLAUSE: lib.c.strings
- LINE: 953
-----------
|
Show » |
|
As for the rest of the assertions (i.e., those for the undefined symbols), unless there actually is something we can do about them (e.g., provide our own definitions), I think replacing the assertions with warnings might be the way to go.