From bb3792889f3bfb63f2bed953d770faf4fe0abd51 Mon Sep 17 00:00:00 2001 From: John Hodge Date: Fri, 24 Jun 2016 17:16:02 +0800 Subject: HIR Typecheck - Add change marking when new ivar is added --- src/hir_typeck/expr.cpp | 2 +- src/hir_typeck/expr_context.cpp | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/hir_typeck/expr.cpp b/src/hir_typeck/expr.cpp index e18c9ddd..6ab12439 100644 --- a/src/hir_typeck/expr.cpp +++ b/src/hir_typeck/expr.cpp @@ -1154,7 +1154,7 @@ namespace typeck { ), (Borrow, if( e.type != e2.type ) { - // ERROR + // TODO: What is this condition for? } DEBUG("_Cast: Borrow coerce"); this->context.apply_equality(node.span(), *e2.inner, *e.inner); diff --git a/src/hir_typeck/expr_context.cpp b/src/hir_typeck/expr_context.cpp index d59de90c..01d933b2 100644 --- a/src/hir_typeck/expr_context.cpp +++ b/src/hir_typeck/expr_context.cpp @@ -415,6 +415,7 @@ void typeck::TypecheckContext::add_ivars(::HIR::TypeRef& type) if( e.index == ~0u ) { e.index = this->new_ivar(); this->m_ivars[e.index].type->m_data.as_Infer().ty_class = e.ty_class; + this->mark_change(); } ), (Diverge, -- cgit v1.2.3