[committed] libstdc++: Don't check always-true condition [PR101965]

Jonathan Wakely jwakely@redhat.com
Thu Aug 19 13:58:02 GMT 2021


Signed-off-by: Jonathan Wakely <jwakely@redhat.com>

libstdc++-v3/ChangeLog:

	PR libstdc++/101965
	* include/std/charconv (__to_chars_i): Remove redundant check.

Tested powerpc64le-linux. Committed to trunk.

-------------- next part --------------
commit 85a709595005b5df4b2ee9d81717a5df19c0023f
Author: Jonathan Wakely <jwakely@redhat.com>
Date:   Thu Aug 19 13:05:54 2021

    libstdc++: Don't check always-true condition [PR101965]
    
    Signed-off-by: Jonathan Wakely <jwakely@redhat.com>
    
    libstdc++-v3/ChangeLog:
    
            PR libstdc++/101965
            * include/std/charconv (__to_chars_i): Remove redundant check.

diff --git a/libstdc++-v3/include/std/charconv b/libstdc++-v3/include/std/charconv
index ac9c34d4601..2e368843fc9 100644
--- a/libstdc++-v3/include/std/charconv
+++ b/libstdc++-v3/include/std/charconv
@@ -336,12 +336,10 @@ namespace __detail
 	  *__first = '0';
 	  return { __first + 1, errc{} };
 	}
-
-      if _GLIBCXX17_CONSTEXPR (std::is_signed<_Tp>::value)
+      else if _GLIBCXX17_CONSTEXPR (std::is_signed<_Tp>::value)
 	if (__value < 0)
 	  {
-	    if (__builtin_expect(__first != __last, 1))
-	      *__first++ = '-';
+	    *__first++ = '-';
 	    __unsigned_val = _Up(~__value) + _Up(1);
 	  }
 


More information about the Gcc-patches mailing list