aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2022-10-01 17:45:24 +0200
committerJay Berkenbilt <ejb@ql.org>2022-10-01 18:04:50 +0200
commit5e122f145f3f7358c7fbdf60f1872cf065dc0200 (patch)
treefd432e18f99c6faa6989c523d87528c676c7af45
parentc63fb86c01c5635a3e7f28c3b66de7cf908ef6d6 (diff)
downloadqpdf-5e122f145f3f7358c7fbdf60f1872cf065dc0200.tar.zst
Ignore things from std:: in the ABI
-rwxr-xr-xcheck_abi9
1 files changed, 8 insertions, 1 deletions
diff --git a/check_abi b/check_abi
index 8267aaa3..b2abe406 100755
--- a/check_abi
+++ b/check_abi
@@ -88,7 +88,14 @@ class Main:
m = re.match(r'^[0-9a-f]+ (.) (.+)@@LIBQPDF_\d+\s*$', line)
if not m:
continue
- symbols.add(m.group(2))
+ symbol = m.group(2)
+ if re.match(r'^((void|int|bool|(.*? for)) )?std::', symbol):
+ # Calling different methods of STL classes causes
+ # different template instantiations to appear.
+ # Standard library methods that sneak into the binary
+ # interface are not considered part of the qpdf ABI.
+ continue
+ symbols.add(symbol)
return symbols
def dump(self, options):