[PATCH] D50145: [MS Demangler] Demangle templated operator overloads

Zachary Turner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 1 09:44:26 PDT 2018


zturner created this revision.
zturner added reviewers: majnemer, rnk, ruiu, compnerd.
Herald added subscribers: erik.pilkington, hiraditya.

After we detected the presence of a template via `?$` we would proceed by only demangling a simple unqualified name.  This means we would fail on templated operators (and perhaps other yet-to-be-determined things)

This was discovered while doing some refactoring to store richer semantic information about the demangled types to pave the way for overhauling the way we handle backreferences.  (Specifically, we need to defer recording or resolving back-references until a symbol has been completely demangled, because we need to use information that only occurs later in the mangled string to decide whether a back-reference should be recorded.)


https://reviews.llvm.org/D50145

Files:
  llvm/lib/Demangle/MicrosoftDemangle.cpp
  llvm/test/Demangle/ms-back-references.test
  llvm/test/Demangle/ms-mangle.test

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D50145.158556.patch
Type: text/x-patch
Size: 8557 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180801/febf8e91/attachment.bin>


More information about the llvm-commits mailing list