]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
libstdc++: Cast -1 to size_t in <format> [PR119429]
authorJonathan Wakely <jwakely@redhat.com>
Mon, 24 Mar 2025 21:25:20 +0000 (21:25 +0000)
committerJonathan Wakely <redi@gcc.gnu.org>
Tue, 25 Mar 2025 10:23:31 +0000 (10:23 +0000)
This avoids a runtime error from Clang's annoying -fsanitize=integer
(even though it's not undefined and behaves correctly).

libstdc++-v3/ChangeLog:

PR libstdc++/119429
* include/std/format (__format::_Scanner::_Scanner): Cast
default argument to size_t.

libstdc++-v3/include/std/format

index 1b38913359d141d36979731f220ef457e6db861f..c3327e1d38411464f62b910f0b51d3c9d20b4937 100644 (file)
@@ -4051,7 +4051,7 @@ namespace __format
       } _M_pc;
 
       constexpr explicit
-      _Scanner(basic_string_view<_CharT> __str, size_t __nargs = -1)
+      _Scanner(basic_string_view<_CharT> __str, size_t __nargs = (size_t)-1)
       : _M_pc(__str, __nargs)
       { }