// 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 ();
void
TypeCheckExpr::visit (HIR::ClosureExpr &expr)
{
- TypeCheckContextItem ¤t_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 ();
// 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 ();
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 ();
return_type_stack.pop_back ();
}
-TypeCheckContextItem &
+TypeCheckContextItem
TypeCheckContext::peek_context ()
{
rust_assert (!return_type_stack.empty ());