Stop emitting error in qualify_consts if promotion fails
This commit is contained in:
parent
46b68b009b
commit
122c6fedf4
1 changed files with 3 additions and 11 deletions
|
|
@ -1599,20 +1599,12 @@ impl<'a, 'tcx> Visitor<'tcx> for Checker<'a, 'tcx> {
|
|||
// This is not a problem, because the argument explicitly
|
||||
// requests constness, in contrast to regular promotion
|
||||
// which happens even without the user requesting it.
|
||||
// We can error out with a hard error if the argument is not
|
||||
// constant here.
|
||||
//
|
||||
// `promote_consts` is responsible for emitting the error if
|
||||
// the argument is not promotable.
|
||||
if !IsNotPromotable::in_operand(self, arg) {
|
||||
debug!("visit_terminator_kind: candidate={:?}", candidate);
|
||||
self.promotion_candidates.push(candidate);
|
||||
} else {
|
||||
if is_shuffle {
|
||||
span_err!(self.tcx.sess, self.span, E0526,
|
||||
"shuffle indices are not constant");
|
||||
} else {
|
||||
self.tcx.sess.span_err(self.span,
|
||||
&format!("argument {} is required to be a constant",
|
||||
i + 1));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue