Also, a number of style and bug fixes was done: * ASTImporterTest: added sanity check for source node * ExternalASTMerger: better lookup for template specializations * ASTImporter: don't add templated declarations into DeclContext * ASTImporter: introduce a helper, ImportTemplateArgumentListInfo getting SourceLocations * ASTImporter: proper set ParmVarDecls for imported FunctionProtoTypeLoc Differential Revision: https://reviews.llvm.org/D42301 llvm-svn: 323519
38 lines
467 B
C++
38 lines
467 B
C++
template<class T>
|
|
struct X0 {
|
|
T getValue(T arg);
|
|
};
|
|
|
|
template<int I>
|
|
struct X1;
|
|
|
|
template<long I>
|
|
struct X2;
|
|
|
|
template<typename>
|
|
struct X3;
|
|
|
|
template<template<int I> class>
|
|
struct X4;
|
|
|
|
template<template<int I> class>
|
|
struct X5;
|
|
|
|
template<template<int I> class>
|
|
struct X6;
|
|
|
|
typedef int Integer;
|
|
extern X0<Integer> *x0i;
|
|
extern X0<float> *x0f;
|
|
extern X0<double> *x0r;
|
|
|
|
template<>
|
|
struct X0<char> {
|
|
int member;
|
|
};
|
|
|
|
template<>
|
|
struct X0<wchar_t> {
|
|
float member;
|
|
};
|