summaryrefslogtreecommitdiff
path: root/src/mir/from_hir_match.cpp
diff options
context:
space:
mode:
authorJohn Hodge <tpg@ucc.asn.au>2019-02-03 17:48:32 +0800
committerJohn Hodge <tpg@ucc.asn.au>2019-02-03 17:48:32 +0800
commit42b9c8704fe4aab25e8f9d0cca15a74b025eee43 (patch)
tree2fc5e86fc800c42290c486a417b33ad1f1b7ad09 /src/mir/from_hir_match.cpp
parent4960edb7d948e43efc58a28ecd05fa9237c8d240 (diff)
downloadmrust-42b9c8704fe4aab25e8f9d0cca15a74b025eee43.tar.gz
HIR - Minimally-tested support for `extern { type }`
Diffstat (limited to 'src/mir/from_hir_match.cpp')
-rw-r--r--src/mir/from_hir_match.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/mir/from_hir_match.cpp b/src/mir/from_hir_match.cpp
index 264c74c5..6fb77a3b 100644
--- a/src/mir/from_hir_match.cpp
+++ b/src/mir/from_hir_match.cpp
@@ -802,6 +802,9 @@ void PatternRulesetBuilder::append_from_lit(const Span& sp, const ::HIR::Literal
)
)
),
+ (ExternType,
+ TODO(sp, "Match extern type");
+ ),
(Union,
TODO(sp, "Match union");
),
@@ -1217,6 +1220,9 @@ void PatternRulesetBuilder::append_from(const Span& sp, const ::HIR::Pattern& pa
(Union,
TODO(sp, "Match over union - " << ty);
),
+ (ExternType,
+ TODO(sp, "Match over extern type - " << ty);
+ ),
(Enum,
auto monomorph = [&](const auto& ty) {
auto rv = monomorphise_type(sp, pbe->m_params, e.path.m_data.as_Generic().m_params, ty);
@@ -1738,6 +1744,9 @@ namespace {
(Opaque,
BUG(sp, "Destructuring an opaque type - " << *cur_ty);
),
+ (ExternType,
+ BUG(sp, "Destructuring an extern type - " << *cur_ty);
+ ),
(Struct,
// TODO: Should this do a call to expand_associated_types?
auto monomorph = [&](const auto& ty) {
@@ -2173,6 +2182,9 @@ int MIR_LowerHIR_Match_Simple__GeneratePattern(MirBuilder& builder, const Span&
(Union,
TODO(sp, "Match over Union");
),
+ (ExternType,
+ TODO(sp, "Match over ExternType");
+ ),
(Enum,
auto monomorph = [&](const auto& ty) {
auto rv = monomorphise_type(sp, pbe->m_params, te.path.m_data.as_Generic().m_params, ty);
@@ -2827,6 +2839,9 @@ void MatchGenGrouped::gen_dispatch(const ::std::vector<t_rules_subset>& rules, s
(Union,
TODO(sp, "Match over Union");
),
+ (ExternType,
+ TODO(sp, "Match over ExternType - " << ty);
+ ),
(Enum,
)
)