File tree Expand file tree Collapse file tree 1 file changed +7
-3
lines changed Expand file tree Collapse file tree 1 file changed +7
-3
lines changed Original file line number Diff line number Diff line change @@ -100,9 +100,11 @@ easier to reason about the high-level semantics of a hardening mode.
100
100
- ``valid-element-access `` -- checks that any attempts to access a container
101
101
element, whether through the container object or through an iterator, are
102
102
valid and do not attempt to go out of bounds or otherwise access
103
- a non-existent element. For iterator checks to work, bounded iterators must be
104
- enabled in the ABI. Types like ``std::optional `` and ``std::function `` are
105
- considered one-element containers for the purposes of this check.
103
+ a non-existent element. This also includes operations that set up an imminent
104
+ invalid access (e.g. incrementing an end iterator). For iterator checks to
105
+ work, bounded iterators must be enabled in the ABI. Types like
106
+ ``std::optional `` and ``std::function `` are considered containers (with at
107
+ most one element) for the purposes of this check.
106
108
107
109
- ``valid-input-range `` -- checks that ranges (whether expressed as an iterator
108
110
pair, an iterator and a sentinel, an iterator and a count, or
@@ -264,6 +266,8 @@ these steps:
264
266
the root of the repository) via the CMake variable
265
267
``LIBCXX_ASSERTION_HANDLER_FILE ``.
266
268
269
+ There is no existing mechanism for users to override the termination handler.
270
+
267
271
ABI
268
272
===
269
273
You can’t perform that action at this time.
0 commit comments