Handle empty where-clause better
This commit is contained in:
parent
8506b7d4e0
commit
9c47afe9fa
23 changed files with 78 additions and 59 deletions
|
@ -1377,7 +1377,8 @@ impl<'hir> LoweringContext<'_, 'hir> {
|
|||
|
||||
let mut params: SmallVec<[hir::GenericParam<'hir>; 4]> =
|
||||
self.lower_generic_params_mut(&generics.params).collect();
|
||||
let has_where_clause = !generics.where_clause.predicates.is_empty();
|
||||
let has_where_clause_predicates = !generics.where_clause.predicates.is_empty();
|
||||
let has_where_clause_token = generics.where_clause.has_where_token;
|
||||
let where_clause_span = self.lower_span(generics.where_clause.span);
|
||||
let span = self.lower_span(generics.span);
|
||||
let res = f(self);
|
||||
|
@ -1395,7 +1396,8 @@ impl<'hir> LoweringContext<'_, 'hir> {
|
|||
let lowered_generics = self.arena.alloc(hir::Generics {
|
||||
params: self.arena.alloc_from_iter(params),
|
||||
predicates: self.arena.alloc_from_iter(predicates),
|
||||
has_where_clause,
|
||||
has_where_clause_predicates,
|
||||
has_where_clause_token,
|
||||
where_clause_span,
|
||||
span,
|
||||
});
|
||||
|
|
|
@ -1315,7 +1315,8 @@ impl<'a, 'hir> LoweringContext<'a, 'hir> {
|
|||
generics: self.arena.alloc(hir::Generics {
|
||||
params: lifetime_defs,
|
||||
predicates: &[],
|
||||
has_where_clause: false,
|
||||
has_where_clause_predicates: false,
|
||||
has_where_clause_token: false,
|
||||
where_clause_span: lctx.lower_span(span),
|
||||
span: lctx.lower_span(span),
|
||||
}),
|
||||
|
@ -1637,7 +1638,8 @@ impl<'a, 'hir> LoweringContext<'a, 'hir> {
|
|||
generics: this.arena.alloc(hir::Generics {
|
||||
params: generic_params,
|
||||
predicates: &[],
|
||||
has_where_clause: false,
|
||||
has_where_clause_predicates: false,
|
||||
has_where_clause_token: false,
|
||||
where_clause_span: this.lower_span(span),
|
||||
span: this.lower_span(span),
|
||||
}),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue