https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115074
Bug ID: 115074 Summary: incorrect stringop-overflow warning Product: gcc Version: 13.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: ryanpiwowarski at gmail dot com Target Milestone: --- #include <vector> #include <variant> class VariantVector { std::vector<std::variant<int>> vars; public: VariantVector() { // need at least three vars.emplace_back(); vars.emplace_back(); vars.emplace_back(); } }; int main() { // need at least two VariantVector c0; VariantVector c1; return 0; } //------------------ above compiled with -std=c++20 -O2 -Wall -Wextra -Werror -Wfatal-errors will generate a stringop-overflow warning, presumably incorrectly. Present at least on gcc 13.1 and 13.2 You can see code and error output on godbolt: https://godbolt.org/z/h9M9cKzTs