summaryrefslogtreecommitdiff
path: root/tests/mangling
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2020-03-03 23:32:42 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2020-03-03 23:33:38 (GMT)
commitd0314437fcad499f45a4bdb93d085100cee2c70b (patch)
tree8c77605d56f0d603de73d5f24be0aba972db5959 /tests/mangling
parent0c638aecff9482b93621d77279ac77a8788584e9 (diff)
Handled destructors properly when demangling C++ Itanium names.
Diffstat (limited to 'tests/mangling')
-rw-r--r--tests/mangling/itanium.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/tests/mangling/itanium.py b/tests/mangling/itanium.py
index a04c590..2d13d77 100644
--- a/tests/mangling/itanium.py
+++ b/tests/mangling/itanium.py
@@ -175,3 +175,12 @@ class TestItaniumMangling(ChrysalideTestCase):
demangled = demangler.decode_routine('_ZSt12partial_sortIN9__gnu_cxx17__normal_iteratorIP28CPR_MAI_ADPTY_SectorSequenceSt6vectorIS2_SaIS2_EEEEEvT_S8_S8_')
self.check_demangling(demangled, 'void std::partial_sort<__gnu_cxx::__normal_iterator<CPR_MAI_ADPTY_SectorSequence *, std::vector<CPR_MAI_ADPTY_SectorSequence, std::allocator<CPR_MAI_ADPTY_SectorSequence>>>>(__gnu_cxx::__normal_iterator<CPR_MAI_ADPTY_SectorSequence *, std::vector<CPR_MAI_ADPTY_SectorSequence, std::allocator<CPR_MAI_ADPTY_SectorSequence>>>, __gnu_cxx::__normal_iterator<CPR_MAI_ADPTY_SectorSequence *, std::vector<CPR_MAI_ADPTY_SectorSequence, std::allocator<CPR_MAI_ADPTY_SectorSequence>>>, __gnu_cxx::__normal_iterator<CPR_MAI_ADPTY_SectorSequence *, std::vector<CPR_MAI_ADPTY_SectorSequence, std::allocator<CPR_MAI_ADPTY_SectorSequence>>>)')
+
+
+ def testAndroidSystem(self):
+ """Check Itanium routine demangling from Android system cases."""
+
+ demangler = ItaniumDemangler()
+
+ demangled = demangler.decode_routine('_ZN7android7String8D1Ev')
+ self.check_demangling(demangled, 'void android::String8::~String8(void)')