UPT
UPT

Reputation: 1480

Template and Forward declaration in Apple LLVM 3.0

I am working on an application(contains 3 projects, 2 in c++ and one in Objective-C) which compiles perfectly for LLVM GCC compiler. But when I switch the compiler to 'Apple LLVM compiler 3.0' I found one strange error as follow:

error: implicit instantiation of undefined template 'EList<ETemplateString<char>>'

and above error shows in the following line of code:

   EList<EString> outlist;

with the forward declared EList as follows:

template <class T> class EList; // forward decls

EString is declared as follow:

typedef ETemplateString<TCHAR>         EString;

and rest of the used templates are defined as:

template <class T> class ETemplateString
{
//
//
//
}

and TCHAR is declared as:

typedef char TCHAR;

can anybody please let me know why it's compiling good with GCC and throwing errors in 'Apple LLVM compiler 3.0'

Upvotes: 0

Views: 973

Answers (1)

Related Questions