Add support for Java demangling under the v3 ABI:
* cp-demangle.c (NAMESPACE_SEPARATOR): New define. (struct demangling_def): Add `style' field. (demangling_new): New parameter `style'. Set it in demangling_t. (demangle_prefix): Use NAMESPACE_SEPARATOR. (demangle_type_ptr): Don't emit pointer symbol if doing Java output. (cp_demangle): New parameter `style'. Pass it to demangling_new(). (main): Call cp_demangle with extra parameter. (java_demangle_v3): New function. (java_builtin_type_names): New. Table of primitive type names used for Java demangling. (demangle_builtin_type): Look up in java_builtin_type_names if doing Java output. * cplus-dem.c (cplus_demangle): Use java_demangle_v3 to do Java demangling. (long_options): Remove obsolete `java' option. (main): Remove explicit handling of `java' option. Instead, pass style parameter in cplus_demangle flags as gdb does. * testsuite/demangle.expected: Add some Java test cases. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@39399 138bc75d-0d04-0410-961f-82ee72b054a4
Showing
- ChangeLog 4 additions, 0 deletionsChangeLog
- include/demangle.h 4 additions, 1 deletioninclude/demangle.h
- libiberty/ChangeLog 22 additions, 0 deletionslibiberty/ChangeLog
- libiberty/cp-demangle.c 168 additions, 15 deletionslibiberty/cp-demangle.c
- libiberty/cplus-dem.c 11 additions, 9 deletionslibiberty/cplus-dem.c
- libiberty/testsuite/demangle-expected 20 additions, 0 deletionslibiberty/testsuite/demangle-expected
Loading
Please register or sign in to comment