mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-11-23 13:50:11 +00:00
34933d1872
Previously the header included several headers, possibly granularized threading headers. This could lead to build errors when these headers were incompatible with threading disabled. Now test the guard before inclusion. This matches the pattern used for no localization and no wide characters. Fixes: https://github.com/llvm/llvm-project/issues/76620
55 lines
1.4 KiB
C++
55 lines
1.4 KiB
C++
// -*- C++ -*-
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef _LIBCPP_STOP_TOKEN
|
|
#define _LIBCPP_STOP_TOKEN
|
|
|
|
/*
|
|
|
|
namespace std {
|
|
// [stoptoken], class stop_token
|
|
class stop_token;
|
|
|
|
// [stopsource], class stop_source
|
|
class stop_source;
|
|
|
|
// no-shared-stop-state indicator
|
|
struct nostopstate_t {
|
|
explicit nostopstate_t() = default;
|
|
};
|
|
inline constexpr nostopstate_t nostopstate{};
|
|
|
|
// [stopcallback], class template stop_callback
|
|
template<class Callback>
|
|
class stop_callback;
|
|
|
|
*/
|
|
|
|
#include <__config>
|
|
|
|
#ifdef _LIBCPP_HAS_NO_THREADS
|
|
# error "<stop_token> is not supported since libc++ has been configured without support for threads."
|
|
#endif
|
|
|
|
#include <__assert> // all public C++ headers provide the assertion handler
|
|
#include <__stop_token/stop_callback.h>
|
|
#include <__stop_token/stop_source.h>
|
|
#include <__stop_token/stop_token.h>
|
|
#include <version>
|
|
|
|
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
|
# pragma GCC system_header
|
|
#endif
|
|
|
|
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
|
|
# include <iosfwd>
|
|
#endif
|
|
|
|
#endif // _LIBCPP_STOP_TOKEN
|