[LLVMbugs] [Bug 6899] New: Clang cannot mangle dependent template names

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Thu Apr 22 19:20:01 PDT 2010


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

           Summary: Clang cannot mangle dependent template names
           Product: clang
           Version: trunk
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: dgregor at apple.com
                CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com


The following code causes an assertion in name mangling:

  template<typename T>
  struct supermeta {
    template<typename U>
    struct apply {
      typedef T U::*type;
    };
  };

  struct X { };

  template<typename T, typename U>
  typename supermeta<T>::template apply<U>::type f();

  void test_f() {
    f<int, X>();
  }


Assertion failed: (TD && "FIXME: Support dependent template names"), function
mangleUnresolvedScope, file
/Users/dgregor/Projects/llvm/tools/clang/lib/CodeGen/Mangle.cpp, line 477.
Stack dump:
0.    Program arguments: /Users/dgregor/Projects/llvm-xcode/bin/Debug/clang
-cc1 -emit-llvm -o -
/Users/dgregor/Projects/llvm/tools/clang/test/CodeGenCXX/mangle-template.cpp

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