[clang] 4184d33 - [Clang][NFC] Avoid opening namespace std (#95470)
via cfe-commits
cfe-commits at lists.llvm.org
Fri Jun 14 13:24:44 PDT 2024
Author: Nikolas Klauser
Date: 2024-06-14T22:24:40+02:00
New Revision: 4184d33369a9dce391977220683e3f1975bf1fc9
URL: https://github.com/llvm/llvm-project/commit/4184d33369a9dce391977220683e3f1975bf1fc9
DIFF: https://github.com/llvm/llvm-project/commit/4184d33369a9dce391977220683e3f1975bf1fc9.diff
LOG: [Clang][NFC] Avoid opening namespace std (#95470)
Never opening `namespace std` avoids even the possibility of introducing
new symbols as well as making the code a bit shorter by removing
unnecessary boiler plate.
Added:
Modified:
clang/include/clang/Format/Format.h
clang/include/clang/Frontend/PrecompiledPreamble.h
clang/include/clang/Frontend/SerializedDiagnosticReader.h
clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
Removed:
################################################################################
diff --git a/clang/include/clang/Format/Format.h b/clang/include/clang/Format/Format.h
index 4fd6e013df25b..f9299ce89a624 100644
--- a/clang/include/clang/Format/Format.h
+++ b/clang/include/clang/Format/Format.h
@@ -5430,9 +5430,7 @@ bool isClangFormatOff(StringRef Comment);
} // end namespace format
} // end namespace clang
-namespace std {
template <>
-struct is_error_code_enum<clang::format::ParseError> : std::true_type {};
-} // namespace std
+struct std::is_error_code_enum<clang::format::ParseError> : std::true_type {};
#endif // LLVM_CLANG_FORMAT_FORMAT_H
diff --git a/clang/include/clang/Frontend/PrecompiledPreamble.h b/clang/include/clang/Frontend/PrecompiledPreamble.h
index 798870bf24fe1..624df004bf89e 100644
--- a/clang/include/clang/Frontend/PrecompiledPreamble.h
+++ b/clang/include/clang/Frontend/PrecompiledPreamble.h
@@ -256,9 +256,7 @@ class BuildPreambleErrorCategory final : public std::error_category {
std::error_code make_error_code(BuildPreambleError Error);
} // namespace clang
-namespace std {
template <>
-struct is_error_code_enum<clang::BuildPreambleError> : std::true_type {};
-} // namespace std
+struct std::is_error_code_enum<clang::BuildPreambleError> : std::true_type {};
#endif
diff --git a/clang/include/clang/Frontend/SerializedDiagnosticReader.h b/clang/include/clang/Frontend/SerializedDiagnosticReader.h
index 309e0abb14613..f7c2012a7662a 100644
--- a/clang/include/clang/Frontend/SerializedDiagnosticReader.h
+++ b/clang/include/clang/Frontend/SerializedDiagnosticReader.h
@@ -128,11 +128,8 @@ class SerializedDiagnosticReader {
} // namespace serialized_diags
} // namespace clang
-namespace std {
-
template <>
-struct is_error_code_enum<clang::serialized_diags::SDError> : std::true_type {};
-
-} // namespace std
+struct std::is_error_code_enum<clang::serialized_diags::SDError>
+ : std::true_type {};
#endif // LLVM_CLANG_FRONTEND_SERIALIZEDDIAGNOSTICREADER_H
diff --git a/clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
index 92347f8fafc00..40f7e9cede1f1 100644
--- a/clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
+++ b/clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
@@ -202,13 +202,12 @@ class BlockInCriticalSectionChecker : public Checker<check::PostCall> {
REGISTER_LIST_WITH_PROGRAMSTATE(ActiveCritSections, CritSectionMarker)
-namespace std {
// Iterator traits for ImmutableList data structure
// that enable the use of STL algorithms.
// TODO: Move these to llvm::ImmutableList when overhauling immutable data
// structures for proper iterator concept support.
template <>
-struct iterator_traits<
+struct std::iterator_traits<
typename llvm::ImmutableList<CritSectionMarker>::iterator> {
using iterator_category = std::forward_iterator_tag;
using value_type = CritSectionMarker;
@@ -216,7 +215,6 @@ struct iterator_traits<
using reference = CritSectionMarker &;
using pointer = CritSectionMarker *;
};
-} // namespace std
std::optional<MutexDescriptor>
BlockInCriticalSectionChecker::checkDescriptorMatch(const CallEvent &Call,
More information about the cfe-commits
mailing list