From 574dfb67be756d323328839a1795b979f88da676 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Thu, 2 May 2019 16:44:46 +0100 Subject: [PATCH] Adjust Doxygen processing of pb_ds containers Several of the pb_ds headers are intended to be included multiple times, within the definition of various class templates. The including files define macros like PB_DS_CLASS_C_DEC and PB_DS_GEN_POS before including these headers. In some cases the types defined in the headers are actually nested types within other classes, and so should not have been documented as though they are declared in the global namespace, as in: https://gcc.gnu.org/onlinedocs/gcc-8.3.0/libstdc++/api/a12028.html In other cases the headers provide inline member function definitions, but when processed by Doxygen the class name "PB_DS_CLASS_C_DEC" is not recognised. This patch makes Doxygen ignore definitions that only make sense when included in the right context with the right macros defined. * include/ext/pb_ds/detail/bin_search_tree_/*_imps.hpp: Do not define anything unless PB_DS_CLASS_C_DEC is defined. * include/ext/pb_ds/detail/binary_heap_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/binomial_heap_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/binomial_heap_base_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/cc_hash_table_map_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/gp_hash_table_map_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/hash_fn/*_imp.hpp: Likewise. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/list_update_map_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/ov_tree_map_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/pairing_heap_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/pat_trie_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/rb_tree_map_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/rc_binomial_heap_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/resize_policy*_imp.hpp: Likewise. * include/ext/pb_ds/detail/splay_tree_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/thin_heap_/*_imps.hpp: Likewise. * include/ext/pb_ds/detail/trie_policy*_imp.hpp: Likewise. * include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: Likewise. * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Likewise. * include/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp: Likewise. * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Likewise. From-SVN: r270803 --- libstdc++-v3/ChangeLog | 28 +++++++++++++++++++ .../constructors_destructor_fn_imps.hpp | 4 ++- .../detail/bin_search_tree_/debug_fn_imps.hpp | 3 ++ .../detail/bin_search_tree_/erase_fn_imps.hpp | 3 ++ .../detail/bin_search_tree_/find_fn_imps.hpp | 3 ++ .../detail/bin_search_tree_/info_fn_imps.hpp | 3 ++ .../bin_search_tree_/insert_fn_imps.hpp | 3 ++ .../bin_search_tree_/iterators_fn_imps.hpp | 3 ++ .../policy_access_fn_imps.hpp | 3 ++ .../bin_search_tree_/r_erase_fn_imps.hpp | 3 ++ .../bin_search_tree_/rotate_fn_imps.hpp | 3 ++ .../bin_search_tree_/split_join_fn_imps.hpp | 3 ++ .../constructors_destructor_fn_imps.hpp | 3 ++ .../detail/binary_heap_/debug_fn_imps.hpp | 3 ++ .../detail/binary_heap_/erase_fn_imps.hpp | 3 ++ .../detail/binary_heap_/find_fn_imps.hpp | 3 ++ .../detail/binary_heap_/info_fn_imps.hpp | 3 ++ .../detail/binary_heap_/insert_fn_imps.hpp | 3 ++ .../detail/binary_heap_/iterators_fn_imps.hpp | 3 ++ .../binary_heap_/policy_access_fn_imps.hpp | 3 ++ .../binary_heap_/split_join_fn_imps.hpp | 3 ++ .../detail/binary_heap_/trace_fn_imps.hpp | 3 ++ .../constructors_destructor_fn_imps.hpp | 3 ++ .../detail/binomial_heap_/debug_fn_imps.hpp | 3 ++ .../constructors_destructor_fn_imps.hpp | 3 ++ .../binomial_heap_base_/debug_fn_imps.hpp | 3 ++ .../binomial_heap_base_/erase_fn_imps.hpp | 3 ++ .../binomial_heap_base_/find_fn_imps.hpp | 3 ++ .../binomial_heap_base_/insert_fn_imps.hpp | 3 ++ .../split_join_fn_imps.hpp | 3 ++ .../detail/cc_hash_table_map_/cmp_fn_imps.hpp | 3 ++ .../constructor_destructor_fn_imps.hpp | 3 ++ ...uctor_destructor_no_store_hash_fn_imps.hpp | 3 ++ ...structor_destructor_store_hash_fn_imps.hpp | 3 ++ .../cc_hash_table_map_/debug_fn_imps.hpp | 3 ++ .../debug_no_store_hash_fn_imps.hpp | 3 ++ .../debug_store_hash_fn_imps.hpp | 3 ++ .../cc_hash_table_map_/entry_list_fn_imps.hpp | 3 ++ .../cc_hash_table_map_/erase_fn_imps.hpp | 3 ++ .../erase_no_store_hash_fn_imps.hpp | 3 ++ .../erase_store_hash_fn_imps.hpp | 3 ++ .../cc_hash_table_map_/find_fn_imps.hpp | 3 ++ .../cc_hash_table_map_/info_fn_imps.hpp | 3 ++ .../insert_no_store_hash_fn_imps.hpp | 3 ++ .../insert_store_hash_fn_imps.hpp | 3 ++ .../cc_hash_table_map_/iterators_fn_imps.hpp | 3 ++ .../policy_access_fn_imps.hpp | 3 ++ .../cc_hash_table_map_/resize_fn_imps.hpp | 3 ++ .../resize_no_store_hash_fn_imps.hpp | 3 ++ .../resize_store_hash_fn_imps.hpp | 3 ++ .../cc_hash_table_map_/size_fn_imps.hpp | 3 ++ .../cc_hash_table_map_/trace_fn_imps.hpp | 3 ++ .../constructor_destructor_fn_imps.hpp | 3 ++ ...uctor_destructor_no_store_hash_fn_imps.hpp | 3 ++ ...structor_destructor_store_hash_fn_imps.hpp | 3 ++ .../gp_hash_table_map_/debug_fn_imps.hpp | 3 ++ .../debug_no_store_hash_fn_imps.hpp | 3 ++ .../debug_store_hash_fn_imps.hpp | 3 ++ .../gp_hash_table_map_/erase_fn_imps.hpp | 3 ++ .../erase_no_store_hash_fn_imps.hpp | 3 ++ .../erase_store_hash_fn_imps.hpp | 3 ++ .../gp_hash_table_map_/find_fn_imps.hpp | 3 ++ .../find_no_store_hash_fn_imps.hpp | 2 ++ .../gp_hash_table_map_/info_fn_imps.hpp | 3 ++ .../insert_no_store_hash_fn_imps.hpp | 3 ++ .../insert_store_hash_fn_imps.hpp | 3 ++ .../gp_hash_table_map_/iterator_fn_imps.hpp | 3 ++ .../policy_access_fn_imps.hpp | 3 ++ .../gp_hash_table_map_/resize_fn_imps.hpp | 3 ++ .../resize_no_store_hash_fn_imps.hpp | 3 ++ .../resize_store_hash_fn_imps.hpp | 3 ++ .../gp_hash_table_map_/trace_fn_imps.hpp | 3 ++ .../hash_fn/direct_mask_range_hashing_imp.hpp | 3 ++ .../hash_fn/direct_mod_range_hashing_imp.hpp | 3 ++ .../detail/hash_fn/linear_probe_fn_imp.hpp | 3 ++ .../detail/hash_fn/quadratic_probe_fn_imp.hpp | 3 ++ .../constructors_destructor_fn_imps.hpp | 3 ++ .../debug_fn_imps.hpp | 3 ++ .../erase_fn_imps.hpp | 3 ++ .../info_fn_imps.hpp | 3 ++ .../insert_fn_imps.hpp | 3 ++ .../iterators_fn_imps.hpp | 3 ++ .../policy_access_fn_imps.hpp | 3 ++ .../trace_fn_imps.hpp | 3 ++ .../constructor_destructor_fn_imps.hpp | 3 ++ .../detail/list_update_map_/debug_fn_imps.hpp | 3 ++ .../detail/list_update_map_/erase_fn_imps.hpp | 3 ++ .../detail/list_update_map_/find_fn_imps.hpp | 3 ++ .../detail/list_update_map_/info_fn_imps.hpp | 3 ++ .../list_update_map_/insert_fn_imps.hpp | 3 ++ .../list_update_map_/iterators_fn_imps.hpp | 3 ++ .../detail/list_update_map_/trace_fn_imps.hpp | 3 ++ .../constructors_destructor_fn_imps.hpp | 3 ++ .../detail/ov_tree_map_/debug_fn_imps.hpp | 3 ++ .../detail/ov_tree_map_/erase_fn_imps.hpp | 3 ++ .../detail/ov_tree_map_/info_fn_imps.hpp | 3 ++ .../detail/ov_tree_map_/insert_fn_imps.hpp | 3 ++ .../detail/ov_tree_map_/iterators_fn_imps.hpp | 3 ++ .../ov_tree_map_/policy_access_fn_imps.hpp | 3 ++ .../ov_tree_map_/split_join_fn_imps.hpp | 3 ++ .../constructors_destructor_fn_imps.hpp | 3 ++ .../detail/pairing_heap_/debug_fn_imps.hpp | 3 ++ .../detail/pairing_heap_/erase_fn_imps.hpp | 3 ++ .../detail/pairing_heap_/find_fn_imps.hpp | 3 ++ .../detail/pairing_heap_/insert_fn_imps.hpp | 3 ++ .../pairing_heap_/split_join_fn_imps.hpp | 3 ++ .../constructors_destructor_fn_imps.hpp | 3 ++ .../pb_ds/detail/pat_trie_/debug_fn_imps.hpp | 3 ++ .../pb_ds/detail/pat_trie_/erase_fn_imps.hpp | 3 ++ .../pb_ds/detail/pat_trie_/find_fn_imps.hpp | 3 ++ .../pb_ds/detail/pat_trie_/info_fn_imps.hpp | 3 ++ .../detail/pat_trie_/insert_join_fn_imps.hpp | 3 ++ .../detail/pat_trie_/iterators_fn_imps.hpp | 3 ++ .../pat_trie_/policy_access_fn_imps.hpp | 3 ++ .../detail/pat_trie_/r_erase_fn_imps.hpp | 3 ++ .../pb_ds/detail/pat_trie_/rotate_fn_imps.hpp | 3 ++ .../pb_ds/detail/pat_trie_/split_fn_imps.hpp | 3 ++ .../pb_ds/detail/pat_trie_/trace_fn_imps.hpp | 3 ++ .../pb_ds/detail/pat_trie_/update_fn_imps.hpp | 3 ++ .../constructors_destructor_fn_imps.hpp | 3 ++ .../detail/rb_tree_map_/debug_fn_imps.hpp | 3 ++ .../detail/rb_tree_map_/erase_fn_imps.hpp | 3 ++ .../detail/rb_tree_map_/info_fn_imps.hpp | 3 ++ .../detail/rb_tree_map_/insert_fn_imps.hpp | 3 ++ .../rb_tree_map_/split_join_fn_imps.hpp | 3 ++ .../constructors_destructor_fn_imps.hpp | 3 ++ .../rc_binomial_heap_/debug_fn_imps.hpp | 3 ++ .../rc_binomial_heap_/erase_fn_imps.hpp | 3 ++ .../rc_binomial_heap_/insert_fn_imps.hpp | 3 ++ .../rc_binomial_heap_/split_join_fn_imps.hpp | 3 ++ .../rc_binomial_heap_/trace_fn_imps.hpp | 3 ++ ...max_collision_check_resize_trigger_imp.hpp | 3 ++ .../hash_exponential_size_policy_imp.hpp | 3 ++ .../hash_load_check_resize_trigger_imp.hpp | 3 ++ .../hash_prime_size_policy_imp.hpp | 3 ++ .../hash_standard_resize_policy_imp.hpp | 3 ++ .../constructors_destructor_fn_imps.hpp | 3 ++ .../detail/splay_tree_/debug_fn_imps.hpp | 3 ++ .../detail/splay_tree_/erase_fn_imps.hpp | 3 ++ .../pb_ds/detail/splay_tree_/find_fn_imps.hpp | 3 ++ .../detail/splay_tree_/insert_fn_imps.hpp | 3 ++ .../detail/splay_tree_/splay_fn_imps.hpp | 3 ++ .../detail/splay_tree_/split_join_fn_imps.hpp | 3 ++ .../constructors_destructor_fn_imps.hpp | 3 ++ .../pb_ds/detail/thin_heap_/debug_fn_imps.hpp | 3 ++ .../pb_ds/detail/thin_heap_/erase_fn_imps.hpp | 3 ++ .../pb_ds/detail/thin_heap_/find_fn_imps.hpp | 3 ++ .../detail/thin_heap_/insert_fn_imps.hpp | 3 ++ .../detail/thin_heap_/split_join_fn_imps.hpp | 3 ++ .../pb_ds/detail/thin_heap_/trace_fn_imps.hpp | 3 ++ .../tree_policy/order_statistics_imp.hpp | 3 ++ .../trie_policy/order_statistics_imp.hpp | 3 ++ .../prefix_search_node_update_imp.hpp | 3 ++ .../trie_string_access_traits_imp.hpp | 3 ++ .../unordered_iterator/const_iterator.hpp | 5 ++++ .../detail/unordered_iterator/iterator.hpp | 7 ++++- .../point_const_iterator.hpp | 8 ++++-- .../unordered_iterator/point_iterator.hpp | 7 ++++- 158 files changed, 509 insertions(+), 5 deletions(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 126ed4ee9e3..e356075fd8c 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,33 @@ 2019-05-02 Jonathan Wakely + * include/ext/pb_ds/detail/bin_search_tree_/*_imps.hpp: Do not define + anything unless PB_DS_CLASS_C_DEC is defined. + * include/ext/pb_ds/detail/binary_heap_/*_imps.hpp: Likewise. + * include/ext/pb_ds/detail/binomial_heap_/*_imps.hpp: Likewise. + * include/ext/pb_ds/detail/binomial_heap_base_/*_imps.hpp: Likewise. + * include/ext/pb_ds/detail/cc_hash_table_map_/*_imps.hpp: Likewise. + * include/ext/pb_ds/detail/gp_hash_table_map_/*_imps.hpp: Likewise. + * include/ext/pb_ds/detail/hash_fn/*_imp.hpp: Likewise. + * include/ext/pb_ds/detail/left_child_next_sibling_heap_/*_imps.hpp: + Likewise. + * include/ext/pb_ds/detail/list_update_map_/*_imps.hpp: Likewise. + * include/ext/pb_ds/detail/ov_tree_map_/*_imps.hpp: Likewise. + * include/ext/pb_ds/detail/pairing_heap_/*_imps.hpp: Likewise. + * include/ext/pb_ds/detail/pat_trie_/*_imps.hpp: Likewise. + * include/ext/pb_ds/detail/rb_tree_map_/*_imps.hpp: Likewise. + * include/ext/pb_ds/detail/rc_binomial_heap_/*_imps.hpp: Likewise. + * include/ext/pb_ds/detail/resize_policy*_imp.hpp: Likewise. + * include/ext/pb_ds/detail/splay_tree_/*_imps.hpp: Likewise. + * include/ext/pb_ds/detail/thin_heap_/*_imps.hpp: Likewise. + * include/ext/pb_ds/detail/trie_policy*_imp.hpp: Likewise. + * include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: + Likewise. + * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Likewise. + * include/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp: + Likewise. + * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: + Likewise. + * doc/doxygen/user.cfg.in: Regenerate with Doxygen 1.8.14 and set GROUP_NESTED_COMPOUNDS=YES and SORT_BY_SCOPE_NAME=NO. Add various _GLIBCXX_xxx macros and __attribute__(X) to PREDEFINED macros that diff --git a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp index 7ad5a9e76ff..73c83e2b0a2 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for bin_search_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC typename PB_DS_CLASS_C_DEC::node_allocator PB_DS_CLASS_C_DEC::s_node_allocator; @@ -215,4 +217,4 @@ initialize_min_max() m_p_head->m_p_right = p_max; } } - +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp index ddc6c7678aa..d9b0cf8a97e 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for bin_search_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -275,3 +277,4 @@ assert_size(const char* __file, int __line) const { PB_DS_DEBUG_VERIFY(recursive_count(m_p_head->m_p_parent) == m_size); } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp index 727e526b121..4201634c905 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for bin_search_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -101,3 +103,4 @@ clear_imp(node_pointer p_nd) p_nd->~node(); s_node_allocator.deallocate(p_nd, 1); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp index 95a809acb0f..7d6c41cdcb3 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for bin_search_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::point_const_iterator PB_DS_CLASS_C_DEC:: @@ -169,3 +171,4 @@ find(key_const_reference r_key) const } return point_const_iterator(ret); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp index 4019f864307..cb751b28ec8 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for bin_search_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC _GLIBCXX_NODISCARD inline bool @@ -63,3 +65,4 @@ max_size() const return (s_node_allocator.max_size()); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp index 96f6a3e9421..9c33f218ed9 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for bin_search_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline std::pair PB_DS_CLASS_C_DEC:: @@ -178,3 +180,4 @@ get_new_node_for_leaf_insert(const_reference r_val, true_type) ++m_size; return p_new_nd; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp index 3f052e86898..6db474637ae 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for bin_search_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::iterator PB_DS_CLASS_C_DEC:: @@ -134,3 +136,4 @@ node_end() return (node_iterator(0)); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp index 846c8709abb..5bf6721bb89 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for bin_search_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC Cmp_Fn& PB_DS_CLASS_C_DEC:: @@ -50,3 +52,4 @@ PB_DS_CLASS_C_DEC:: get_cmp_fn() const { return (*this); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp index 2ad610671ab..561c94e785c 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for bin_search_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -101,3 +103,4 @@ clear_imp(node_pointer p_nd) p_nd->~Node(); s_node_allocator.deallocate(p_nd, 1); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp index acf620ca217..62ba39e5059 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains imps for rotating nodes. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -153,3 +155,4 @@ PB_DS_CLASS_C_DEC:: update_to_top(node_pointer /*p_nd*/, null_node_update_pointer /*p_update*/) { } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp index 67cbf80ddfe..6935b7465da 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for bin_search_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC bool PB_DS_CLASS_C_DEC:: @@ -148,3 +150,4 @@ recursive_count(node_pointer p) const return 1 + recursive_count(p->m_p_left) + recursive_count(p->m_p_right); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp index 1b0687338b2..edd1625dda4 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for binary_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC typename PB_DS_CLASS_C_DEC::entry_allocator PB_DS_CLASS_C_DEC::s_entry_allocator; @@ -137,3 +139,4 @@ PB_DS_CLASS_C_DEC:: erase_at(m_a_entries, i, s_no_throw_copies_ind); s_entry_allocator.deallocate(m_a_entries, m_actual_size); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp index e16677f7853..45609443be3 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a binary_heap. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -70,3 +72,4 @@ assert_valid(const char* __file, int __line) const } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp index 651a62d2cf1..260bc86470e 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a binary_heap. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -206,3 +208,4 @@ partition(Pred pred) return left; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp index b01cbda78a2..6da5cb4372d 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a binary_heap. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::const_reference PB_DS_CLASS_C_DEC:: @@ -77,3 +79,4 @@ inline typename PB_DS_CLASS_C_DEC::size_type PB_DS_CLASS_C_DEC:: parent(size_type i) { return (i - 1) / 2; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp index d81d5500659..641489b5ad0 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a binary_heap. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC _GLIBCXX_NODISCARD inline bool @@ -57,3 +59,4 @@ PB_DS_CLASS_C_DEC:: max_size() const { return s_entry_allocator.max_size(); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp index 36cdcd20391..9feaf33d86c 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a binary_heap. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::point_iterator PB_DS_CLASS_C_DEC:: @@ -171,3 +173,4 @@ swap_value_imp(entry_pointer p_e, const_reference r_new_val, false_type) value_type tmp(r_new_val); (*p_e)->swap(tmp); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp index a8a0804c517..394e4620dcd 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a binary_heap. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::iterator PB_DS_CLASS_C_DEC:: @@ -62,3 +64,4 @@ PB_DS_CLASS_C_DEC:: end() const { return const_iterator(m_a_entries + m_size); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp index 41804580d55..c41eb35f105 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a binary_heap. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC Cmp_Fn& PB_DS_CLASS_C_DEC:: @@ -54,3 +56,4 @@ get_cmp_fn() const return (*this); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp index 4a919eb7b28..ce15b71c1e7 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a binary_heap. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC template void @@ -158,3 +160,4 @@ join(PB_DS_CLASS_C_DEC& other) PB_DS_ASSERT_VALID((*this)) PB_DS_ASSERT_VALID(other) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp index c7b652a76f1..8992f037d14 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a binary_heap. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef PB_DS_BINARY_HEAP_TRACE_ PB_DS_CLASS_T_DEC @@ -76,3 +78,4 @@ trace_entry(const entry& r_e, true_type) const } #endif // #ifdef PB_DS_BINARY_HEAP_TRACE_ +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp index 5cfe3d2550b..5f33acde955 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for binomial_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC PB_DS_CLASS_C_DEC:: binomial_heap() @@ -58,3 +60,4 @@ binomial_heap(const PB_DS_CLASS_C_DEC& other) PB_DS_CLASS_T_DEC PB_DS_CLASS_C_DEC:: ~binomial_heap() { } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp index 9520f7453e0..4a8837b5f1f 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for binomial_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -47,3 +49,4 @@ assert_valid(const char* __file, int __line) const { base_type::assert_valid(true, __file, __line); } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp index 24db3d6359b..a6f5b225a41 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a base of binomial heaps. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC template void @@ -83,3 +85,4 @@ PB_DS_CLASS_T_DEC PB_DS_CLASS_C_DEC:: ~binomial_heap_base() { } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp index 54f8585ab61..4a55a9ad1dd 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a base of binomial heaps. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -98,3 +100,4 @@ assert_node_consistent(node_const_pointer p_nd, bool strictly_binomial, } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp index c72321680b1..058dddbdb73 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a base of binomial heaps. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -159,3 +161,4 @@ erase_if(Pred pred) PB_DS_ASSERT_VALID_COND((*this),true) return ersd; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp index 6a3fa906700..b3d90d4915d 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a base of binomial heaps. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::const_reference PB_DS_CLASS_C_DEC:: @@ -68,3 +70,4 @@ find_max() } } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp index a5cf6e753e0..a5918c70b07 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a base of binomial heaps. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::point_iterator PB_DS_CLASS_C_DEC:: @@ -176,3 +178,4 @@ modify(point_iterator it, const_reference r_new_val) m_p_max = 0; PB_DS_ASSERT_VALID_COND((*this),true) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp index caf3715ed49..9da0fc210f6 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a base of binomial heaps. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC template void @@ -195,3 +197,4 @@ join(node_pointer p_lhs, node_pointer p_rhs) const return p_ret; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp index d11ff0055f9..a534ab3fd09 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp @@ -39,6 +39,8 @@ * functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC template bool @@ -81,3 +83,4 @@ bool PB_DS_CLASS_C_DEC:: operator!=(const Other_HT_Map_Type& other) const { return !operator==(other); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp index d6db450db5d..a3773867379 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp @@ -39,6 +39,8 @@ * and related functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC typename PB_DS_CLASS_C_DEC::entry_allocator PB_DS_CLASS_C_DEC::s_entry_allocator; @@ -189,3 +191,4 @@ initialize() Resize_Policy::notify_cleared(); ranged_hash_fn_base::notify_resized(m_num_e); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp index 89eb1d69437..a93f03c895f 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * and related functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -53,3 +55,4 @@ constructor_insert_new_imp(mapped_const_reference r_val, size_type pos, m_entries[pos] = p; _GLIBCXX_DEBUG_ONLY(debug_base::insert_new(r_key);) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp index 6709b0689c3..512edb92057 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * and related functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -54,3 +56,4 @@ constructor_insert_new_imp(const_reference r_val, size_type pos, true_type) m_entries[pos] = p; _GLIBCXX_DEBUG_ONLY(debug_base::insert_new(r_key);) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp index 65b3b0aa2dd..2423d63cc05 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of cc_ht_map_'s debug-mode functions. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -74,3 +76,4 @@ assert_entry_pointer_array_valid(const entry_pointer_array a_p_entries, #include #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp index 9385036b022..0fe5fa53687 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of cc_ht_map_'s debug-mode functions. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -48,3 +50,4 @@ assert_entry_pointer_valid(const entry_pointer p, false_type, { debug_base::check_key_exists(PB_DS_V2F(p->m_value), __file, __line); } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp index 2d6e0863832..8831ab5e244 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of cc_ht_map_'s debug-mode functions. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -52,3 +54,4 @@ assert_entry_pointer_valid(const entry_pointer p_e, true_type, } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp index 75a19125560..feea011c55a 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of cc_ht_map_'s entry-list related functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -89,3 +91,4 @@ rels_entry(entry_pointer p_e) s_entry_allocator.deallocate(p_e, 1); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp index 3d39c47a8ab..cef305e4c55 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of cc_ht_map_'s erase related functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -101,3 +103,4 @@ clear() #include #include +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp index e4f2300a82c..a2f776311d4 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * when the hash value is not stored. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline bool PB_DS_CLASS_C_DEC:: @@ -98,3 +100,4 @@ erase_in_pos_imp(key_const_reference r_key, size_type pos) p_e = p_next_e; } } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp index 90533aa54eb..480ce61e1a3 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * when the hash value is stored. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline bool PB_DS_CLASS_C_DEC:: @@ -92,3 +94,4 @@ erase_in_pos_imp(key_const_reference r_key, const comp_hash& r_pos_hash_pair) p_e = p_next_e; } } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp index 1f6c46b577b..f3f9b5bc1d7 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of cc_ht_map_'s find related functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::point_iterator PB_DS_CLASS_C_DEC:: @@ -69,3 +71,4 @@ PB_DS_CLASS_C_DEC:: find_end() const { return 0; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp index 9d38890f7f6..49fd16cffdb 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp @@ -39,6 +39,8 @@ * functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::size_type PB_DS_CLASS_C_DEC:: @@ -99,3 +101,4 @@ bool PB_DS_CLASS_C_DEC:: operator!=(const Other_HT_Map_Type& other) const { return !operator==(other); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp index 7fc51b67b80..b4729f7fdb4 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * when the hash value is not stored. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline std::pair PB_DS_CLASS_C_DEC:: @@ -68,3 +70,4 @@ insert_imp(const_reference r_val, false_type) return std::make_pair(insert_new_imp(r_val, pos), true); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp index cbf05c88e4d..165ef419f4c 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * when the hash value is stored. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline std::pair PB_DS_CLASS_C_DEC:: @@ -69,3 +71,4 @@ insert_imp(const_reference r_val, true_type) return std::make_pair(insert_new_imp(r_val, pos_hash_pair), true); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp index 5cfbc0cc65e..492d376eb6b 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp @@ -39,6 +39,8 @@ * begin(). */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC typename PB_DS_CLASS_C_DEC::iterator PB_DS_CLASS_C_DEC::s_end_it; @@ -81,3 +83,4 @@ PB_DS_CLASS_C_DEC:: end() const { return s_const_end_it; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp index 979f3e05d37..cc83dd3c0e5 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp @@ -39,6 +39,8 @@ * functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC Hash_Fn& PB_DS_CLASS_C_DEC:: @@ -86,3 +88,4 @@ const Resize_Policy& PB_DS_CLASS_C_DEC:: get_resize_policy() const { return *this; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp index 86c727f3ec2..5f4b532559b 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of cc_ht_map_'s resize related functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline bool PB_DS_CLASS_C_DEC:: @@ -132,3 +134,4 @@ resize_imp_no_exceptions(size_type new_size, entry_pointer_array a_p_entries_res #include #include +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp index f0722701ab7..3ca56b4f93d 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * hash value is not stored. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::entry_pointer PB_DS_CLASS_C_DEC:: @@ -52,3 +54,4 @@ resize_imp_no_exceptions_reassign_pointer(entry_pointer p_e, entry_pointer_array a_p_entries_resized[hash_pos] = p_e; return p_next_e; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp index 9fd546d8693..a98e2e73f14 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * hash value is stored. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::entry_pointer PB_DS_CLASS_C_DEC:: @@ -52,3 +54,4 @@ resize_imp_no_exceptions_reassign_pointer(entry_pointer p_e, entry_pointer_array a_p_entries_resized[pos_hash_pair.first] = p_e; return p_next_e; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp index bcc1fc47b12..2aa146fce83 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp @@ -39,6 +39,8 @@ * functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::size_type PB_DS_CLASS_C_DEC:: @@ -58,3 +60,4 @@ PB_DS_CLASS_C_DEC:: max_size() const { return s_entry_allocator.max_size(); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp index f2fa3269104..88a674c34ac 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of cc_ht_map_'s trace-mode functions. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef PB_DS_HT_MAP_TRACE_ PB_DS_CLASS_T_DEC @@ -70,3 +72,4 @@ trace_list(const_entry_pointer p_l) const } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp index f9b401b4808..aa480fe4f42 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp @@ -39,6 +39,8 @@ * and related functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC typename PB_DS_CLASS_C_DEC::entry_allocator PB_DS_CLASS_C_DEC::s_entry_allocator; @@ -221,3 +223,4 @@ initialize() m_entries[i].m_stat = empty_entry_status; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp index 41d7c081315..e07984e040a 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * and related functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -51,3 +53,4 @@ constructor_insert_new_imp(mapped_const_reference r_val, size_type pos, p_e->m_stat = valid_entry_status; _GLIBCXX_DEBUG_ONLY(debug_base::insert_new(p_e->m_value.first);) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp index d87fdc72e72..5390c6b013b 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * and related functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -52,3 +54,4 @@ constructor_insert_new_imp(mapped_const_reference r_val, size_type pos, p_e->m_stat = valid_entry_status; _GLIBCXX_DEBUG_ONLY(debug_base::insert_new(p_e->m_value.first);) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp index ead21e387a0..8b5574a255c 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of gp_ht_map_'s debug-mode functions. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -54,3 +56,4 @@ assert_valid(const char* __file, int __line) const #include #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp index 5b17ac8ac99..8de0910cd13 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of gp_ht_map_'s debug-mode functions. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -70,3 +72,4 @@ assert_entry_array_valid(const entry_array a_entries, false_type, } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp index ce45b387081..62769e7ff08 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of gp_ht_map_'s debug-mode functions. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -76,3 +78,4 @@ assert_entry_array_valid(const entry_array a_entries, true_type, } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp index af83629b5f0..b42c87b4628 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of gp_ht_map_'s erase related functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -98,3 +100,4 @@ erase(key_const_reference r_key) #include #include +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp index 9e6b69b10b5..7d0690165a0 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * when the hash value is not stored. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline bool PB_DS_CLASS_C_DEC:: @@ -82,3 +84,4 @@ erase_imp(key_const_reference r_key, false_type) return false; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp index 547a33f1104..1faa648c606 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * when the hash value is stored. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline bool PB_DS_CLASS_C_DEC:: @@ -83,3 +85,4 @@ erase_imp(key_const_reference r_key, true_type) return false; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp index c2ee829d3c4..44feed70d47 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of gp_ht_map_'s find related functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::point_iterator PB_DS_CLASS_C_DEC:: @@ -68,3 +70,4 @@ PB_DS_CLASS_C_DEC:: find_end() const { return 0; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp index 21df6c76a29..91e96ecbc81 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * when the hash value is not stored. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::pointer PB_DS_CLASS_C_DEC:: diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp index 464216e45dd..75a59ac0595 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp @@ -39,6 +39,8 @@ * functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::size_type PB_DS_CLASS_C_DEC:: @@ -57,3 +59,4 @@ inline bool PB_DS_CLASS_C_DEC:: empty() const { return (size() == 0); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp index 72445cc6cca..e868c16f0d0 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * when the hash value is not stored. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::size_type PB_DS_CLASS_C_DEC:: @@ -109,3 +111,4 @@ insert_imp(const_reference r_val, false_type) return std::make_pair(insert_new_imp(r_val, pos), true); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp index 06eed096130..09b2c264afa 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * when the hash value is stored. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::comp_hash PB_DS_CLASS_C_DEC:: @@ -116,3 +118,4 @@ insert_imp(const_reference r_val, true_type) return std::make_pair(insert_new_imp(r_val, pos_hash_pair), true); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp index c9e51df5cfc..4277fb0c24a 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp @@ -39,6 +39,8 @@ * begin(). */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC typename PB_DS_CLASS_C_DEC::iterator PB_DS_CLASS_C_DEC::s_end_it; @@ -81,3 +83,4 @@ PB_DS_CLASS_C_DEC:: end() const { return s_const_end_it; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp index 92cb8eedd23..48f1f7958d0 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp @@ -39,6 +39,8 @@ * functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC Hash_Fn& PB_DS_CLASS_C_DEC:: @@ -98,3 +100,4 @@ const Resize_Policy& PB_DS_CLASS_C_DEC:: get_resize_policy() const { return *this; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp index f8eec454782..ff3f3512bad 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of gp_ht_map_'s resize related functions. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline bool PB_DS_CLASS_C_DEC:: @@ -137,3 +139,4 @@ resize_imp(entry_array a_entries_resized, size_type old_size) #include #include +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp index 6f72d2934cc..48d19c4e357 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * hash value is not stored. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -70,3 +72,4 @@ resize_imp_reassign(entry_pointer p_e, entry_array a_entries_resized, __throw_insert_error(); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp index bfd247d0025..cfaf5c4a61b 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp @@ -39,6 +39,8 @@ * hash value is stored. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -72,3 +74,4 @@ resize_imp_reassign(entry_pointer p_e, entry_array a_entries_resized, __throw_insert_error(); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp index c66da8345da..fd6971b158b 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of gp_ht_map_'s trace-mode functions. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef PB_DS_HT_MAP_TRACE_ PB_DS_CLASS_T_DEC @@ -72,3 +74,4 @@ trace() const } #endif // #ifdef PB_DS_HT_MAP_TRACE_ +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp b/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp index bc89ebf279a..09b325cc806 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp @@ -38,6 +38,8 @@ * Contains a range-hashing policy implementation */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -56,3 +58,4 @@ PB_DS_CLASS_C_DEC:: operator()(size_type hash) const { return mask_based_base::range_hash(hash); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp b/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp index da4c0a7f32b..bfa6723385a 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp @@ -38,6 +38,8 @@ * Contains a range-hashing policy implementation */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -56,3 +58,4 @@ PB_DS_CLASS_C_DEC:: operator()(size_type hash) const { return mod_based_base::range_hash(hash); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp b/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp index 0ca1a0e5001..6317c3090ec 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp @@ -38,6 +38,8 @@ * Contains a probe policy implementation */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -51,3 +53,4 @@ operator()(size_type i) const { return (i); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp b/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp index 7c29ede53d8..f8a4745a285 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp @@ -38,6 +38,8 @@ * Contains a probe policy implementation */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -51,3 +53,4 @@ operator()(size_type i) const { return (i* i); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp index 305fd20b03b..c303fd1c999 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for left_child_next_sibling_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC typename PB_DS_CLASS_C_DEC::node_allocator PB_DS_CLASS_C_DEC::s_node_allocator; @@ -150,3 +152,4 @@ recursive_copy_node(node_const_pointer p_nd) return p_ret; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp index 10d618c2171..2f7f5609153 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for left_child_next_sibling_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -135,3 +137,4 @@ degree(node_const_pointer p_nd) } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp index 414f0d686bb..ff4b53421ae 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for left_child_next_sibling_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -148,3 +150,4 @@ bubble_to_top(node_pointer p_nd) } } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp index d12710a1218..605eeb9a26d 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for left_child_next_sibling_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC _GLIBCXX_NODISCARD inline bool @@ -63,3 +65,4 @@ max_size() const return (s_node_allocator.max_size()); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp index e05cbb9e2fb..6bc252f02e4 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for left_child_next_sibling_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::node_pointer PB_DS_CLASS_C_DEC:: @@ -173,3 +175,4 @@ swap_with_parent(node_pointer p_nd, node_pointer p_parent) _GLIBCXX_DEBUG_ASSERT(parent(p_parent) == p_nd); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp index c78113ba2f4..465ca4299bc 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for left_child_next_sibling_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::iterator PB_DS_CLASS_C_DEC:: @@ -86,3 +88,4 @@ end() const return (const_iterator(0)); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp index 4c44ed6616f..6632e15474d 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for left_child_next_sibling_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC Cmp_Fn& PB_DS_CLASS_C_DEC:: @@ -50,3 +52,4 @@ PB_DS_CLASS_C_DEC:: get_cmp_fn() const { return *this; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp index 36c0ab6d53b..9310a7b098e 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for left_child_next_sibling_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef PB_DS_LC_NS_HEAP_TRACE_ PB_DS_CLASS_T_DEC @@ -88,3 +90,4 @@ trace_node_metadata(node_const_pointer, type_to_type) { } #endif // #ifdef PB_DS_LC_NS_HEAP_TRACE_ +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp index e29b5eccc02..e816204380f 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp @@ -37,6 +37,8 @@ * @file list_update_map_/constructor_destructor_fn_imps.hpp */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC typename PB_DS_CLASS_C_DEC::entry_allocator PB_DS_CLASS_C_DEC::s_entry_allocator; @@ -134,3 +136,4 @@ PB_DS_CLASS_T_DEC PB_DS_CLASS_C_DEC:: ~PB_DS_LU_NAME() { deallocate_all(); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp index 474fc11de18..451b1c5aadb 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of cc_ht_map_'s debug-mode functions. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -55,3 +57,4 @@ assert_valid(const char* __file, int __line) const } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp index 96d584118f5..6e7c576c505 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of lu_map_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline bool PB_DS_CLASS_C_DEC:: @@ -132,3 +134,4 @@ actual_erase_entry(entry_pointer p_l) s_entry_allocator.deallocate(p_l, 1); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp index 5e602dd7646..c56d1676f62 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of lu_map_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::entry_pointer PB_DS_CLASS_C_DEC:: @@ -88,3 +90,4 @@ PB_DS_CLASS_C_DEC:: apply_update(entry_pointer, type_to_type) { return s_update_policy(s_null_type); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp index 5d2e81ff4a7..e95c8a588c3 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of lu_map_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::size_type PB_DS_CLASS_C_DEC:: @@ -56,3 +58,4 @@ inline bool PB_DS_CLASS_C_DEC:: empty() const { return (m_p_l == 0); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp index fe71f06b79f..dfc9900c1e0 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of lu_map_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline std::pair< typename PB_DS_CLASS_C_DEC::point_iterator, @@ -104,3 +106,4 @@ PB_DS_CLASS_C_DEC:: init_entry_metadata(entry_pointer, type_to_type) { } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp index 79733ef204e..0efe2625ddd 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of lu_map_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::iterator PB_DS_CLASS_C_DEC:: @@ -78,3 +80,4 @@ end() const return const_iterator(0, 0, const_cast(this)); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp index 7ec66b78176..f321633cd47 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains implementations of lu_map_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef PB_DS_LU_MAP_TRACE_ PB_DS_CLASS_T_DEC @@ -57,3 +59,4 @@ trace() const #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp index 021abc2f8ab..e081392a8cd 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for ov_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC typename PB_DS_CLASS_C_DEC::value_allocator PB_DS_CLASS_C_DEC::s_value_alloc; @@ -255,3 +257,4 @@ update(node_iterator nd_it, Node_Update* p_update) node_update::operator()(nd_it, end_it); } } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp index cfb6fd54e6e..2117ceb87ff 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for ov_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -77,3 +79,4 @@ assert_iterators(const char* __file, int __line) const } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp index c74c1b8b1c5..060eb3cf0c1 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for ov_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -189,3 +191,4 @@ erase(key_const_reference r_key) erase(it); return true; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp index 81e7305e315..99a1dcadc8a 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for ov_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::size_type PB_DS_CLASS_C_DEC:: @@ -59,3 +61,4 @@ inline bool PB_DS_CLASS_C_DEC:: empty() const { return size() == 0; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp index 79a429a0bb3..d34b2e4794b 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for ov_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -61,3 +63,4 @@ reallocate_metadata(Node_Update_* , size_type new_size) std::swap(m_a_metadata, a_new_metadata_vec); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp index b071a75812b..c61d40e0dbe 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for ov_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::node_const_iterator PB_DS_CLASS_C_DEC:: @@ -101,3 +103,4 @@ PB_DS_node_end_imp() end(),(m_a_metadata == 0) ? 0 : m_a_metadata + m_size); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp index 991f1c5654b..beaaff60ddc 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for ov_tree. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC Cmp_Fn& PB_DS_CLASS_C_DEC:: @@ -49,3 +51,4 @@ const Cmp_Fn& PB_DS_CLASS_C_DEC:: get_cmp_fn() const { return *this; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp index 0f5b04c75e7..525ae9c8b26 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for ov_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -130,3 +132,4 @@ join(PB_DS_CLASS_C_DEC& other) PB_DS_ASSERT_VALID((*this)) PB_DS_ASSERT_VALID(other) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp index 1848255879b..f28ce89e955 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a pairing heap. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC template void @@ -80,3 +82,4 @@ PB_DS_CLASS_T_DEC PB_DS_CLASS_C_DEC:: ~pairing_heap() { } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp index 93f63fcbc9a..2a2358dfae9 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a pairing heap. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -51,3 +53,4 @@ assert_valid(const char* __file, int __line) const } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp index 64923faa41b..954715c1c61 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a pairing heap. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -231,3 +233,4 @@ erase_if(Pred pred) return ersd; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp index 2bc072918d9..e18f5d6511f 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a pairing heap. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::const_reference PB_DS_CLASS_C_DEC:: @@ -47,3 +49,4 @@ top() const _GLIBCXX_DEBUG_ASSERT(!base_type::empty()); return base_type::m_p_root->m_value; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp index 6c7baeaab13..e0299a4be41 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a pairing heap. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::point_iterator PB_DS_CLASS_C_DEC:: @@ -86,3 +88,4 @@ modify(point_iterator it, const_reference r_new_val) push_imp(it.m_p_nd); PB_DS_ASSERT_VALID((*this)) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp index e03a8ba3694..f243eeffc15 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for a pairing heap. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC template void @@ -121,3 +123,4 @@ join(PB_DS_CLASS_C_DEC& other) PB_DS_ASSERT_VALID((*this)) PB_DS_ASSERT_VALID(other) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp index 93ffcf10d5c..360034d3c7e 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for pat_trie. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC typename PB_DS_CLASS_C_DEC::head_allocator PB_DS_CLASS_C_DEC::s_head_allocator; @@ -212,3 +214,4 @@ recursive_copy_node(node_const_pointer p_ncp) apply_update(p_ret, (node_update*)this); return p_ret; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp index c72024aed45..4f6dd612cba 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for pat_trie_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -113,3 +115,4 @@ recursive_count_leafs(node_const_pointer p_nd, const char* __file, int __line) } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp index e8362204375..25c97a775f2 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for pat_trie. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline bool PB_DS_CLASS_C_DEC:: @@ -313,3 +315,4 @@ update_min_max_for_erased_leaf(leaf_pointer p_l) m_p_head->m_p_max = it.m_p_nd; } } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp index 33121737798..6005d4eaba6 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for pat_trie. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::point_iterator PB_DS_CLASS_C_DEC:: @@ -267,3 +269,4 @@ rightmost_descendant(node_pointer p_nd) return static_cast(p_nd)->rightmost_descendant(); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp index 33fc3e14ccf..7012055f2b0 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for pat_trie. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC _GLIBCXX_NODISCARD inline bool @@ -57,3 +59,4 @@ PB_DS_CLASS_C_DEC:: max_size() const { return s_inode_allocator.max_size(); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp index f661e9754de..442d32e547f 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for pat_trie. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -470,3 +472,4 @@ update_min_max_for_inserted_leaf(leaf_pointer p_new_lf) synth_access_traits::cmp_keys(PB_DS_V2F(static_cast(m_p_head->m_p_max)->value()), PB_DS_V2F(p_new_lf->value()))) m_p_head->m_p_max = p_new_lf; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp index b027f781e17..3fb9d850491 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for pat_trie. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::iterator PB_DS_CLASS_C_DEC:: @@ -118,3 +120,4 @@ PB_DS_CLASS_C_DEC:: node_end() { return node_iterator(0, this); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp index 3b656d75255..7f7fe01dba5 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for pat_trie. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC typename PB_DS_CLASS_C_DEC::access_traits& PB_DS_CLASS_C_DEC:: @@ -61,3 +63,4 @@ const typename PB_DS_CLASS_C_DEC::node_update& PB_DS_CLASS_C_DEC:: get_node_update() const { return *this; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp index 3726cb69f97..6a24e5acaf6 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for pat_trie. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -101,3 +103,4 @@ clear_imp(node_pointer p_nd) s_node_allocator.deallocate(p_nd, 1); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp index 8f2f1daee8a..af8c8960856 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains imps for rotating nodes. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -148,3 +150,4 @@ PB_DS_CLASS_C_DEC:: update_to_top(node_pointer /*p_nd*/, __gnu_pbds::null_node_update* /*p_update*/) { } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp index e2065aef3eb..52a9d88f3b4 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for pat_trie. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -248,3 +250,4 @@ split_insert_branch(size_type e_ind, a_const_iterator b_it, apply_update(m_p_head->m_p_parent, (node_update*)this); PB_DS_ASSERT_NODE_VALID(m_p_head->m_p_parent) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp index 70406f2450e..28df7ef09b3 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for pat_trie_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef PB_DS_PAT_TRIE_TRACE_ PB_DS_CLASS_T_DEC @@ -109,3 +111,4 @@ trace_node_metadata(node_const_pointer, type_to_type) #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp index e7b4a69b458..db3d3addf17 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for pat_trie_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -53,3 +55,4 @@ apply_update(node_pointer p_nd, Node_Update_*) Node_Update_::operator()(node_iterator(p_nd, this), node_const_iterator(0, this)); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp index 4d173cfff2e..f0c2cf1b4fe 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for rb_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC template void @@ -98,3 +100,4 @@ void PB_DS_CLASS_C_DEC:: initialize() { base_type::m_p_head->m_red = true; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp index fcdad469d9a..5106452c5b3 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for rb_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -79,3 +81,4 @@ assert_valid(const char* __file, int __line) const #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp index 0d92fede8d0..35aa2ba0322 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for rb_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline bool PB_DS_CLASS_C_DEC:: @@ -287,3 +289,4 @@ remove_fixup(node_pointer p_x, node_pointer p_new_x_parent) if (p_x != 0) p_x->m_red = false; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp index 045834891e3..11c1b29b2fc 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp @@ -38,9 +38,12 @@ * Contains an implementation for rb_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline bool PB_DS_CLASS_C_DEC:: is_effectively_black(const node_pointer p_nd) { return (p_nd == 0 || !p_nd->m_red); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp index 6cc88fa6d37..11efd022070 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for rb_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline std::pair PB_DS_CLASS_C_DEC:: @@ -113,3 +115,4 @@ insert_fixup(node_pointer p_nd) base_type::update_to_top(p_nd, (node_update* )this); base_type::m_p_head->m_p_parent->m_red = false; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp index 85ebdfb886c..adddc4f1858 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for rb_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -304,3 +306,4 @@ split_at_node(node_pointer p_nd, PB_DS_CLASS_C_DEC& other) PB_DS_STRUCT_ONLY_ASSERT_VALID(other) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp index 0c6a9608fa5..0864dcef099 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for rc_binomial_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC PB_DS_CLASS_C_DEC:: rc_binomial_heap() @@ -82,3 +84,4 @@ swap(PB_DS_CLASS_C_DEC& other) PB_DS_ASSERT_VALID((*this)) PB_DS_ASSERT_VALID(other) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp index bec9ca3d42f..d258ee459b7 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for rc_binomial_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -119,3 +121,4 @@ next_after_0_pointer(node_const_pointer p_nd) } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp index b6d50748ed4..03d6b0f5efa 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for rc_binomial_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -105,3 +107,4 @@ erase(point_iterator it) base_type::find_max(); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp index b8f59d0184a..7d4da53a313 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for rc_binomial_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::point_iterator PB_DS_CLASS_C_DEC:: @@ -152,3 +154,4 @@ make_0_exposed() if (p_res->m_p_next_sibling != 0&& p_res->m_metadata == p_res->m_p_next_sibling->m_metadata) m_rc.push(p_res); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp index 12363fe79a5..074b041f194 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for rc_binomial_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC template void @@ -75,3 +77,4 @@ join(PB_DS_CLASS_C_DEC& other) PB_DS_ASSERT_VALID(other) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp index 0b771a7f42d..0a429b0fff8 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for rc_binomial_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef PB_DS_RC_BINOMIAL_HEAP_TRACE_ PB_DS_CLASS_T_DEC @@ -50,3 +52,4 @@ trace() const } #endif // #ifdef PB_DS_RC_BINOMIAL_HEAP_TRACE_ +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp b/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp index fa246c060f9..06e4eb62a33 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp @@ -38,6 +38,8 @@ * Contains a resize trigger implementation. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC PB_DS_CLASS_C_DEC:: cc_hash_max_collision_check_resize_trigger(float load) : @@ -209,3 +211,4 @@ set_load(float load) calc_resize_needed(); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp b/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp index c51e3286008..8d02c85def8 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp @@ -38,6 +38,8 @@ * Contains a resize size policy implementation. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC PB_DS_CLASS_C_DEC:: hash_exponential_size_policy(size_type start_size, size_type grow_factor) : @@ -88,3 +90,4 @@ get_nearest_smaller_size(size_type size) const return ret; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp b/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp index 19dfa8f34a8..edfb35b2412 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp @@ -38,6 +38,8 @@ * Contains a resize trigger implementation. */ +#ifdef PB_DS_CLASS_C_DEC + #define PB_DS_ASSERT_VALID(X) \ _GLIBCXX_DEBUG_ONLY(X.assert_valid(__FILE__, __LINE__);) @@ -291,3 +293,4 @@ assert_valid(const char* __file, int __line) const # undef PB_DS_DEBUG_VERIFY #endif #undef PB_DS_ASSERT_VALID +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp b/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp index c3934e1b31b..d93f2076d3f 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp @@ -38,6 +38,8 @@ * Contains a resize size policy implementation. */ +#ifdef PB_DS_CLASS_C_DEC + #pragma GCC system_header namespace detail @@ -159,3 +161,4 @@ get_nearest_smaller_size(size_type n) const return m_start_size; return *p_lower; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp b/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp index 45fbfc0bf8f..f77a0952c77 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp @@ -38,6 +38,8 @@ * Contains a resize policy implementation. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC PB_DS_CLASS_C_DEC:: hash_standard_resize_policy() @@ -247,3 +249,4 @@ PB_DS_CLASS_C_DEC:: get_size_policy() const { return *this; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp index 99247ee1395..21a70da4165 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for splay_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC template void @@ -100,3 +102,4 @@ void PB_DS_CLASS_C_DEC:: initialize() { base_type::m_p_head->m_special = true; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp index fdc0cfa2fd1..f24d2a367e1 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for splay_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -73,3 +75,4 @@ assert_special_imp(const node_pointer p_nd, #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp index 1fea88a12db..7aa3f24b485 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for splay_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline bool PB_DS_CLASS_C_DEC:: @@ -155,3 +157,4 @@ leftmost(node_pointer p_nd) p_nd = p_nd->m_p_left; return p_nd; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp index 6cccb441685..0ba3f5dc3b8 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for splay_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::point_iterator PB_DS_CLASS_C_DEC:: @@ -98,3 +100,4 @@ find_imp(key_const_reference r_key) const p_nd = p_nd->m_p_right; return base_type::m_p_head; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp index 137c5cf7fa5..9fb4cf0a4f5 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for splay_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline std::pair PB_DS_CLASS_C_DEC:: @@ -92,3 +94,4 @@ insert_leaf_imp(const_reference r_value) return std::make_pair(this->insert_leaf_new(r_value, p_nd, false), true); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp index 86983c39c64..2af92a25b86 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for splay_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -279,3 +281,4 @@ splay_zz_end(node_pointer p_nd, node_pointer p_parent, this->apply_update(p_nd, (node_update*)this); PB_DS_ASSERT_BASE_NODE_CONSISTENT(p_nd) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp index a519ea1ce97..7419ccf495f 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for splay_tree_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline void PB_DS_CLASS_C_DEC:: @@ -110,3 +112,4 @@ split(key_const_reference r_key, PB_DS_CLASS_C_DEC& other) PB_DS_ASSERT_VALID(other) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp index 91e9a7c2518..dd4e70f02d3 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for thin_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC template void @@ -103,3 +105,4 @@ PB_DS_CLASS_C_DEC:: initialize() { std::fill(m_a_aux, m_a_aux + max_rank, static_cast(0)); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp index 3a434b674d8..447305d326a 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for thin_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef _GLIBCXX_DEBUG PB_DS_CLASS_T_DEC @@ -117,3 +119,4 @@ assert_node_consistent(node_const_pointer p_nd, bool root, } #endif +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp index 5dc0977f7b1..f2672265370 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for thin_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC void PB_DS_CLASS_C_DEC:: @@ -253,3 +255,4 @@ rank_bound() return (p_upper - g_a_rank_bounds); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp index 92009bbb55d..8300867b5b6 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for thin_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::const_reference PB_DS_CLASS_C_DEC:: @@ -49,3 +51,4 @@ top() const _GLIBCXX_DEBUG_ASSERT(m_p_max != 0); return m_p_max->m_value; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp index 76ea0132ce4..57d3720409c 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for thin_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::point_iterator PB_DS_CLASS_C_DEC:: @@ -278,3 +280,4 @@ update_max(node_pointer p_nd) m_p_max = p_nd; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp index 44103d01aef..b922f473031 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation for thin_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC template void @@ -106,3 +108,4 @@ join(PB_DS_CLASS_C_DEC& other) PB_DS_ASSERT_VALID((*this)) PB_DS_ASSERT_VALID(other) } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp index 428b4bb933e..88e2ee75236 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp @@ -38,6 +38,8 @@ * Contains an implementation class for left_child_next_sibling_heap_. */ +#ifdef PB_DS_CLASS_C_DEC + #ifdef PB_DS_THIN_HEAP_TRACE_ PB_DS_CLASS_T_DEC @@ -51,3 +53,4 @@ trace() const } #endif // #ifdef PB_DS_THIN_HEAP_TRACE_ +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp b/libstdc++-v3/include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp index 4b2fcb5af4a..f7cfdb9fe95 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp @@ -38,6 +38,8 @@ * Contains forward declarations for order_statistics_key */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::iterator PB_DS_CLASS_C_DEC:: @@ -119,3 +121,4 @@ PB_DS_CLASS_T_DEC PB_DS_CLASS_C_DEC:: ~tree_order_statistics_node_update() { } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp b/libstdc++-v3/include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp index 951de0c8c96..4b05675a690 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp @@ -38,6 +38,8 @@ * Contains forward declarations for order_statistics_key */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC inline typename PB_DS_CLASS_C_DEC::iterator PB_DS_CLASS_C_DEC:: @@ -158,3 +160,4 @@ operator()(node_iterator nd_it, node_const_iterator /*end_nd_it*/) const const size_type res = (num_children == 0) ? 1 : children_rank; const_cast(nd_it.get_metadata()) = res; } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp b/libstdc++-v3/include/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp index 63c4ef6b3eb..49b0615ea20 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp @@ -38,6 +38,8 @@ * Contains an implementation of prefix_search_node_update. */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC std::pair< typename PB_DS_CLASS_C_DEC::const_iterator, @@ -137,3 +139,4 @@ inline void PB_DS_CLASS_C_DEC:: operator()(node_iterator /*nd_it*/, node_const_iterator /*end_nd_it*/) const { } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp b/libstdc++-v3/include/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp index 2e96964e330..d7f6a3c5437 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp @@ -39,6 +39,8 @@ * a string for a vector-based PATRICIA tree */ +#ifdef PB_DS_CLASS_C_DEC + PB_DS_CLASS_T_DEC detail::integral_constant PB_DS_CLASS_C_DEC::s_rev_ind; @@ -97,3 +99,4 @@ end_imp(key_const_reference r_key, detail::true_type) { return (r_key.rend()); } +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp b/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp index ef7e7846c4b..7468af6ad91 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp @@ -37,8 +37,12 @@ * @file unordered_iterator/const_iterator.hpp * Contains an iterator class used for const ranging over the elements of the * table. + * + * This file is intended to be included inside a class definition, with + * PB_DS_CLASS_C_DEC defined to the name of the enclosing class. */ +#ifdef PB_DS_CLASS_C_DEC /// Const range-type iterator. class const_iterator_ : public point_const_iterator_ @@ -109,3 +113,4 @@ protected: friend class PB_DS_CLASS_C_DEC; }; +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/iterator.hpp b/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/iterator.hpp index 29fa3d12140..388fccf625d 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/iterator.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/iterator.hpp @@ -36,9 +36,13 @@ /** * @file iterator.hpp * Contains an iterator_ class used for ranging over the elements of the - * table. + * table. + * + * This file is intended to be included inside a class definition, with + * PB_DS_CLASS_C_DEC defined to the name of the enclosing class. */ +#ifdef PB_DS_CLASS_C_DEC /// Range-type iterator. class iterator_ : public const_iterator_ @@ -128,3 +132,4 @@ protected: friend class PB_DS_CLASS_C_DEC; }; +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp b/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp index 367f371bebd..3f55a73b721 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp @@ -36,9 +36,13 @@ /** * @file unordered_iterator/point_const_iterator.hpp * Contains an iterator class returned by the tables' const find and insert - * methods. + * methods. + * + * * This file is intended to be included inside a class definition, with + * PB_DS_CLASS_C_DEC defined to the name of the enclosing class. */ +#ifdef PB_DS_CLASS_C_DEC class point_iterator_; /// Const point-type iterator. @@ -130,4 +134,4 @@ protected: friend class PB_DS_CLASS_C_DEC; }; - +#endif diff --git a/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp b/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp index d2514ade3c2..40d769f84be 100644 --- a/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp +++ b/libstdc++-v3/include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp @@ -36,9 +36,13 @@ /** * @file point_iterator.hpp * Contains an iterator class returned by the tables' find and insert - * methods. + * methods. + * + * This file is intended to be included inside a class definition, with + * PB_DS_CLASS_C_DEC defined to the name of the enclosing class. */ +#ifdef PB_DS_CLASS_C_DEC /// Find type iterator. class point_iterator_ { @@ -124,3 +128,4 @@ protected: protected: pointer m_p_value; }; +#endif -- 2.30.2