[LLVMbugs] [Bug 12974] New: [Windows] Support mangling using back references

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon May 28 10:25:45 PDT 2012


             Bug #: 12974
           Summary: [Windows] Support mangling using back references
           Product: clang
           Version: trunk
          Platform: PC
        OS/Version: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: C++
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: timurrrr at google.com
                CC: dgregor at apple.com, llvmbugs at cs.uiuc.edu
    Classification: Unclassified

Created attachment 8655
  --> http://llvm.org/bugs/attachment.cgi?id=8655
Some tests + early draft of the patch that passes the tests

[Assuming the '-cxx-abi microsoft' mode]

If some non-builtin type is used more than once in the argument list, it should
be back-referenced instead of repeated, e.g.:
  void f3(int a, const char* b, const char* c) {}
    should be   "\01?f3@@YAXHPBD0 at Z"
    not         "\01?f3@@YAXHPBDPDB at Z"

Attached is a draft patch that allowed me to mangle stuff like this correctly
so far (I'm not sure about the coverage though) with some tests.
This patch is not "review ready" but should give some hints (and tests!) if
anyone wants to work on this.

See also bug 12783.

Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

More information about the llvm-bugs mailing list