summaryrefslogtreecommitdiff
path: root/src/hir/type.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/hir/type.cpp')
-rw-r--r--src/hir/type.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/hir/type.cpp b/src/hir/type.cpp
index a27d5dd0..6b90801f 100644
--- a/src/hir/type.cpp
+++ b/src/hir/type.cpp
@@ -49,6 +49,7 @@ void ::HIR::TypeRef::fmt(::std::ostream& os) const
switch(e.ty_class)
{
case ::HIR::InferClass::None: break;
+ case ::HIR::InferClass::Diverge:os << ":!"; break;
case ::HIR::InferClass::Float: os << ":f"; break;
case ::HIR::InferClass::Integer:os << ":i"; break;
}
@@ -462,6 +463,7 @@ bool ::HIR::TypeRef::match_test_generics(const Span& sp, const ::HIR::TypeRef& x
switch(xe.ty_class)
{
case ::HIR::InferClass::None:
+ case ::HIR::InferClass::Diverge:
// - If right is generic infer, assume it's good
//return true;
return Compare::Fuzzy;
@@ -694,6 +696,7 @@ bool ::HIR::TypeRef::match_test_generics(const Span& sp, const ::HIR::TypeRef& x
switch(e.ty_class)
{
case ::HIR::InferClass::None:
+ case ::HIR::InferClass::Diverge:
return Compare::Fuzzy;
case ::HIR::InferClass::Integer:
TU_IFLET( ::HIR::TypeRef::Data, right.m_data, Primitive, le,
@@ -735,6 +738,7 @@ bool ::HIR::TypeRef::match_test_generics(const Span& sp, const ::HIR::TypeRef& x
switch( e.ty_class )
{
case ::HIR::InferClass::None:
+ case ::HIR::InferClass::Diverge:
return Compare::Fuzzy;
case ::HIR::InferClass::Integer:
TU_IFLET( ::HIR::TypeRef::Data, left.m_data, Primitive, le,