[PATCH] D21930: [ELF] - Implement extern "c++" version script tag
Rui Ueyama via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 7 15:31:36 PDT 2016
ruiu added inline comments.
================
Comment at: ELF/SymbolTable.cpp:560
@@ -558,1 +559,3 @@
+static void overrideSymbolVersion(Symbol *Sym, StringRef Entry,
+ uint16_t Version) {
----------------
I'd name this `setVersionId`. Also rename Entry -> Name.
================
Comment at: ELF/SymbolTable.cpp:601-607
@@ -586,2 +600,9 @@
+
+ if (Sym.IsExternCpp) {
+ size_t &Ver = DemangledExterns[Sym.Name];
+ if (Ver != 0)
+ warning("duplicate symbol " + Sym.Name + " in version script");
+ Ver = I + 2;
continue;
+ }
----------------
I do not understand the exact logic. Can this handle C++ mangled name patterns that contain glob meta characters?
http://reviews.llvm.org/D21930
More information about the llvm-commits
mailing list