brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.0 KiB · 2cdd509 Raw
31 lines · cpp
1// Make sure that diagnostics serialization does not crash with a really long diagnostic text.2 3// RUN: not %clang_cc1 -std=c++11 %s -serialize-diagnostic-file %t.dia4// RUN: c-index-test -read-diagnostics %t.dia 2>&1 | FileCheck %s5 6typedef class AReallyLooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooongName {} alias;7 8template <int N, typename ...T>9struct MyTS {10  typedef MyTS<N-1, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias,11    alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias,12    alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias,13    alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias,14    alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias,15    alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias,16    alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias,17    alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias,18    alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, alias, T...> type;19  static type callme() {20    return type::callme();21  }22};23 24template <typename ...T>25struct MyTS<0, T...> {};26 27void foo() {28  // CHECK: [[@LINE+1]]:20: note: in instantiation of member function29  int e = MyTS<2>::callme();30}31