[cfe-dev] 回复:Re: Public the interface for cxa_demangler.cpp

via cfe-dev cfe-dev at lists.llvm.org
Mon Apr 23 00:32:08 PDT 2018

Hi, Erik
It seems that, your partitial Demangler is implemented basing on C++. I have to link with c++ runtime libraries if I want to use it. (i.e. you are using new/delete etc). However, I won't link with the c++ runtime libraries as I am C project. I notice that, the demangler implemented inside llvm runtime(cxa_demangler.cpp) is carefully implemented that not depending on the c++ runtime.Would you please add the C interface and remove the dependent on the C++ runtime so that, the C project could use it ?
Thank you.

----- 原始邮件 -----
发件人:Erik Pilkington <erik.pilkington at gmail.com>
收件人:bluedream_zqs at sina.com, cfe-dev <cfe-dev at lists.llvm.org>
主题:Re: [cfe-dev] Public the interface for cxa_demangler.cpp
日期:2018年04月13日 20点54分

    No plans as of yet! I never planned to export the AST in this
      way, doing so would probably require some surgery (ie, make all
      the identifiers it uses reserved). I very recently landed r329951,
      which provides a simple opaque API to the AST for the copy of the
      demangler in llvm. Maybe this is enough for your use case? What
      kind of analysis are you planning on performing?



    On 2018-04-13 4:22 AM, via cfe-dev

      file "llvm.stl/libcxxabi/src/cxa_demangler.cpp" implement the
      interface "__cxa_demangle()" defined in the C++ABI. It decoded the
      mangled string into the demangled one, that is, "string -->
      string".  Inside it, it is implemented by "string --> AST
      --> string". However, someone might need the internal AST
      instead of the demangled string to do the further analysis for the
      mangled string. Do we have any plan not to hide the AST inside the
      cxa_demangler.cpp, but public it into the cxa_demangle.h ? Thank



cfe-dev mailing list
cfe-dev at lists.llvm.org



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20180423/ea1932c5/attachment.html>

More information about the cfe-dev mailing list