41#ifdef PB_DS_CLASS_C_DEC 
   46actual_erase_node(node_pointer p_z)
 
   48  _GLIBCXX_DEBUG_ASSERT(m_size > 0);
 
   50  _GLIBCXX_DEBUG_ONLY(erase_existing(PB_DS_V2F(p_z->m_value));)
 
   52  s_node_allocator.deallocate(p_z, 1);
 
   58update_min_max_for_erased_node(node_pointer p_z)
 
   62      m_p_head->m_p_left = m_p_head->m_p_right = m_p_head;
 
   66  if (m_p_head->m_p_left == p_z)
 
   70      m_p_head->m_p_left = it.m_p_nd;
 
   72  else if (m_p_head->m_p_right == p_z)
 
   76      m_p_head->m_p_right = it.m_p_nd;
 
   85  PB_DS_STRUCT_ONLY_ASSERT_VALID((*
this))
 
   86  clear_imp(m_p_head->m_p_parent);
 
   89  _GLIBCXX_DEBUG_ONLY(debug_base::clear();)
 
   90  PB_DS_STRUCT_ONLY_ASSERT_VALID((*this))
 
   96clear_imp(node_pointer p_nd)
 
  101  clear_imp(p_nd->m_p_left);
 
  102  clear_imp(p_nd->m_p_right);
 
  104  s_node_allocator.deallocate(p_nd, 1);