summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Hodge <tpg@mutabah.net>2016-06-12 23:44:06 +0800
committerJohn Hodge <tpg@mutabah.net>2016-06-12 23:44:06 +0800
commitc48b9ea73a89a08d2326478fa99e0a2598dae2d0 (patch)
tree6ebc1d423b1f69cbab6d189d1d0852f5699bcb04
parent9f9aca6f08c863d693ee6b63327618fd812f49ed (diff)
downloadmrust-c48b9ea73a89a08d2326478fa99e0a2598dae2d0.tar.gz
HIR Typecheck - TODO cleanup
-rw-r--r--src/hir_typeck/expr.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/hir_typeck/expr.cpp b/src/hir_typeck/expr.cpp
index 90ac7917..2388e353 100644
--- a/src/hir_typeck/expr.cpp
+++ b/src/hir_typeck/expr.cpp
@@ -72,7 +72,7 @@ namespace typeck {
return false;
),
(Array,
- TODO(Span(), "Array - " << tpl);
+ return monomorphise_type_needed(*e.inner);
),
(Slice,
return monomorphise_type_needed(*e.inner);
@@ -91,10 +91,18 @@ namespace typeck {
return monomorphise_type_needed(*e.inner);
),
(Function,
- TODO(Span(), "Function - " << tpl);
+ for(const auto& ty : e.m_arg_types) {
+ if( monomorphise_type_needed(ty) )
+ return true;
+ }
+ return monomorphise_type_needed(*e.m_rettype);
),
(Closure,
- TODO(Span(), "Closure - " << tpl);
+ for(const auto& ty : e.m_arg_types) {
+ if( monomorphise_type_needed(ty) )
+ return true;
+ }
+ return monomorphise_type_needed(*e.m_rettype);
)
)
throw "";