diff options
author | John Hodge <tpg@ucc.asn.au> | 2017-10-29 22:01:01 +0800 |
---|---|---|
committer | John Hodge <tpg@ucc.asn.au> | 2017-10-29 22:01:01 +0800 |
commit | fa2a605b45a2b7c56c97feda8dd8db86eed50362 (patch) | |
tree | a2c82367d8e424e8d10fbabd020ed9cf2d622757 | |
parent | b2f0e1514bd8f52c5a8bc42cf862a678e2c691c3 (diff) | |
download | mrust-fa2a605b45a2b7c56c97feda8dd8db86eed50362.tar.gz |
HIR Typecheck Expressions - Coerce within array literals
-rw-r--r-- | src/hir_typeck/expr_cs.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/hir_typeck/expr_cs.cpp b/src/hir_typeck/expr_cs.cpp index b665b14e..c6f060f5 100644 --- a/src/hir_typeck/expr_cs.cpp +++ b/src/hir_typeck/expr_cs.cpp @@ -1448,6 +1448,7 @@ namespace { if( can_coerce_inner_result() ) { + DEBUG("Tuple inner coerce"); const auto& ty = this->context.get_type(node.m_res_type); TU_IFLET( ::HIR::TypeRef::Data, ty.m_data, Tuple, e, if( e.size() != node.m_vals.size() ) { @@ -1492,6 +1493,7 @@ namespace { void visit(::HIR::ExprNode_ArrayList& node) override { TRACE_FUNCTION_F(&node << " [...,]"); + auto _ = this->push_inner_coerce_scoped(true); for( auto& val : node.m_vals ) { this->context.add_ivars( val->m_res_type ); } |