forked from OSchip/llvm-project
162 lines
3.1 KiB
C++
162 lines
3.1 KiB
C++
// RUN: %check_clang_tidy -std=c++17-or-later %s modernize-concat-nested-namespaces %t
|
|
|
|
namespace n1 {}
|
|
|
|
namespace n2 {
|
|
namespace n3 {
|
|
void t();
|
|
}
|
|
namespace n4 {
|
|
void t();
|
|
}
|
|
} // namespace n2
|
|
|
|
namespace n5 {
|
|
inline namespace n6 {
|
|
void t();
|
|
}
|
|
} // namespace n5
|
|
|
|
namespace n7 {
|
|
void t();
|
|
|
|
namespace n8 {
|
|
void t();
|
|
}
|
|
} // namespace n7
|
|
|
|
namespace n9 {
|
|
namespace n10 {
|
|
// CHECK-MESSAGES: :[[@LINE-2]]:1: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
|
|
// CHECK-FIXES: namespace n9::n10
|
|
void t();
|
|
} // namespace n10
|
|
} // namespace n9
|
|
// CHECK-FIXES: }
|
|
|
|
namespace n11 {
|
|
namespace n12 {
|
|
// CHECK-MESSAGES: :[[@LINE-2]]:1: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
|
|
// CHECK-FIXES: namespace n11::n12
|
|
namespace n13 {
|
|
void t();
|
|
}
|
|
namespace n14 {
|
|
void t();
|
|
}
|
|
} // namespace n12
|
|
} // namespace n11
|
|
// CHECK-FIXES: }
|
|
|
|
namespace n15 {
|
|
namespace n16 {
|
|
void t();
|
|
}
|
|
|
|
inline namespace n17 {
|
|
void t();
|
|
}
|
|
|
|
namespace n18 {
|
|
namespace n19 {
|
|
namespace n20 {
|
|
// CHECK-MESSAGES: :[[@LINE-3]]:1: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
|
|
// CHECK-FIXES: namespace n18::n19::n20
|
|
void t();
|
|
} // namespace n20
|
|
} // namespace n19
|
|
} // namespace n18
|
|
// CHECK-FIXES: }
|
|
|
|
namespace n21 {
|
|
void t();
|
|
}
|
|
} // namespace n15
|
|
|
|
namespace n22 {
|
|
namespace {
|
|
void t();
|
|
}
|
|
} // namespace n22
|
|
|
|
namespace n23 {
|
|
namespace {
|
|
namespace n24 {
|
|
namespace n25 {
|
|
// CHECK-MESSAGES: :[[@LINE-2]]:1: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
|
|
// CHECK-FIXES: namespace n24::n25
|
|
void t();
|
|
} // namespace n25
|
|
} // namespace n24
|
|
// CHECK-FIXES: }
|
|
} // namespace
|
|
} // namespace n23
|
|
|
|
namespace n26::n27 {
|
|
namespace n28 {
|
|
namespace n29::n30 {
|
|
// CHECK-MESSAGES: :[[@LINE-3]]:1: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
|
|
// CHECK-FIXES: namespace n26::n27::n28::n29::n30
|
|
void t() {}
|
|
} // namespace n29::n30
|
|
} // namespace n28
|
|
} // namespace n26::n27
|
|
// CHECK-FIXES: }
|
|
|
|
namespace n31 {
|
|
namespace n32 {}
|
|
// CHECK-MESSAGES: :[[@LINE-2]]:1: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
|
|
} // namespace n31
|
|
// CHECK-FIXES-EMPTY
|
|
|
|
namespace n33 {
|
|
namespace n34 {
|
|
namespace n35 {}
|
|
// CHECK-MESSAGES: :[[@LINE-2]]:1: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
|
|
} // namespace n34
|
|
// CHECK-FIXES-EMPTY
|
|
namespace n36 {
|
|
void t();
|
|
}
|
|
} // namespace n33
|
|
|
|
namespace n37::n38 {
|
|
void t();
|
|
}
|
|
|
|
#define IEXIST
|
|
namespace n39 {
|
|
namespace n40 {
|
|
// CHECK-MESSAGES: :[[@LINE-2]]:1: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
|
|
// CHECK-FIXES: namespace n39::n40
|
|
#ifdef IEXIST
|
|
void t() {}
|
|
#endif
|
|
} // namespace n40
|
|
} // namespace n39
|
|
// CHECK-FIXES: }
|
|
|
|
namespace n41 {
|
|
namespace n42 {
|
|
// CHECK-MESSAGES: :[[@LINE-2]]:1: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
|
|
// CHECK-FIXES: namespace n41::n42
|
|
#ifdef IDONTEXIST
|
|
void t() {}
|
|
#endif
|
|
} // namespace n42
|
|
} // namespace n41
|
|
// CHECK-FIXES: }
|
|
|
|
int main() {
|
|
n26::n27::n28::n29::n30::t();
|
|
#ifdef IEXIST
|
|
n39::n40::t();
|
|
#endif
|
|
|
|
#ifdef IDONTEXIST
|
|
n41::n42::t();
|
|
#endif
|
|
|
|
return 0;
|
|
}
|