3 Commits

Author SHA1 Message Date
Azat Khuzhin
d4d96c4444 [libcxx][tests] Introduce 32-bit feature and use it for stringstream gcount test
This will avoid hardcoding all unsupported targets, since even after one
more follow up fix [1], there is one more failure.

  [1]: https://reviews.llvm.org/D150886

Plus, if you want to run it locally on some target that CI does not
covers, it could also false-positively fail, which is not good.

Reviewed By: #libc, ldionne

Differential Revision: https://reviews.llvm.org/D151046
2023-05-23 19:29:15 +02:00
Azat Khuzhin
0df607ca96 Do not run gcount test on any *armv7l* (fixes test on llvm-clang-win-x-armv7l)
There was one buildbot (for llvm-clang-win-x-armv7l) that hadn't been
run for the initial revision [1].

  [1]: https://lab.llvm.org/buildbot#builders/60/builds/12118

Reviewed By: #libc, ldionne

Differential Revision: https://reviews.llvm.org/D150886
2023-05-20 12:04:55 +02:00
Azat Khuzhin
53aed4759b [libcxx] Fix crash in std::stringstream with payload >= INT_MAX
stringstream does works for payload > INT_MAX, however
stringstream::gcount() can break the internal field (__nout_) and this
breaks the stringstream itself, and so the program will crash.

Fix this, by using __pbump(streamsize) over pbump(int)

Note, libstdc++ does not have this bug.

Reviewed By: #libc, ldionne, Mordante

Spies: arichardson, Mordante, philnik, ldionne, libcxx-commits, mikhail.ramalho

Differential Revision: https://reviews.llvm.org/D146294
2023-05-17 09:21:04 -07:00