[Bug c++/84097] New: [8 regression] Incorrect -Wunused-but-set-variable warning
sylvestre at debian dot org
gcc-bugzilla@gcc.gnu.org
Mon Jan 29 11:11:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84097
Bug ID: 84097
Summary: [8 regression] Incorrect -Wunused-but-set-variable
warning
Product: gcc
Version: 8.0
Status: UNCONFIRMED
Keywords: diagnostic
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: sylvestre at debian dot org
CC: jakub at gcc dot gnu.org, jason at gcc dot gnu.org,
sgunderson at bigfoot dot com, trippels at gcc dot gnu.org,
unassigned at gcc dot gnu.org, webrown.cpp at gmail dot com
Target Milestone: ---
+++ This bug was initially created as a clone of Bug #82728 +++
Seen in Firefox code:
/root/firefox-gcc-last/dom/animation/KeyframeUtils.cpp: In member function
'uint32_t
mozilla::PropertyPriorityComparator::SubpropertyCount(nsCSSPropertyID) const':
/root/firefox-gcc-last/layout/style/nsCSSProps.h:689:29: error: variable 'es_'
set but not used [-Werror=unused-but-set-variable]
es_ = (nsCSSPropertyID)((enabledstate_) | \
^~~
#define CSSPROPS_FOR_SHORTHAND_SUBPROPERTIES(it_, prop_, enabledstate_) \
for (const nsCSSPropertyID *it_ = nsCSSProps::SubpropertyEntryFor(prop_), \
es_ = (nsCSSPropertyID)((enabledstate_) | \
CSSEnabledState(0)); \
*it_ != eCSSProperty_UNKNOWN; ++it_) \
if (nsCSSProps::IsEnabled(*it_, (mozilla::CSSEnabledState) es_))
We can see that es_ is used at the last line.
This issue doesn't occur with gcc 7.
Unreduced test case
http://sylvestre.ledru.info/bordel/gcc-unused-but-set-variable.tar.gz 1.1mb
(sorry)
$ g++-8 -c -Werror=unused-but-set-variable foo.cpp
More information about the Gcc-bugs
mailing list