https://llvm.org/bugs/show_bug.cgi?id=24223
Bug ID: 24223
Summary: Template parameter is undeclared identifier?
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: Frontend
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected]
Classification: Unclassified
The following code:
class A {};
template<class TRAITS> void bar(void *p) {
typedef typename TRAITS::cData *iter;
iter it = (iter)p;
(*it).TRAITS::cData::~cData(); // fails
}
struct B { typedef A cData; };
void foo (void *x) {
bar<B>(x);
}
gets an error on the line marked with // fails
t.cpp:5:9: error: use of undeclared identifier 'TRAITS'
(*it).TRAITS::cData::~cData(); // fails
^
t.cpp:9:3: note: in instantiation of function template
specialization 'bar<B>' requested here
bar<B>(x);
^
1 error generated.
--
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