Inside Bitcoin
Opening the selected file…
Inside Bitcoin
Opening the selected file…
The code behind the network, with room to understand it.
Release published 2026-10-28 · Snapshot fetched 2026-11-01. Latest stable release at fetch time; development branches and Git history are excluded. Only the selected code window and visible folders load here.
1// Copyright (c) 2023 Bitcoin Developers2// Distributed under the MIT software license, see the accompanying3// file COPYING or http://www.opensource.org/licenses/mit-license.php.5#ifndef NONTRIVIAL_THREADLOCAL_CHECK_H6#define NONTRIVIAL_THREADLOCAL_CHECK_H8#include <clang-tidy/ClangTidyCheck.h>10namespace bitcoin {12// Warn about any thread_local variable with a non-trivial destructor.13class NonTrivialThreadLocal final : public clang::tidy::ClangTidyCheck14{15public:16NonTrivialThreadLocal(clang::StringRef Name, clang::tidy::ClangTidyContext* Context)17: clang::tidy::ClangTidyCheck(Name, Context) {}19bool isLanguageVersionSupported(const clang::LangOptions& LangOpts) const override20{21return LangOpts.CPlusPlus;22}23void registerMatchers(clang::ast_matchers::MatchFinder* Finder) override;24void check(const clang::ast_matchers::MatchFinder::MatchResult& Result) override;25};27} // namespace bitcoin29#endif // NONTRIVIAL_THREADLOCAL_CHECK_H
Independent explanations by MyBitcoinExplorer. Not affiliated with or endorsed by Bitcoin Core. Guides are educational and do not replace the source or its tests.
Bitcoin Core source © its contributors, distributed under the MIT license. Original notices and bundled third-party licenses are retained in the source tree.