Recode a non-short-circuiting conjunction of two Boolean function calls
into separate statements to avoid a warning from clang 16.
}
PointerAssignmentChecker checker{context, scope, *pointer};
checker.set_isBoundsRemapping(isBoundsRemapping);
- return checker.CheckLeftHandSide(lhs) & checker.Check(rhs);
+ bool lhsOk{checker.CheckLeftHandSide(lhs)};
+ bool rhsOk{checker.Check(rhs)};
+ return lhsOk && rhsOk; // don't short-circuit
}
bool CheckStructConstructorPointerComponent(evaluate::FoldingContext &context,