pb_ds debug mode patch

François Dumont francois.cppdevs@free.fr
Sat May 7 14:34:00 GMT 2011


Hi

Attached patch applied then:

2011-05-07  François Dumont <francois.cppdevs@free.fr>

     * include/debug/macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New.
     (_GLICXX_DEBUG_VERIFY): Use latter.
     * include/ext/pb_ds/detail/resize_policy/
     hash_load_check_resize_trigger_imp.hpp: Emit assertion on the line
     containing the original assert call.
     * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
     find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
     constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
     split_join_fn_imps.hpp: Likewise.
     * include/ext/pb_ds/detail/cc_hash_table_map_/
     erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
     find_fn_imps.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp,
     debug_no_store_hash_fn_imps.hpp, cc_ht_map_.hpp, resize_fn_imps.hpp,
     constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp,
     erase_no_store_hash_fn_imps.hpp: Likewise.
     * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp,
     insert_join_fn_imps.hpp, pat_trie_/head.hpp, debug_fn_imps.hpp,
     constructors_destructor_fn_imps.hpp, pat_trie_.hpp, split_fn_imps.hpp,
     leaf.hpp, erase_fn_imps.hpp, node_base.hpp, internal_node.hpp:
     Likewise.
     * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp,
     r_erase_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
     debug_fn_imps.hpp, rotate_fn_imps.hpp, erase_fn_imps.hpp,
     bin_search_tree_.hpp, insert_fn_imps.hpp, split_join_fn_imps.hpp:
     Likewise.
     * include/ext/pb_ds/detail/gp_hash_table_map_/
     erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
     find_fn_imps.hpp, gp_ht_map_.hpp, insert_store_hash_fn_imps.hpp,
     debug_fn_imps.hpp, erase_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp,
     resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp,
     debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp:
     Likewise.
     * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp,
     constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
     erase_fn_imps.hpp, insert_fn_imps.hpp, binary_heap_.hpp,
     resize_policy.hpp, split_join_fn_imps.hpp: Likewise.
     * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp,
     find_fn_imps.hpp, insert_fn_imps.hpp,
     constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
     pairing_heap_.hpp, split_join_fn_imps.hpp: Likewise.
     * include/ext/pb_ds/detail/binomial_heap_/
     constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
     binomial_heap_.hpp: Likewise.
     * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
     erase_fn_imps.hpp, left_child_next_sibling_heap_.hpp,
     constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
     * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp,
     find_fn_imps.hpp, thin_heap_.hpp, insert_fn_imps.hpp,
     constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
     split_join_fn_imps.hpp: Likewise.
     * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp,
     ov_tree_map_.hpp, constructors_destructor_fn_imps.hpp,
     debug_fn_imps.hpp, split_join_fn_imps.hpp, info_fn_imps.hpp: Likewise.
     * include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
     * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp,
     find_fn_imps.hpp, insert_fn_imps.hpp,
     constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
     splay_fn_imps.hpp, split_join_fn_imps.hpp, splay_tree_.hpp: Likewise.
     * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp,
     find_fn_imps.hpp, lu_map_.hpp, constructor_destructor_fn_imps.hpp,
     insert_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
     * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp,
     rc_binomial_heap_.hpp, insert_fn_imps.hpp,
     constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rc.hpp,
     split_join_fn_imps.hpp: Likewise.
     * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp,
     insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
     debug_fn_imps.hpp, rb_tree_.hpp, split_join_fn_imps.hpp: Likewise.
     * include/ext/pb_ds/hash_policy.hpp: Likewise.

I will do the macro refactoring on monday and submit a new patch then.

Regards

On 05/06/2011 11:38 PM, Benjamin Kosnik wrote:
> On Fri, 06 May 2011 21:29:53 +0200
> François Dumont<francois.cppdevs@free.fr>  wrote:
>> I wonder if it is really necessary to report with details all fixes
>> regarding debug mode ?
> Not really. Just filenames if possible, as per Jonathan. You've already
> got that, it's fine.
>
> Refactoring on this codebase can lead to massive CL entries so you have
> some latitude here. Don't go crazy trying to impress us with detail in
> the ChangeLog, just send the details in email to the list.
>
> ;)
>
>> I agree that I should avoid duplication of debug macro definitions so
>> I will submit a new patch on monday evening Paris time.
> Yes, but let's worry about this later. Can you check this patch in now
> please? I want to re-base on top of this.
>
> -benjamin
>

-------------- next part --------------
A non-text attachment was scrubbed...
Name: debug.patch
Type: text/x-patch
Size: 281398 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20110507/70289eba/attachment.bin>


More information about the Gcc-patches mailing list