|
|
@@ -110,16 +110,22 @@ public:
|
|
|
cm::optional<std::string> DeferId;
|
|
|
|
|
|
cmListFileContext() = default;
|
|
|
- cmListFileContext(cmListFileContext&& /*other*/) = default;
|
|
|
+ // This move constructor is marked `noexcept` yet `clang-tidy` 14 reports it
|
|
|
+ // as being able to throw an exception. Suppress the warning as there doesn't
|
|
|
+ // seem to be any way for this to happen given the member types.
|
|
|
+ // NOLINTNEXTLINE(bugprone-exception-escape)
|
|
|
+ cmListFileContext(cmListFileContext&& /*other*/) noexcept = default;
|
|
|
cmListFileContext(const cmListFileContext& /*other*/) = default;
|
|
|
cmListFileContext& operator=(const cmListFileContext& /*other*/) = default;
|
|
|
#if __cplusplus >= 201703L || (defined(_MSVC_LANG) && _MSVC_LANG >= 201703L)
|
|
|
- cmListFileContext& operator=(cmListFileContext&& /*other*/) = default;
|
|
|
+ cmListFileContext& operator=(cmListFileContext&& /*other*/) noexcept =
|
|
|
+ default;
|
|
|
#else
|
|
|
// The move assignment operators for several STL classes did not become
|
|
|
// noexcept until C++17, which causes some tools to warn about this move
|
|
|
// assignment operator throwing an exception when it shouldn't.
|
|
|
- cmListFileContext& operator=(cmListFileContext&& /*other*/) = delete;
|
|
|
+ cmListFileContext& operator=(cmListFileContext&& /*other*/) noexcept =
|
|
|
+ delete;
|
|
|
#endif
|
|
|
|
|
|
cmListFileContext(std::string name, std::string filePath, long line)
|