// RUN: rm -rf %t // RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fmodules-cache-path=%t -I%S/Inputs/merge-template-members -verify -emit-llvm-only %s -DTEST=1 // RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fmodules-cache-path=%t -I%S/Inputs/merge-template-members -verify -emit-llvm-only %s -DTEST=2 // RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fmodules-cache-path=%t -I%S/Inputs/merge-template-members -verify -emit-llvm-only %s -DTEST=3 // expected-no-diagnostics #if TEST == 1 template struct A { int n; }; template struct B { typedef A C; }; template class B; #include "update.h" B::C use2; #elif TEST == 2 #include "c.h" N::A ai; #elif TEST == 3 #include "merge.h" #else #error Unknown test #endif