// RUN: %clang_cc1 %s %s -std=c++17 -triple x86_64-linux-gnu -fsycl-is-device -verify -fsyntax-only -Wno-unused | |
// This would crash due to the double-inputs, since the 'magic static' use in | |
// the AST Context SCYL Filtering would end up caching an old version of the | |
// ASTContext object, which no longer exists in the second file's invocation. | |
// | |
// expected-no-diagnostics | |
class Empty {}; | |
template <typename, typename F> __attribute__((sycl_kernel)) void kernel(F) { | |
__builtin_sycl_unique_stable_name(F); | |
} | |
void use() { | |
[](Empty) { | |
auto lambda = []{}; | |
kernel<class i>(lambda); | |
}; | |
} |