diff options
author | John Hodge <tpg@mutabah.net> | 2016-06-07 14:21:26 +0800 |
---|---|---|
committer | John Hodge <tpg@mutabah.net> | 2016-06-07 14:21:26 +0800 |
commit | d21eaed77240158885c2e22c436bc17053a9cd1d (patch) | |
tree | ea83a637649c858720c5357f072cbe9f6d4c8250 /src/hir/visitor.cpp | |
parent | 1b37aad87169969a337e32a38321003bfb0e469f (diff) | |
download | mrust-d21eaed77240158885c2e22c436bc17053a9cd1d.tar.gz |
HIR Typecheck - Binary operator overloads
Diffstat (limited to 'src/hir/visitor.cpp')
-rw-r--r-- | src/hir/visitor.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/hir/visitor.cpp b/src/hir/visitor.cpp index d4eeec50..cb9874c2 100644 --- a/src/hir/visitor.cpp +++ b/src/hir/visitor.cpp @@ -103,7 +103,12 @@ void ::HIR::Visitor::visit_trait_impl(const ::HIR::SimplePath& trait_path, ::HIR ::HIR::PathChain p { "#impl" }; TRACE_FUNCTION_F("trait_path=" << trait_path); this->visit_params(impl.m_params); - this->visit_path_params(impl.m_trait_args); + // - HACK: Create a generic path to visit (so that proper checks are performed) + { + ::HIR::GenericPath gp { trait_path, mv$(impl.m_trait_args) }; + this->visit_generic_path(gp, PathContext::TRAIT); + impl.m_trait_args = mv$(gp.m_params); + } this->visit_type(impl.m_type); for(auto& ent : impl.m_methods) { |