1 int function(int x) { 2 return x + 1; 3 } 4 5 int variable = 0; 6 7 class Class { 8 public: 9 Class() { } 10 11 int method(int x) { 12 return x + 1; 13 } 14 15 virtual void virtualMethod() { 16 } 17 18 static void staticMethod() { 19 } 20 21 static int staticVar; 22 }; 23 24 class SubClass : public Class { 25 void virtualMethod() override final { 26 } 27 }; 28 29 struct Struct { 30 }; 31 32 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:1:1 %s | FileCheck --check-prefix=CHECK-TOP-LEVEL %s 33 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:5:1 %s | FileCheck --check-prefix=CHECK-TOP-LEVEL %s 34 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:11:1 %s | FileCheck --check-prefix=CHECK-TOP-LEVEL %s 35 // CHECK-TOP-LEVEL: alignas(<#expression#>) 36 // CHECK-TOP-LEVEL: constexpr 37 // CHECK-TOP-LEVEL: static_assert(<#expression#>, <#message#>); 38 // CHECK-TOP-LEVEL: thread_local 39 // CHECK-TOP-LEVEL-NOT: final 40 // CHECK-TOP-LEVEL-NOT: noexcept 41 42 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:1:14 %s | FileCheck --check-prefix=CHECK-PARAM %s 43 // CHECK-PARAM-NOT: alignas 44 // CHECK-PARAM-NOT: constexpr 45 // CHECK-PARAM-NOT: final 46 // CHECK-PARAM-NOT: thread_local 47 48 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:21:10 %s | FileCheck --check-prefix=CHECK-STATICVAR1 %s 49 // CHECK-STATICVAR1: constexpr 50 // CHECK-STATICVAR1: thread_local 51 52 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:7:13 %s | FileCheck --check-prefix=CHECK-CLASS-QUALIFIER %s 53 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:24:16 %s | FileCheck --check-prefix=CHECK-CLASS-QUALIFIER %s 54 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:29:15 %s | FileCheck --check-prefix=CHECK-CLASS-QUALIFIER %s 55 // CHECK-CLASS-QUALIFIER: final 56 57 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:1:21 %s | FileCheck --check-prefix=CHECK-FUNCTION-QUALIFIER %s 58 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:9:11 %s | FileCheck --check-prefix=CHECK-FUNCTION-QUALIFIER %s 59 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:18:30 %s | FileCheck --check-prefix=CHECK-FUNCTION-QUALIFIER %s 60 // CHECK-FUNCTION-QUALIFIER: noexcept 61 // CHECK-FUNCTION-QUALIFIER-NOT: final 62 // CHECK-FUNCTION-QUALIFIER-NOT: override 63 64 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:11:21 %s | FileCheck --check-prefix=CHECK-METHOD-QUALIFIER %s 65 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:15:32 %s | FileCheck --check-prefix=CHECK-METHOD-QUALIFIER %s 66 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:25:24 %s | FileCheck --check-prefix=CHECK-METHOD-QUALIFIER %s 67 // CHECK-METHOD-QUALIFIER: final 68 // CHECK-METHOD-QUALIFIER: noexcept 69 // CHECK-METHOD-QUALIFIER: override 70 71 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:25:33 %s | FileCheck --check-prefix=CHECK-OVERRIDE-SPECIFIED %s 72 // CHECK-OVERRIDE-SPECIFIED: final 73 // CHECK-OVERRIDE-SPECIFIED: noexcept 74 // CHECK-OVERRIDE-SPECIFIED-NOT: override 75 76 // RUN: %clang_cc1 -std=c++11 -code-completion-at=%s:25:39 %s | FileCheck --check-prefix=CHECK-OVERRIDE-FINAL-SPECIFIED %s 77 // CHECK-OVERRIDE-FINAL-SPECIFIED: noexcept 78 // CHECK-OVERRIDE-FINAL-SPECIFIED-NOT: final 79 // CHECK-OVERRIDE-FINAL-SPECIFIED-NOT: override 80