Page MenuHomePhabricator

Add support for demangling msvc's noexcept types to llvm-undname
ClosedPublic

Authored by zahen on Dec 17 2018, 8:07 AM.

Details

Summary

msvc under C++17 mangles noexcept functions used as types (function parameters, template types) with "_E" instead of "Z" indicating the function is noexcept.

Diff Detail

Repository
rL LLVM

Event Timeline

zahen created this revision.Dec 17 2018, 8:07 AM
rnk accepted this revision.Dec 17 2018, 2:56 PM

lgtm

This revision is now accepted and ready to land.Dec 17 2018, 2:56 PM
zahen added a comment.Dec 17 2018, 3:19 PM

Same as the corresponding mangling patch, I'd appreciate someone else landing this since I don't have check-in permission.

rnk resigned from this revision.Dec 17 2018, 3:42 PM

Oops, too many Zacharies. I mistook you for him (only in this patch, not the other one). He has more ownership over this code, so I will let him approve it.

This revision now requires review to proceed.Dec 17 2018, 3:42 PM
zturner accepted this revision.Dec 17 2018, 4:51 PM

lgtm. I'm technically on vacation so rnk@ might be able to commit it sooner than I can, but if he doesn't, then I'll commit it when I find some spare cycles. Thanks for fixing this!

This revision is now accepted and ready to land.Dec 17 2018, 4:51 PM
zahen added a comment.Jan 8 2019, 11:26 AM

lgtm. I'm technically on vacation so rnk@ might be able to commit it sooner than I can, but if he doesn't, then I'll commit it when I find some spare cycles. Thanks for fixing this!

Hi @zturner, can you please commit this when you have a chance?

lgtm. I'm technically on vacation so rnk@ might be able to commit it sooner than I can, but if he doesn't, then I'll commit it when I find some spare cycles. Thanks for fixing this!

Hi @zturner, can you please commit this when you have a chance?

I don't mind doing it if there are no objections, as Zachary has signed off on it (may have to wait a bit, I'll run the tests with this applied first).

This revision was automatically updated to reflect the committed changes.