From: Pierre-Emmanuel Patry <[email protected]>
Construct the TypeBoundPredicate in the vector instead of copying it.
gcc/rust/ChangeLog:
* typecheck/rust-hir-trait-resolve.cc (TraitResolver::resolve_trait):
Construct value in place.
Signed-off-by: Pierre-Emmanuel Patry <[email protected]>
---
gcc/rust/typecheck/rust-hir-trait-resolve.cc | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/gcc/rust/typecheck/rust-hir-trait-resolve.cc
b/gcc/rust/typecheck/rust-hir-trait-resolve.cc
index b8dd0ad782a..03121d1009e 100644
--- a/gcc/rust/typecheck/rust-hir-trait-resolve.cc
+++ b/gcc/rust/typecheck/rust-hir-trait-resolve.cc
@@ -253,12 +253,10 @@ TraitResolver::resolve_trait (HIR::Trait *trait_reference)
// They also inherit themselves as a bound this enables a trait item to
// reference other Self::trait_items
- auto self_hrtb
- = TyTy::TypeBoundPredicate (trait_reference->get_mappings ().get_defid (),
- std::move (self_subst_copy),
- BoundPolarity::RegularBound,
- trait_reference->get_locus ());
- specified_bounds.push_back (self_hrtb);
+ specified_bounds.emplace_back (trait_reference->get_mappings ().get_defid (),
+ std::move (self_subst_copy),
+ BoundPolarity::RegularBound,
+ trait_reference->get_locus ());
// look for any
std::vector<TyTy::TypeBoundPredicate> super_traits;
--
2.50.1