summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/hir_typeck/static.cpp23
1 files changed, 15 insertions, 8 deletions
diff --git a/src/hir_typeck/static.cpp b/src/hir_typeck/static.cpp
index 4a0e176d..746de82d 100644
--- a/src/hir_typeck/static.cpp
+++ b/src/hir_typeck/static.cpp
@@ -271,14 +271,21 @@ bool StaticTraitResolve::find_impl(
if(ret)
return true;
- // Search the crate for impls
- ret = m_crate.find_trait_impls(trait_path, type, cb_ident, [&](const auto& impl) {
- return this->find_impl__check_crate(sp, trait_path, trait_params, type, found_cb, impl);
- });
- if(ret)
- return true;
-
- return false;
+ if( m_crate.get_trait_by_path(sp, trait_path).m_is_marker )
+ {
+ TODO(sp, "Search for auto trait impls - " << trait_path << " for " << type);
+ }
+ else
+ {
+ // Search the crate for impls
+ ret = m_crate.find_trait_impls(trait_path, type, cb_ident, [&](const auto& impl) {
+ return this->find_impl__check_crate(sp, trait_path, trait_params, type, found_cb, impl);
+ });
+ if(ret)
+ return true;
+
+ return false;
+ }
}
bool StaticTraitResolve::find_impl__check_bound(