@@ -210,12 +210,18 @@ Available checks are:
210210 (see ``-fsanitize=implicit-integer-conversion ``).
211211 - ``-fsanitize=vla-bound ``: A variable-length array whose bound
212212 does not evaluate to a positive value.
213+ - ``-fsanitize=vptr ``: Use of an object whose vptr indicates that it is of
214+ the wrong dynamic type, or that its lifetime has not begun or has ended.
215+ Incompatible with ``-fno-rtti ``. Link must be performed by ``clang++ ``, not
216+ ``clang ``, to make sure C++-specific parts of the runtime library and C++
217+ standard libraries are present. The check is not a part of the ``undefined ``
218+ group. Also it does not support ``-fsanitize-trap=vptr ``.
213219
214220You can also use the following check groups:
215221 - ``-fsanitize=undefined ``: All of the checks listed above other than
216222 ``float-divide-by-zero ``, ``unsigned-integer-overflow ``,
217- ``implicit-conversion ``, ``local-bounds `` and the `` nullability-* `` group
218- of checks.
223+ ``implicit-conversion ``, ``local-bounds ``, `` vptr `` and the
224+ `` nullability-* `` group of checks.
219225 - ``-fsanitize=undefined-trap ``: Deprecated alias of
220226 ``-fsanitize=undefined ``.
221227 - ``-fsanitize=implicit-integer-truncation ``: Catches lossy integral
@@ -244,11 +250,6 @@ You can also use the following check groups:
244250 ``nullability-assign ``, and ``nullability-return ``. While violating
245251 nullability does not have undefined behavior, it is often unintentional,
246252 so UBSan offers to catch it.
247- - ``-fsanitize=vptr ``: Use of an object whose vptr indicates that it is of
248- the wrong dynamic type, or that its lifetime has not begun or has ended.
249- Incompatible with ``-fno-rtti ``. Link must be performed by ``clang++ ``, not
250- ``clang ``, to make sure C++-specific parts of the runtime library and C++
251- standard libraries are present.
252253
253254Volatile
254255--------
0 commit comments