https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68978
Bug ID: 68978
Summary: [6 Regression] bogus error: lvalue required as left
operand of assignment
Product: gcc
Version: 6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: trippels at gcc dot gnu.org
Target Milestone: ---
Boost-1.60 fails to compile:
markus@x4 tmp % cat test.ii
template <typename T> int toi() {
int i = 0, c = 0, radix = 10, max = 0x7fffffff;
if (max < ((i *= radix) += c))
return 0;
return i;
}
markus@x4 tmp % g++ -c test.ii
test.ii: In function ‘int toi()’:
test.ii:3:30: error: lvalue required as left operand of assignment
if (max < ((i *= radix) += c))
^