--- /dev/null
+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;
+ };
+}