[libcxx-commits] [PATCH] D110647: [libc++] Resolve missing table_size symbol
Louis Dionne via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Wed Nov 17 14:26:26 PST 2021
ldionne accepted this revision.
ldionne added a comment.
This revision is now accepted and ready to land.
LGTM once CI passes and comments have been addressed.
================
Comment at: libcxx/lib/abi/CHANGELOG.TXT:21
+
+ This commit added an out-of-line definition for table_size in the library.
+
----------------
Let's be verbose on the explanations.
================
Comment at: libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.no_new_in_libcxx.abilist:1649
{'is_defined': True, 'name': '__ZNSt3__15alignEmmRPvRm', 'type': 'FUNC'}
+{'is_defined': True, 'name': '_ZNSt3__15ctypeIcE10table_sizeE', 'size': 0, 'type': 'OBJECT'}
{'is_defined': True, 'name': '__ZNSt3__15ctypeIcE13classic_tableEv', 'type': 'FUNC'}
----------------
I think this should be `{'name': '__ZNSt3__15ctypeIcE10table_sizeE', 'type': 'OBJECT', 'is_defined': True, 'size': 0}` instead. For some reason, mangled names on Darwin start with two underscores, and one underscore on Linux. I should investigate why that is.
================
Comment at: libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.no_new_in_libcxx.abilist:1649
{'is_defined': True, 'name': '__ZNSt3__15alignEmmRPvRm', 'type': 'FUNC'}
+{'is_defined': True, 'name': '_ZNSt3__15ctypeIcE10table_sizeE', 'size': 0, 'type': 'OBJECT'}
{'is_defined': True, 'name': '__ZNSt3__15ctypeIcE13classic_tableEv', 'type': 'FUNC'}
----------------
Same.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D110647/new/
https://reviews.llvm.org/D110647
More information about the libcxx-commits
mailing list