X-Git-Url: https://git.wh0rd.org/?p=ICEs.git;a=blobdiff_plain;f=411691%2Fid_manager.i.6;fp=411691%2Fid_manager.i.6;h=dd19db19060fd686d636b7ecf80291eae5bca5ce;hp=0000000000000000000000000000000000000000;hb=bd3239d2bbe0de3a200b266503e3330b1e391489;hpb=dbff64cb4b7530861c2309c794efdd4e0cf47a23 diff --git a/411691/id_manager.i.6 b/411691/id_manager.i.6 new file mode 100644 index 0000000..dd19db1 --- /dev/null +++ b/411691/id_manager.i.6 @@ -0,0 +1,70 @@ +int __exchange_and_add_dispatch(int *__mem); +template < typename _Tp > class new_allocator { +}; + +namespace std { + template < typename _CharT > struct char_traits; + template < typename _Tp > class allocator:public new_allocator < _Tp > { + }; + template < typename _CharT, typename _Traits = + char_traits < _CharT >, typename _Alloc = + allocator < _CharT > >class basic_string; + typedef basic_string < char >string; + template < typename _CharT, typename _Traits, + typename _Alloc > class basic_string { + typedef _Alloc allocator_type; + private:struct _Rep_base { + int _M_refcount; + }; + struct _Rep:_Rep_base { + void _M_dispose(const _Alloc & __a) { + if (this != &_S_empty_rep()) { + if (__exchange_and_add_dispatch + (&this->_M_refcount)) { + } + } + }}; + struct _Alloc_hider:_Alloc { + }; + public: private:mutable _Alloc_hider _M_dataplus; + _Rep *_M_rep() const { + } static _Rep & _S_empty_rep() { + } + public: basic_string():_M_dataplus(_S_empty_rep()._M_refdata(), + _Alloc()) { + } + ~basic_string() { + _M_rep()->_M_dispose(this->get_allocator()); + } + allocator_type get_allocator() const { + }}; +} + +namespace boost { + template < class T > class intrusive_ptr { + public:typedef T element_type; + ~intrusive_ptr() { + intrusive_ptr_release(px); + } private: T * px; + }; + struct section_info; + template < typename T > struct intrusive_base { + friend void intrusive_ptr_release(T * ptr) { + delete ptr; + }}; + struct id_category; + struct id_placeholder; + struct section_info:intrusive_base < section_info > { + boost::intrusive_ptr < section_info > parent; + std::string id_1_1; + }; + namespace { + std::string normalize_id(std::string) { + } + } + void add_id_to_section(std::string const &id) { + std::string id_part = id; + normalize_id(id); + boost::intrusive_ptr < section_info > parent; + }; +}