]> granicus.if.org Git - gc/commit
Do not allow SHORT_DBG_HDRS if KEEP_BACK_PTRS or MAKE_BACK_GRAPH
authorIvan Maidanski <ivmai@mail.ru>
Tue, 2 Aug 2016 09:01:48 +0000 (12:01 +0300)
committerIvan Maidanski <ivmai@mail.ru>
Tue, 2 Aug 2016 22:05:50 +0000 (01:05 +0300)
commitc7b3f74e3df2d27d1405a6538487946fb90bcc2d
tree19f2ca7ca2108311c12acf63c9037891a4658dbb
parent3aec436e8d6ab5f64df36cbf0a5c328f2081fd5a
Do not allow SHORT_DBG_HDRS if KEEP_BACK_PTRS or MAKE_BACK_GRAPH

Otherwise GC_HAS_DEBUG_INFO (defined as (p&1)) might return true
if a non-pointer is stored at the beginning of the tested object
leading further to its corruption by GC_store_back_pointer.
See issue #125 for details.

* include/private/dbg_mlc.h [KEEP_BACK_PTRS || MAKE_BACK_GRAPH]
(GC_HAS_DEBUG_INFO): Add #error (with the appropriate message) in
case of SHORT_DBG_HDRS defined.
include/private/dbg_mlc.h