// Test this without pch. // RUN: %clang_cc1 -include %s -verify -std=c++11 %s // Test with pch. // RUN: %clang_cc1 -std=c++11 -emit-pch -o %t %s // RUN: %clang_cc1 -include-pch %t -verify -std=c++11 %s // RUN: %clang_cc1 -std=c++11 -emit-pch -fpch-instantiate-templates -o %t %s // RUN: %clang_cc1 -include-pch %t -verify -std=c++11 %s // expected-no-diagnostics #ifndef HEADER #define HEADER template class New { New(const New&); public: New *clone() { return new New(*this); } }; template int *arr_new(T ...v) { return new int[]{v...}; } #else New *clone_new(New *n) { return n->clone(); } int *use_arr_new = arr_new(1, 2, 3); #endif