[libcxx-commits] [libcxx] [libc++][hardening] Finish documenting hardening. (PR #92021)
Louis Dionne via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Jun 4 11:50:03 PDT 2024
================
@@ -72,17 +75,340 @@ to control the level by passing **one** of the following options to the compiler
Notes for vendors
-----------------
-Vendors can set the default hardening mode by providing ``LIBCXX_HARDENING_MODE``
-as a configuration option, with the possible values of ``none``, ``fast``,
-``extensive`` and ``debug``. The default value is ``none`` which doesn't enable
-any hardening checks (this mode is sometimes called the ``unchecked`` mode).
+Vendors can set the default hardening mode by providing
+``LIBCXX_HARDENING_MODE`` as a configuration option, with the possible values of
+``none``, ``fast``, ``extensive`` and ``debug``. The default value is ``none``
+which doesn't enable any hardening checks (this mode is sometimes called the
+``unchecked`` mode).
This option controls both the hardening mode that the precompiled library is
built with and the default hardening mode that users will build with. If set to
``none``, the precompiled library will not contain any assertions, and user code
will default to building without assertions.
-Iterator bounds checking
-------------------------
+Vendors can also override the termination handler by :ref:`providing a custom
+header <override-assertion-handler>`.
----------------
ldionne wrote:
```suggestion
Vendors can also override the way the program is terminated when an assertion fails by :ref:`providing a custom
header <override-assertion-handler>`.
```
https://github.com/llvm/llvm-project/pull/92021
More information about the libcxx-commits
mailing list