1176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// RUN: %clang_cc1 -std=c++11 -ast-dump -ast-dump-filter Test %s | FileCheck -check-prefix DECLS %s 2176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// RUN: %clang_cc1 -std=c++11 -ast-dump-lookups -ast-dump-filter Test %s | FileCheck -check-prefix LOOKUPS %s 3176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// RUN: %clang_cc1 -std=c++11 -ast-dump -ast-dump-lookups -ast-dump-filter Test %s | FileCheck -check-prefix DECLS-LOOKUPS %s 4176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines 5176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hinesnamespace Test { 6176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines extern int a; 7176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines int a = 0; 8176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines} 9176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines 10176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hinesnamespace Test { } 11176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines 12176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS: Dumping Test: 13176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-NEXT: NamespaceDecl {{.*}} Test 14176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-NEXT: |-VarDecl [[EXTERN_A:0x[^ ]*]] {{.*}} a 'int' extern 15176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-NEXT: `-VarDecl {{.*}} prev [[EXTERN_A]] {{.*}} a 'int' cinit 16176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-NEXT: `-IntegerLiteral {{.*}} 'int' 0 17176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// 18176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS: Dumping Test: 19176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-NEXT: NamespaceDecl {{.*}} Test 20176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines 21176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// LOOKUPS: Dumping Test: 22176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// LOOKUPS-NEXT: StoredDeclsMap Namespace {{.*}} 'Test' 23176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// LOOKUPS-NEXT: `-DeclarationName 'a' 24176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// LOOKUPS-NEXT: `-Var {{.*}} 'a' 'int' 25176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// 26176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// LOOKUPS: Dumping Test: 27176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// LOOKUPS-NEXT: Lookup map is in primary DeclContext 28176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines 29176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-LOOKUPS: Dumping Test: 30176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-LOOKUPS-NEXT: StoredDeclsMap Namespace {{.*}} 'Test' 31176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-LOOKUPS-NEXT: `-DeclarationName 'a' 32176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-LOOKUPS-NEXT: `-Var [[A:[^ ]*]] 'a' 'int' 33176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-LOOKUPS-NEXT: |-VarDecl [[EXTERN_A:0x[^ ]*]] {{.*}} a 'int' extern 34176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-LOOKUPS-NEXT: `-VarDecl [[A]] prev [[EXTERN_A]] {{.*}} a 'int' cinit 35176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-LOOKUPS-NEXT: `-IntegerLiteral {{.*}} 'int' 0 36176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// 37176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-LOOKUPS: Dumping Test: 38176edba5311f6eff0cad2631449885ddf4fbc9eaStephen Hines// DECLS-LOOKUPS-NEXT: Lookup map is in primary DeclContext 39