Go to file
Volodymyr Sapsai dea80d5174 Emit an error when mixing <stdatomic.h> and <atomic>
Atomics in C and C++ are incompatible at the moment and mixing the
headers can result in confusing error messages.

Emit an error explicitly telling about the incompatibility. Introduce
the macro `__ALLOW_STDC_ATOMICS_IN_CXX__` that allows to choose in C++
between C atomics and C++ atomics.

rdar://problem/27435938

Reviewers: rsmith, EricWF, mclow.lists

Reviewed By: mclow.lists

Subscribers: jkorous-apple, christof, bumblebritches57, JonChesterfield, smeenai, cfe-commits

Differential Revision: https://reviews.llvm.org/D45470

llvm-svn: 331379
2018-05-02 17:56:45 +00:00
clang Emit an error when mixing <stdatomic.h> and <atomic> 2018-05-02 17:50:43 +00:00
clang-tools-extra [clang-tidy][modernize-raw-string-literal] Don't replace upper ASCII with raw literals 2018-05-01 18:46:32 +00:00
compiler-rt [libFuzzer] Don't short-circuit from CrashCallback. 2018-05-02 02:55:28 +00:00
debuginfo-tests [Darwin] Specify DWARF 2/4 when running apple accelerator tests. 2018-02-26 20:56:45 +00:00
libclc clc_sqrt: Reuse unary_decl.inc 2018-05-02 16:06:52 +00:00
libcxx Emit an error when mixing <stdatomic.h> and <atomic> 2018-05-02 17:56:45 +00:00
libcxxabi Move _LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS macro to build system 2018-04-29 23:05:11 +00:00
libunwind [cmake] Remove duplicate command line options from build 2018-04-05 20:27:50 +00:00
lld Fix warning: result of 32-bit shift implicitly converted to 64 bits - NFC 2018-04-30 14:37:28 +00:00
lldb Silence compiler warning. 2018-05-02 17:11:43 +00:00
llgo irgen: Create functions instead of global variables for builtin hash and equal algorithms. 2017-06-04 22:11:28 +00:00
llvm Add assertion to padding size calculation, NFC 2018-05-02 17:20:22 +00:00
openmp [OpenMP][OMPT] Fix api_calls_from_other_thread.cpp 2018-04-30 18:46:31 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly Pass compiler arguments in the create_ll.sh script 2018-05-02 15:27:32 +00:00
README.md Add an svn project to contain the files that appear at the root of the 2017-10-19 21:09:49 +00:00

README.md

Low Level Virtual Machine (LLVM)

This directory and its subdirectories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and runtime environments.