1 // RUN: %check_clang_tidy %s abseil-no-namespace %t -- -- -I %S/Inputs 2 // RUN: clang-tidy -checks='-*, abseil-no-namespace' -header-filter='.*' %s -- -I %S/Inputs 2>&1 | FileCheck %s 3 4 /// Warning will not be triggered on internal Abseil code that is included. 5 #include "absl/strings/internal-file.h" 6 // CHECK-NOT: warning: 7 8 /// Warning will be triggered on code that is not internal that is included. 9 #include "absl/external-file.h" 10 // CHECK: absl/external-file.h:1:11: warning: namespace 'absl' is reserved 11 12 namespace absl {} 13 // CHECK-MESSAGES: :[[@LINE-1]]:11: warning: namespace 'absl' is reserved for implementation of the Abseil library and should not be opened in user code [abseil-no-namespace] 14 15 namespace absl { 16 // CHECK-MESSAGES: :[[@LINE-1]]:11: warning: namespace 'absl' 17 namespace std { 18 int i = 5; 19 } 20 } 21 22 // Things that shouldn't trigger the check 23 int i = 5; 24 namespace std {} 25