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

           Summary: clang c++ emits unnecessary definition of static
                    member of template class
           Product: clang
           Version: unspecified
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
        AssignedTo: [email protected]
        ReportedBy: [email protected]
                CC: [email protected], [email protected]
        Depends on: 5511


Testcase:
class X {
  template <class Dummy> struct COMTypeInfo {
    static const int kIID;
  };
  static const int& GetIID() {return COMTypeInfo<int>::kIID;}
};
template <class Dummy> const int X::COMTypeInfo<Dummy>::kIID = 10;


clang outputs _ZN1X11COMTypeInfoIiE4kIIDE; g++ doesn't.

This pattern is used heavily in Firefox.

-- 
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.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs

Reply via email to