[LLVMbugs] [Bug 8350] New: Clang does not produce symbols for typeinfo

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon Oct 11 00:11:47 PDT 2010


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

           Summary: Clang does not produce symbols for typeinfo
           Product: clang
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: packadal at gmail.com
                CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com


Hi,

I have been trying clang on my project for some time now, and I have come with
a set of patches to make it compile successfully.
Clang produces nice error messages and I'd really be able to use it as my
default compiler.
However, I have a link error to typeinfo for two classes.
These classes inherit from a template class, laid out as follows:

template<class T1, class T2, classT3>
class Base : public SubBase {
 virtual void Foo();
};

#include "Base.cxx"

//Base.cxx
template<class T1, class T2, classT3>
Base::Foo() { .... }

I moved the definitions into the header file, and the linker error disappeared.
However, the strange thing is that this base template class is used in 10
different instances, and only 2 cause link errors, so there might be more to it
that I can see.

The project I work on is open-source, and you can get the sources and try this
by yourself (however the patches to get it to compile with clang are not in
yet, so I'll attach them here if you want me to).
svn repo: https://auber.svn.sourceforge.net/svnroot/auber/tulip/trunk
website: http://www.tulip-software.org

Best regards

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