From c61e776e0bc64042e153cbec705be91bf642fa5f Mon Sep 17 00:00:00 2001 From: John Hodge Date: Thu, 17 Nov 2016 17:32:56 +0800 Subject: HIR Typecheck Static - Copy for ErasedType --- src/hir_typeck/static.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/hir_typeck/static.cpp b/src/hir_typeck/static.cpp index 2ce2915b..ae808165 100644 --- a/src/hir_typeck/static.cpp +++ b/src/hir_typeck/static.cpp @@ -1004,7 +1004,13 @@ bool StaticTraitResolve::type_is_copy(const Span& sp, const ::HIR::TypeRef& ty) return false; ), (ErasedType, - TODO(Span(), "ErasedType - It's Copy if Copy is a trait in it"); + for(const auto& trait : e.m_traits) + { + if( find_named_trait_in_trait(sp, m_lang_Copy, {}, *trait.m_trait_ptr, trait.m_path.m_path, trait.m_path.m_params, ty, [](const auto&, auto ){ }) ) { + return true; + } + } + return false; ), (Tuple, for(const auto& ty : e) -- cgit v1.2.3