Correctly monomorphize all derived methods

This commit is contained in:
Ayaz Hafiz 2022-06-22 10:18:41 -04:00
parent d56d880afb
commit 16e64263f6
No known key found for this signature in database
GPG key ID: 0E2A37416A25EF58
6 changed files with 30 additions and 4 deletions

View file

@ -92,7 +92,13 @@ impl DerivedSymbols {
self.derived_ident_ids.get_id(&debug_name).is_none(),
"duplicate debug name for different derive key"
);
self.derived_ident_ids.get_or_insert(&debug_name)
let ident_id = self.derived_ident_ids.get_or_insert(&debug_name);
// This is expensive, but yields much better symbols when debugging.
// TODO: hide behind debug_flags?
ModuleId::DERIVED.register_debug_idents(&self.derived_ident_ids);
ident_id
} else {
self.derived_ident_ids.gen_unique()
};