summaryrefslogtreecommitdiff
path: root/src/trans/enumerate.cpp
diff options
context:
space:
mode:
authorJohn Hodge <tpg@ucc.asn.au>2017-07-16 13:27:31 +0800
committerJohn Hodge <tpg@ucc.asn.au>2017-07-16 13:27:31 +0800
commit97567dbbd8c3f8719dbb9e32c6d0f3a155246508 (patch)
tree3268a7f2bcadd013199883b7bbc2f26b9c385643 /src/trans/enumerate.cpp
parent9d1a660045de5a3cc37315c78a3a75999fef9b9a (diff)
downloadmrust-97567dbbd8c3f8719dbb9e32c6d0f3a155246508.tar.gz
All - Upgrade to rustc 1.19.0 beta (2017-07-08)
Diffstat (limited to 'src/trans/enumerate.cpp')
-rw-r--r--src/trans/enumerate.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/trans/enumerate.cpp b/src/trans/enumerate.cpp
index 41489e2b..b45b72fd 100644
--- a/src/trans/enumerate.cpp
+++ b/src/trans/enumerate.cpp
@@ -152,6 +152,7 @@ TransList Trans_Enumerate_Public(::HIR::Crate& crate)
for(auto& impl : crate.m_trait_impls)
{
const auto& impl_ty = impl.second.m_type;
+ TRACE_FUNCTION_F("Impl " << impl.first << impl.second.m_trait_args << " for " << impl_ty);
if( impl.second.m_params.m_types.size() == 0 )
{
auto cb_monomorph = monomorphise_type_get_cb(sp, &impl_ty, &impl.second.m_trait_args, nullptr);
@@ -160,10 +161,14 @@ TransList Trans_Enumerate_Public(::HIR::Crate& crate)
const auto& trait = crate.get_trait_by_path(sp, impl.first);
for(const auto& vi : trait.m_values)
{
+ TRACE_FUNCTION_F("Item " << vi.first << " : " << vi.second.tag_str());
+ // Constant, no codegen
if( vi.second.is_Constant() )
;
+ // Generic method, no codegen
else if( vi.second.is_Function() && vi.second.as_Function().m_params.m_types.size() > 0 )
;
+ // VTable, magic
else if( vi.first == "#vtable" )
;
else