summaryrefslogtreecommitdiff
path: root/src/hir_expand
diff options
context:
space:
mode:
Diffstat (limited to 'src/hir_expand')
-rw-r--r--src/hir_expand/annotate_value_usage.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/hir_expand/annotate_value_usage.cpp b/src/hir_expand/annotate_value_usage.cpp
index fe511f21..0650e52c 100644
--- a/src/hir_expand/annotate_value_usage.cpp
+++ b/src/hir_expand/annotate_value_usage.cpp
@@ -369,8 +369,9 @@ namespace {
return ::HIR::ValueUsage::Borrow;
),
(Box,
- TODO(sp, "Box");
- //return get_usage_for_pattern(sp, *pe.inner, [&](const auto&){ if(tmp == ::HIR::TypeRef()) tmp = m_resolve.deref_type(sp, get_ty()); return tmp; });
+ // NOTE: Specific to `owned_box`
+ const auto& sty = ty.m_data.as_Path().path.m_data.as_Generic().m_params.m_types.at(0);
+ return get_usage_for_pattern(sp, *pe.sub, sty);
),
(Ref,
return get_usage_for_pattern(sp, *pe.sub, *ty.m_data.as_Borrow().inner);