.. _file_include_rcpputils_thread_safety_annotations.hpp: File thread_safety_annotations.hpp ================================== |exhale_lsh| :ref:`Parent directory ` (``include/rcpputils``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS Enable thread safety attributes only with clang+libcxx. .. contents:: Contents :local: :backlinks: none Definition (``include/rcpputils/thread_safety_annotations.hpp``) ---------------------------------------------------------------- .. toctree:: :maxdepth: 1 program_listing_file_include_rcpputils_thread_safety_annotations.hpp.rst Detailed Description -------------------- Technically they would work with clang without libcxx, on manually-annotated thread safety primitives, but this use case causes the error of annotating against non-annotated libstdc++ types. Users that wish to annotate their threading library will need to define these macros separately for that case. The attributes can be safely erased when compiling with other compilers. Macro descriptions were obtained from llvm's thread safety annotation documentation, see their documentation for more info Includes -------- - ``mutex`` Included By ----------- - :ref:`file_include_rcpputils_unique_lock.hpp` Functions --------- - :ref:`exhale_function_thread__safety__annotations_8hpp_1acb8423b350c61c14c2235ea9e848f030` Defines ------- - :ref:`exhale_define_thread__safety__annotations_8hpp_1aa0a25bb75a744e536d66cf906a30af25` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a31dda2981da18b0a7a9ca5fd0afac17c` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a3a3e989aa73a6dc066a15f62c5e760ee` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a45f2883d21cf6c0d975af75e0112d9a3` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a60d6451f6784a0d5b18742b538f99dc2` - :ref:`exhale_define_thread__safety__annotations_8hpp_1ae5cedbdffffdb57d2455127a52b45253` - :ref:`exhale_define_thread__safety__annotations_8hpp_1aa4aa32183cc6896bbc71651774bcd2a5` - :ref:`exhale_define_thread__safety__annotations_8hpp_1afcc50dab1b974d7bbabd8c7f3798939d` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a4faa77ccdbdcd1ca4e3658bf29f1c090` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a1781035ba74ae67444879f6b13d86a5f` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a0ea28303c24107c654cb837843e17ad2` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a224697f331870850b5abb89e6dc12c3b` - :ref:`exhale_define_thread__safety__annotations_8hpp_1ae3985b3037f0a07c62ccf72ef6774c90` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a91db41c95970d44fc954137464430024` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a6393d5fe6238808112436dbe3921791c` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a453020401802613109baa807c78a1ef2` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a592a7087a59c22885c852e8aecbc38af` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a56ef12e0331885fa330b89c8a4eee8ed` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a17357af7f9ef35c44dd029d6a7915bd7` - :ref:`exhale_define_thread__safety__annotations_8hpp_1a6bf2a15d59c91a35c07092a548445198`