--- /dev/null
+// PR c++/103534
+// { dg-additional-options "-O -Wall" }
+
+#include <string>
+
+std::string foo(std::string x)
+{
+ // This used to get a bogus -Wstringop-overflow warning.
+ return std::string("1234567890123456") + x;
+}
_GLIBCXX20_CONSTEXPR
basic_string&
append(const basic_string& __str)
- { return _M_append(__str._M_data(), __str.size()); }
+ { return this->append(__str._M_data(), __str.size()); }
/**
* @brief Append a substring.
_GLIBCXX20_CONSTEXPR
basic_string&
append(const basic_string& __str, size_type __pos, size_type __n = npos)
- { return _M_append(__str._M_data()
- + __str._M_check(__pos, "basic_string::append"),
- __str._M_limit(__pos, __n)); }
+ { return this->append(__str._M_data()
+ + __str._M_check(__pos, "basic_string::append"),
+ __str._M_limit(__pos, __n)); }
/**
* @brief Append a C substring.