cosmopolitan/libc/integral
Steven Dee (Jōshin) a795017416
Fix c.inc _Atomic define for C++ (#1231)
c.inc (AFAICT erroneously) defined _Atomic(t) as `volatile t *`, when it
should have just said `volatile t`, when __STDC_VERSION__ was too small.
This happens when we’re compiling C++, but in C++11, _Atomic is a define
supplied by the STL rather than a keyword supplied by the compiler. Wait
though, it gets better: in C++11, _Atomic hooks you into the morass that
is stdatomic.h, and ultimately refers everything back to std::atomic<T>.

The gory, horrifying details are in libcxx's __atomic/cxx_atomic_impl.h.
The tldr is that for our purposes it’s fine to just say volatile and use
the normal libc/intrin/atomic.h functions.
2024-06-17 21:12:02 -07:00
..
c.inc Fix c.inc _Atomic define for C++ (#1231) 2024-06-17 21:12:02 -07:00
cxx.inc Rename _bsr/_bsf to bsr/bsf 2024-03-04 17:33:26 -08:00
cxxtypescompat.inc Initial import 2020-06-15 07:18:57 -07:00
llp64.inc Get VSCode working with Linux and WSL (#116) 2021-03-09 10:12:39 -08:00
lp64.inc Import C++ Standard Template Library 2022-03-22 06:41:54 -07:00
lp64arg.inc Remove plenty of makefile misconfigurations 2022-07-21 09:20:59 -07:00
normalize.inc Release Cosmopolitan v3.4.0 2024-06-05 03:07:03 -07:00