Changeset 6a57da5 for src/SymTab
- Timestamp:
- Mar 24, 2016, 11:21:44 AM (8 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, gc_noraii, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, string, with_gc
- Children:
- 3cfe27f
- Parents:
- 0438091
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/SymTab/Indexer.cc
r0438091 r6a57da5 602 602 const std::string &name = decl->get_name(); 603 603 std::string mangleName; 604 // TODO the first branch of this if is a bug-for-bug replication of Richard's code; 605 // it can allow C decls to hide CFA decls when they shouldn't, but the current prelude 606 // depends on this bug to build ... <stdlib>'s random() should be fixed to *not* hide 607 // <stdlib.h>'s random() before this first branch is taken out again 608 if ( decl->get_linkage() == LinkageSpec::C ) { 609 mangleName = name; 610 } else if ( LinkageSpec::isOverridable( decl->get_linkage() ) ) { 604 if ( LinkageSpec::isOverridable( decl->get_linkage() ) ) { 611 605 // mangle the name without including the appropriate suffix, so overridable routines are placed into the 612 606 // same "bucket" as their user defined versions. … … 624 618 // doesn't check decls that have the same manglename, and all C-linkage decls are defined to 625 619 // have their name as their manglename, hence the error can never trigger). 626 // The elidedcode here is closer to correct, but name mangling would have to be completely620 // The code here is closer to correct, but name mangling would have to be completely 627 621 // isomorphic to C type-compatibility, which it may not be. 628 622
Note: See TracChangeset
for help on using the changeset viewer.