// RUN: %clangxx -O0 %s -o %t && %run %t 2>&1 | FileCheck %s // Test that symbolizer does not crash on frame with large function name. #include #include template struct A { template void RecursiveTemplateFunction(const T &t); }; template template __attribute__((noinline)) void A::RecursiveTemplateFunction(const T &) { std::vector t; return A().RecursiveTemplateFunction(t); } template <> template __attribute__((noinline)) void A<0>::RecursiveTemplateFunction(const T &) { __sanitizer_print_stack_trace(); } int main() { // CHECK: {{vector<.*vector<.*vector<.*vector<.*vector<}} A<10>().RecursiveTemplateFunction(0); }