mstange / msvc-demangler-rust

A rust library that demangles / undecorates C++ symbols mangled by MSVC
Other
42 stars 13 forks source link

fix and improve empty template parameter pack handling #41

Closed mitsuhiko closed 5 years ago

mitsuhiko commented 5 years ago

This fixes a bug with various types of empty template parameter packs. This fixes compatibility with some weird cases that LLVM can deal with. This adds a few tests from llvm to the testsuite.

I also changed how the printing happens so that the commas are handled in an easier way that cover those new edge cases. Empty packs are retained in the AST.

mitsuhiko commented 5 years ago

cc @jauer for review.

jrmuizel commented 5 years ago

This looks reasonable to me.