[clang][IFS] Adds support for more decl types in clang interface stubs.
Adding support for processing the following Decls: NonTypeTemplateParmDecl,
CXXConversionDecl, UnresolvedUsingValueDecl, UsingDecl, UsingShadowDecl,
TypeAliasTemplateDecl, TypeAliasDecl, VarTemplateDecl,
VarTemplateSpecializationDecl, UsingDirectiveDecl, TemplateTemplateParmDecl,
ClassTemplatePartialSpecializationDecl, IndirectFieldDecl.
Also, this allows for processing NamedDecls that don't have an identifier and
skips over VarDecls that are dependent on template types.
Differential Revision: https://reviews.llvm.org/D69995
2019-11-09 09:21:28 +08:00
|
|
|
// RUN: %clang -c -o - -emit-interface-stubs %s | FileCheck %s
|
|
|
|
|
|
|
|
// CHECK: --- !experimental-ifs-v1
|
|
|
|
// CHECK-NEXT: IfsVersion: 1.0
|
2019-11-09 10:06:23 +08:00
|
|
|
// CHECK-NEXT: Triple:
|
[clang][IFS] Adds support for more decl types in clang interface stubs.
Adding support for processing the following Decls: NonTypeTemplateParmDecl,
CXXConversionDecl, UnresolvedUsingValueDecl, UsingDecl, UsingShadowDecl,
TypeAliasTemplateDecl, TypeAliasDecl, VarTemplateDecl,
VarTemplateSpecializationDecl, UsingDirectiveDecl, TemplateTemplateParmDecl,
ClassTemplatePartialSpecializationDecl, IndirectFieldDecl.
Also, this allows for processing NamedDecls that don't have an identifier and
skips over VarDecls that are dependent on template types.
Differential Revision: https://reviews.llvm.org/D69995
2019-11-09 09:21:28 +08:00
|
|
|
// CHECK-NEXT: ObjectFileFormat: ELF
|
|
|
|
// CHECK-NEXT: Symbols:
|
|
|
|
// CHECK-NEXT: ...
|
|
|
|
|
|
|
|
template<typename T, T v> struct S8 { static constexpr T value = v; };
|
2019-11-09 10:06:23 +08:00
|
|
|
template<typename T, T v> constexpr T S8<T, v>::value;
|