[gcc r15-3255] libstdc++: avoid -Wsign-compare
Jason Merrill
jason@gcc.gnu.org
Wed Aug 28 11:25:35 GMT 2024
https://gcc.gnu.org/g:4246cf4f18053eeb47cb2a241fffa9a41573916e
commit r15-3255-g4246cf4f18053eeb47cb2a241fffa9a41573916e
Author: Jason Merrill <jason@redhat.com>
Date: Tue Aug 27 13:17:20 2024 -0400
libstdc++: avoid -Wsign-compare
-Wsign-compare complained about these comparisons between (unsigned) size_t
and (signed) streamsize, or between (unsigned) native_handle_type
and (signed) -1. Fixed by adding casts to unify the types.
libstdc++-v3/ChangeLog:
* include/std/istream: Add cast to avoid -Wsign-compare.
* include/std/stacktrace: Likewise.
Diff:
---
libstdc++-v3/include/std/istream | 2 +-
libstdc++-v3/include/std/stacktrace | 3 ++-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/libstdc++-v3/include/std/istream b/libstdc++-v3/include/std/istream
index a2b207dae78c..730e413c290b 100644
--- a/libstdc++-v3/include/std/istream
+++ b/libstdc++-v3/include/std/istream
@@ -909,7 +909,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__n /= sizeof(_CharT);
streamsize __w = __in.width();
std::__istream_extract(__in, __s, __n);
- if (__in.good() && (__w <= 0 || __n < __w))
+ if (__in.good() && (__w <= 0 || __n < (size_t)__w))
{
// Stopped extracting early to avoid overflowing the buffer,
// but might have stopped anyway (and set eofbit) if at EOF.
diff --git a/libstdc++-v3/include/std/stacktrace b/libstdc++-v3/include/std/stacktrace
index e0a543920bc3..cd2606257fec 100644
--- a/libstdc++-v3/include/std/stacktrace
+++ b/libstdc++-v3/include/std/stacktrace
@@ -80,7 +80,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
constexpr native_handle_type
native_handle() const noexcept { return _M_pc; }
- constexpr explicit operator bool() const noexcept { return _M_pc != -1; }
+ constexpr explicit operator bool() const noexcept
+ { return _M_pc != (native_handle_type)-1; }
// [stacktrace.entry.query], query
[[nodiscard]]
More information about the Libstdc++-cvs
mailing list