[PATCH] D26671: Export llvm::APFloatBase static fltSemantics data members in extract_symbols.py

Stephan Bergmann via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 15 07:38:35 PST 2016


sberg created this revision.
sberg added a reviewer: john.brawn.
sberg added a subscriber: llvm-commits.

At least the plugin used by the LibreOffice build  (https://wiki.documentfoundation.org/Development/Clang_plugins) uses those members.  They were already covered by should_keep_itanium_symbol's "Keep llvm:: and clang:: names" branch (which doesn't distinguish between function and variable symbols), but need explicit treatment in should_keep_microsoft_symbol.


https://reviews.llvm.org/D26671

Files:
  utils/extract_symbols.py


Index: utils/extract_symbols.py
===================================================================
--- utils/extract_symbols.py
+++ utils/extract_symbols.py
@@ -170,6 +170,11 @@
     # <throw-spec> ::= exceptions are not allowed
     elif re.search('(llvm|clang)@@[A-Z][A-Z0-9_]*[A-JQ].+(X|.+@|.*Z)$', symbol):
         return symbol
+    # Keep mangled llvm::APFloatBase static fltSemantics data members:
+    elif re.fullmatch('\?[A-Za-z0-9_]+ at APFloatBase@llvm@@2UfltSemantics at 2@B',
+                      symbol):
+         return symbol;
+
     return None
 
 # Itanium manglings are of the form _Z<identifier_mangling><type_mangling>. We


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D26671.77999.patch
Type: text/x-patch
Size: 644 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161115/9cacc093/attachment.bin>


More information about the llvm-commits mailing list