blob: 1fdaa9c29be2af2d91e0cc1a5e0fe0a8d1106a7a [file] [log] [blame]
Richard Smith50895422015-01-31 03:04:55 +00001// RUN: rm -rf %t
Richard Smith7483d202015-02-04 01:23:46 +00002// RUN: %clang_cc1 -fmodules -fmodules-cache-path=%t -I%S/Inputs/merge-template-members -verify -emit-llvm-only %s -DTEST=1
3// RUN: %clang_cc1 -fmodules -fmodules-cache-path=%t -I%S/Inputs/merge-template-members -verify -emit-llvm-only %s -DTEST=2
4// RUN: %clang_cc1 -fmodules -fmodules-cache-path=%t -I%S/Inputs/merge-template-members -verify -emit-llvm-only %s -DTEST=3
Richard Smith50895422015-01-31 03:04:55 +00005// expected-no-diagnostics
6
Richard Smith7483d202015-02-04 01:23:46 +00007#if TEST == 1
Richard Smith2a9e5c52015-02-03 03:32:14 +00008
Richard Smith50895422015-01-31 03:04:55 +00009template<typename> struct A { int n; };
10template<typename> struct B { typedef A<void> C; };
11template class B<int>;
12
13#include "update.h"
14B<int>::C use2;
Richard Smith7483d202015-02-04 01:23:46 +000015
16#elif TEST == 2
17
18#include "c.h"
19N::A<int> ai;
20
21#elif TEST == 3
22
23#include "merge.h"
24
25#else
26#error Unknown test
27#endif