summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/xray-attributes-supported.cpp
diff options
context:
space:
mode:
authorPavel Labath <pavel@labath.sk>2018-10-16 14:29:14 +0000
committerPavel Labath <pavel@labath.sk>2018-10-16 14:29:14 +0000
commit49b29eabc662aebcaf3f24ea69e80dcb1f903010 (patch)
treea852591ebbac171f26572ba8db0231bb2744a7d8 /clang/test/CodeGen/xray-attributes-supported.cpp
parent1a8713046dfdbc997c30542154790feeaa6dfc14 (diff)
downloadbcm5719-llvm-49b29eabc662aebcaf3f24ea69e80dcb1f903010.tar.gz
bcm5719-llvm-49b29eabc662aebcaf3f24ea69e80dcb1f903010.zip
cxa_demangle: make demangler's parsing functions overridable
Summary: This uses CRTP (for performance reasons) to allow a user the override demangler functions to implement custom parsing logic. The motivation for this is LLDB, which needs to occasionaly modify the mangled names. One such instance is already implemented via the TypeCallback member, but this is very specific functionality which does not help with any other use case. Currently we have a use case for modifying the constructor flavours, which would require adding another callback. This approach does not scale. With CRTP, the user (LLDB) can override any function it needs without any special support from the demangler library. After LLDB is ported to use this instead of the TypeCallback mechanism, the callback can be removed. More context can be found in D50599. Reviewers: erik.pilkington, rsmith Subscribers: christof, ldionne, llvm-commits, libcxx-commits Differential Revision: https://reviews.llvm.org/D52992 llvm-svn: 344607
Diffstat (limited to 'clang/test/CodeGen/xray-attributes-supported.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud