aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/rust/typecheck/rust-autoderef.cc2
-rw-r--r--gcc/rust/typecheck/rust-hir-type-check-expr.cc4
-rw-r--r--gcc/rust/typecheck/rust-hir-type-check.h2
-rw-r--r--gcc/rust/typecheck/rust-typecheck-context.cc2
4 files changed, 5 insertions, 5 deletions
diff --git a/gcc/rust/typecheck/rust-autoderef.cc b/gcc/rust/typecheck/rust-autoderef.cc
index 90a67ed..078a570 100644
--- a/gcc/rust/typecheck/rust-autoderef.cc
+++ b/gcc/rust/typecheck/rust-autoderef.cc
@@ -164,7 +164,7 @@ resolve_operator_overload_fn (
// handle the case where we are within the impl block for this
// lang_item otherwise we end up with a recursive operator overload
// such as the i32 operator overload trait
- TypeCheckContextItem &fn_context = context->peek_context ();
+ TypeCheckContextItem fn_context = context->peek_context ();
if (fn_context.get_type () == TypeCheckContextItem::ItemType::IMPL_ITEM)
{
auto &impl_item = fn_context.get_impl_item ();
diff --git a/gcc/rust/typecheck/rust-hir-type-check-expr.cc b/gcc/rust/typecheck/rust-hir-type-check-expr.cc
index f8ac632..f205a49 100644
--- a/gcc/rust/typecheck/rust-hir-type-check-expr.cc
+++ b/gcc/rust/typecheck/rust-hir-type-check-expr.cc
@@ -1457,7 +1457,7 @@ TypeCheckExpr::visit (HIR::MatchExpr &expr)
void
TypeCheckExpr::visit (HIR::ClosureExpr &expr)
{
- TypeCheckContextItem &current_context = context->peek_context ();
+ TypeCheckContextItem current_context = context->peek_context ();
TyTy::FnType *current_context_fndecl = current_context.get_context_type ();
HirId ref = expr.get_mappings ().get_hirid ();
@@ -1624,7 +1624,7 @@ TypeCheckExpr::resolve_operator_overload (
// handle the case where we are within the impl block for this lang_item
// otherwise we end up with a recursive operator overload such as the i32
// operator overload trait
- TypeCheckContextItem &fn_context = context->peek_context ();
+ TypeCheckContextItem fn_context = context->peek_context ();
if (fn_context.get_type () == TypeCheckContextItem::ItemType::IMPL_ITEM)
{
auto &impl_item = fn_context.get_impl_item ();
diff --git a/gcc/rust/typecheck/rust-hir-type-check.h b/gcc/rust/typecheck/rust-hir-type-check.h
index 62fd8f3..ec63657 100644
--- a/gcc/rust/typecheck/rust-hir-type-check.h
+++ b/gcc/rust/typecheck/rust-hir-type-check.h
@@ -90,7 +90,7 @@ public:
bool lookup_type_by_node_id (NodeId ref, HirId *id);
TyTy::BaseType *peek_return_type ();
- TypeCheckContextItem &peek_context ();
+ TypeCheckContextItem peek_context ();
void push_return_type (TypeCheckContextItem item,
TyTy::BaseType *return_type);
void pop_return_type ();
diff --git a/gcc/rust/typecheck/rust-typecheck-context.cc b/gcc/rust/typecheck/rust-typecheck-context.cc
index 8bca751..7a40fc8 100644
--- a/gcc/rust/typecheck/rust-typecheck-context.cc
+++ b/gcc/rust/typecheck/rust-typecheck-context.cc
@@ -157,7 +157,7 @@ TypeCheckContext::pop_return_type ()
return_type_stack.pop_back ();
}
-TypeCheckContextItem &
+TypeCheckContextItem
TypeCheckContext::peek_context ()
{
rust_assert (!return_type_stack.empty ());