[LLVMbugs] [Bug 18203] New: [-cxx-abi microsoft] Inconsistent handling of in-class initializers in anonymous tag members

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Tue Dec 10 17:43:21 PST 2013


http://llvm.org/bugs/show_bug.cgi?id=18203

            Bug ID: 18203
           Summary: [-cxx-abi microsoft] Inconsistent handling of in-class
                    initializers in anonymous tag members
           Product: clang
           Version: unspecified
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: normal
          Priority: P
         Component: LLVM Codegen
          Assignee: unassignedclangbugs at nondot.org
          Reporter: rnk at google.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

template <typename T> int f(T *) { return 0; }
struct Foo {
  union {
    int n = f(this);
  };
} g;

Clang considers the union here to be a distinct record, and produces the
following template instantiation:
??$f at T<unnamed-tag>@Foo@@@@YAHPAT<unnamed-tag>@Foo@@@Z

MSVC considers 'this' to be of type Foo*, and gives this instantiation
mangling:
??$f at UFoo@@@@YAHPAUFoo@@@Z

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20131211/3e990158/attachment.html>


More information about the llvm-bugs mailing list