https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110531
--- Comment #4 from Hao Liu <hliu at amperecomputing dot com> --- > IMHO, the initialization with false is unnecessary and very likely it isn't > able to get optimized, it seems worse from this point of view. Sorry. I don't think so. See more at https://www.oreilly.com/library/view/c-coding-standards/0321113586/ch20.html: Start with a clean slate: Uninitialized variables are a common source of bugs in C and C++ programs. There are few reasons to ever leave a variable uninitialized. None is serious enough to justify the hazard of undefined behavior.