[LLVMbugs] [Bug 14006] New: [microsoft] In the MS abi, integer template parameters > 255 aren't mangled correctly

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Oct 3 06:08:20 PDT 2012


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

             Bug #: 14006
           Summary: [microsoft] In the MS abi, integer template parameters
                    > 255 aren't mangled correctly
           Product: clang
           Version: unspecified
          Platform: PC
        OS/Version: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: LLVM Codegen
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: nicolasweber at gmx.de
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified


C:\src\chrome\src>type test-expr.cc
namespace NOM {

struct MyStruct {};

template <int a> class MyClass {
 public:
  void my_function();
};

MyStruct mystruct;
void f() {
  MyClass<256> myclass;
  myclass.my_function();
}

}

int main() {}

C:\src\chrome\src>..\..\llvm-ninja\bin\clang.exe  test-expr.cc -Xclang -cxx-abi
-Xclang microsoft
test-expr-168206.o : error LNK2019: unresolved external symbol "public: void
__thiscall NOM::MyClass<0>::my_function(void)"
(?my_function@?$MyClass@$0AA@@NOM@@QAEXXZ) referenced in function "void __cdecl
NOM::f(void)" (?f at NOM@@YAXXZ)
a.out : fatal error LNK1120: 1 unresolved externals



(Note how link.exe complains about MyClass<0> instead of MyClass<256>. Works
fine in clang for smaller numbers; works fine in cl.)

-- 
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