diff options
-rw-r--r-- | src/hir_conv/bind.cpp | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/hir_conv/bind.cpp b/src/hir_conv/bind.cpp index 34c93930..d8df0d3b 100644 --- a/src/hir_conv/bind.cpp +++ b/src/hir_conv/bind.cpp @@ -152,7 +152,8 @@ namespace { bool is_single_value = pat.m_data.is_Value(); TU_IFLET( ::HIR::Pattern::Value, val, Named, ve, - TU_IFLET( ::HIR::Path::Data, ve.path.m_data, Generic, pe, + TU_MATCH( ::HIR::Path::Data, (ve.path.m_data), (pe), + (Generic, const ::HIR::Enum* enm = nullptr; const auto& path = pe.m_path; const ::HIR::Module* mod; @@ -241,10 +242,17 @@ namespace { ) ) } + ), + (UfcsInherent, + TODO(sp, "Pattern value UfcsInherent - " << ve.path); + ), + (UfcsKnown, + TODO(sp, "Pattern value UfcsKnown - " << ve.path); + ), + (UfcsUnknown, + BUG(sp, "Pattern value UfcUnkown - " << ve.path); + ) ) - else { - // UFCS/Opaque, leave for now. - } ) } |