1// TR1 code repetition -*- C++ -*- 2 3// Copyright (C) 2005 Free Software Foundation, Inc. 4// Written by Douglas Gregor <doug.gregor -at- gmail.com> 5// 6// This file is part of the GNU ISO C++ Library. This library is free 7// software; you can redistribute it and/or modify it under the 8// terms of the GNU General Public License as published by the 9// Free Software Foundation; either version 2, or (at your option) 10// any later version. 11 12// This library is distributed in the hope that it will be useful, 13// but WITHOUT ANY WARRANTY; without even the implied warranty of 14// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15// GNU General Public License for more details. 16 17// You should have received a copy of the GNU General Public License along 18// with this library; see the file COPYING. If not, write to the Free 19// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, 20// USA. 21 22// As a special exception, you may use this file as part of a free software 23// library without restriction. Specifically, if other files instantiate 24// templates or use macros or inline functions from this file, or you compile 25// this file and link it with other files to produce an executable, this 26// file does not by itself cause the resulting executable to be covered by 27// the GNU General Public License. This exception does not however 28// invalidate any other reasons why the executable file might be covered by 29// the GNU General Public License. 30 31/** @file tr1/repeat.h 32 * This is an internal header file, included by other library headers. 33 * You should not attempt to use it directly. 34 */ 35 36#ifndef _GLIBCXX_REPEAT_HEADER 37# error Internal error: _GLIBCXX_REPEAT_HEADER must be set 38#endif /* _GLIBCXX_REPEAT_HEADER */ 39 40#ifndef _GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS 41# define _GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10 42# define _GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS_UNNAMED typename, typename, typename, typename, typename, typename, typename, typename, typename, typename 43# define _GLIBCXX_TUPLE_ALL_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10 44#endif 45 46#define _GLIBCXX_NUM_ARGS 0 47#define _GLIBCXX_COMMA 48#define _GLIBCXX_TEMPLATE_PARAMS 49#define _GLIBCXX_TEMPLATE_ARGS 50#define _GLIBCXX_PARAMS 51#define _GLIBCXX_REF_PARAMS 52#define _GLIBCXX_ARGS 53#define _GLIBCXX_COMMA_SHIFTED 54#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED 55#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED 56#define _GLIBCXX_PARAMS_SHIFTED 57#define _GLIBCXX_ARGS_SHIFTED 58#define _GLIBCXX_BIND_MEMBERS_INIT 59#define _GLIBCXX_BIND_MEMBERS 60#define _GLIBCXX_MU_GET_TUPLE_ARGS 61#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) 62#define _GLIBCXX_BIND_V_ARGS 63#define _GLIBCXX_TUPLE_ADD_CREF 64#define _GLIBCXX_TUPLE_COPY_INIT 65#define _GLIBCXX_TUPLE_ASSIGN 66#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS 67#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED 68#define _GLIBCXX_TEMPLATE_PARAMS_U 69#define _GLIBCXX_TEMPLATE_ARGS_U 70#define _GLIBCXX_REF_WRAP_PARAMS 71#define _GLIBCXX_REF_TEMPLATE_ARGS 72#define _GLIBCXX_NUM_ARGS_PLUS_1 1 73#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T1 74#include _GLIBCXX_REPEAT_HEADER 75#undef _GLIBCXX_T_NUM_ARGS_PLUS_1 76#undef _GLIBCXX_NUM_ARGS_PLUS_1 77#undef _GLIBCXX_REF_TEMPLATE_ARGS 78#undef _GLIBCXX_REF_WRAP_PARAMS 79#undef _GLIBCXX_TEMPLATE_ARGS_U 80#undef _GLIBCXX_TEMPLATE_PARAMS_U 81#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED 82#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS 83#undef _GLIBCXX_TUPLE_ASSIGN 84#undef _GLIBCXX_TUPLE_COPY_INIT 85#undef _GLIBCXX_TUPLE_ADD_CREF 86#undef _GLIBCXX_BIND_V_ARGS 87#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS 88#undef _GLIBCXX_MU_GET_TUPLE_ARGS 89#undef _GLIBCXX_BIND_MEMBERS_INIT 90#undef _GLIBCXX_BIND_MEMBERS 91#undef _GLIBCXX_ARGS_SHIFTED 92#undef _GLIBCXX_PARAMS_SHIFTED 93#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED 94#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED 95#undef _GLIBCXX_COMMA_SHIFTED 96#undef _GLIBCXX_ARGS 97#undef _GLIBCXX_REF_PARAMS 98#undef _GLIBCXX_PARAMS 99#undef _GLIBCXX_TEMPLATE_ARGS 100#undef _GLIBCXX_TEMPLATE_PARAMS 101#undef _GLIBCXX_COMMA 102#undef _GLIBCXX_NUM_ARGS 103 104#define _GLIBCXX_NUM_ARGS 1 105#define _GLIBCXX_COMMA , 106#define _GLIBCXX_TEMPLATE_PARAMS typename _T1 107#define _GLIBCXX_TEMPLATE_ARGS _T1 108#define _GLIBCXX_PARAMS _T1 __a1 109#define _GLIBCXX_REF_PARAMS _T1& __a1 110#define _GLIBCXX_ARGS __a1 111#define _GLIBCXX_COMMA_SHIFTED 112#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED 113#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED 114#define _GLIBCXX_PARAMS_SHIFTED 115#define _GLIBCXX_ARGS_SHIFTED 116#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; 117#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1) 118#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple) 119#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type 120#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)) 121#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1 122#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1) 123#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; 124#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass 125#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type 126#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1 127#define _GLIBCXX_TEMPLATE_ARGS_U _U1 128#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1) 129#define _GLIBCXX_REF_TEMPLATE_ARGS _T1& 130#define _GLIBCXX_NUM_ARGS_PLUS_1 2 131#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T2 132#include _GLIBCXX_REPEAT_HEADER 133#undef _GLIBCXX_T_NUM_ARGS_PLUS_1 134#undef _GLIBCXX_NUM_ARGS_PLUS_1 135#undef _GLIBCXX_REF_TEMPLATE_ARGS 136#undef _GLIBCXX_REF_WRAP_PARAMS 137#undef _GLIBCXX_TEMPLATE_ARGS_U 138#undef _GLIBCXX_TEMPLATE_PARAMS_U 139#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED 140#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS 141#undef _GLIBCXX_TUPLE_ASSIGN 142#undef _GLIBCXX_TUPLE_COPY_INIT 143#undef _GLIBCXX_TUPLE_ADD_CREF 144#undef _GLIBCXX_BIND_V_ARGS 145#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS 146#undef _GLIBCXX_MU_GET_TUPLE_ARGS 147#undef _GLIBCXX_BIND_MEMBERS_INIT 148#undef _GLIBCXX_BIND_MEMBERS 149#undef _GLIBCXX_ARGS_SHIFTED 150#undef _GLIBCXX_PARAMS_SHIFTED 151#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED 152#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED 153#undef _GLIBCXX_COMMA_SHIFTED 154#undef _GLIBCXX_ARGS 155#undef _GLIBCXX_REF_PARAMS 156#undef _GLIBCXX_PARAMS 157#undef _GLIBCXX_TEMPLATE_ARGS 158#undef _GLIBCXX_TEMPLATE_PARAMS 159#undef _GLIBCXX_COMMA 160#undef _GLIBCXX_NUM_ARGS 161 162#define _GLIBCXX_NUM_ARGS 2 163#define _GLIBCXX_COMMA , 164#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2 165#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2 166#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2 167#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2 168#define _GLIBCXX_ARGS __a1, __a2 169#define _GLIBCXX_COMMA_SHIFTED , 170#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1 171#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1 172#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1 173#define _GLIBCXX_ARGS_SHIFTED __a1 174#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; 175#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2) 176#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple) 177#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type 178#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)) 179#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2 180#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2) 181#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; 182#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass 183#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type 184#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2 185#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2 186#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2) 187#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2& 188#define _GLIBCXX_NUM_ARGS_PLUS_1 3 189#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T3 190#include _GLIBCXX_REPEAT_HEADER 191#undef _GLIBCXX_T_NUM_ARGS_PLUS_1 192#undef _GLIBCXX_NUM_ARGS_PLUS_1 193#undef _GLIBCXX_REF_TEMPLATE_ARGS 194#undef _GLIBCXX_REF_WRAP_PARAMS 195#undef _GLIBCXX_TEMPLATE_ARGS_U 196#undef _GLIBCXX_TEMPLATE_PARAMS_U 197#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED 198#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS 199#undef _GLIBCXX_TUPLE_ASSIGN 200#undef _GLIBCXX_TUPLE_COPY_INIT 201#undef _GLIBCXX_TUPLE_ADD_CREF 202#undef _GLIBCXX_BIND_V_ARGS 203#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS 204#undef _GLIBCXX_MU_GET_TUPLE_ARGS 205#undef _GLIBCXX_BIND_MEMBERS_INIT 206#undef _GLIBCXX_BIND_MEMBERS 207#undef _GLIBCXX_ARGS_SHIFTED 208#undef _GLIBCXX_PARAMS_SHIFTED 209#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED 210#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED 211#undef _GLIBCXX_COMMA_SHIFTED 212#undef _GLIBCXX_ARGS 213#undef _GLIBCXX_REF_PARAMS 214#undef _GLIBCXX_PARAMS 215#undef _GLIBCXX_TEMPLATE_ARGS 216#undef _GLIBCXX_TEMPLATE_PARAMS 217#undef _GLIBCXX_COMMA 218#undef _GLIBCXX_NUM_ARGS 219#define _GLIBCXX_NUM_ARGS 3 220#define _GLIBCXX_COMMA , 221#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3 222#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3 223#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3 224#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3 225#define _GLIBCXX_ARGS __a1, __a2, __a3 226#define _GLIBCXX_COMMA_SHIFTED , 227#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2 228#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2 229#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2 230#define _GLIBCXX_ARGS_SHIFTED __a1, __a2 231#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; 232#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3) 233#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple) 234#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type 235#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)) 236#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3 237#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3) 238#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; 239#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass 240#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type 241#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3 242#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3 243#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3) 244#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3& 245#define _GLIBCXX_NUM_ARGS_PLUS_1 4 246#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T4 247#include _GLIBCXX_REPEAT_HEADER 248#undef _GLIBCXX_T_NUM_ARGS_PLUS_1 249#undef _GLIBCXX_NUM_ARGS_PLUS_1 250#undef _GLIBCXX_REF_TEMPLATE_ARGS 251#undef _GLIBCXX_REF_WRAP_PARAMS 252#undef _GLIBCXX_TEMPLATE_ARGS_U 253#undef _GLIBCXX_TEMPLATE_PARAMS_U 254#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED 255#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS 256#undef _GLIBCXX_TUPLE_ASSIGN 257#undef _GLIBCXX_TUPLE_COPY_INIT 258#undef _GLIBCXX_TUPLE_ADD_CREF 259#undef _GLIBCXX_BIND_V_ARGS 260#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS 261#undef _GLIBCXX_MU_GET_TUPLE_ARGS 262#undef _GLIBCXX_BIND_MEMBERS_INIT 263#undef _GLIBCXX_BIND_MEMBERS 264#undef _GLIBCXX_ARGS_SHIFTED 265#undef _GLIBCXX_PARAMS_SHIFTED 266#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED 267#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED 268#undef _GLIBCXX_COMMA_SHIFTED 269#undef _GLIBCXX_ARGS 270#undef _GLIBCXX_REF_PARAMS 271#undef _GLIBCXX_PARAMS 272#undef _GLIBCXX_TEMPLATE_ARGS 273#undef _GLIBCXX_TEMPLATE_PARAMS 274#undef _GLIBCXX_COMMA 275#undef _GLIBCXX_NUM_ARGS 276#define _GLIBCXX_NUM_ARGS 4 277#define _GLIBCXX_COMMA , 278#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4 279#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4 280#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4 281#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4 282#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4 283#define _GLIBCXX_COMMA_SHIFTED , 284#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3 285#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3 286#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3 287#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3 288#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4; 289#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4) 290#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple) 291#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type 292#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)) 293#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4 294#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4) 295#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4; 296#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass 297#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type 298#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4 299#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4 300#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4) 301#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4& 302#define _GLIBCXX_NUM_ARGS_PLUS_1 5 303#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T5 304#include _GLIBCXX_REPEAT_HEADER 305#undef _GLIBCXX_T_NUM_ARGS_PLUS_1 306#undef _GLIBCXX_NUM_ARGS_PLUS_1 307#undef _GLIBCXX_REF_TEMPLATE_ARGS 308#undef _GLIBCXX_REF_WRAP_PARAMS 309#undef _GLIBCXX_TEMPLATE_ARGS_U 310#undef _GLIBCXX_TEMPLATE_PARAMS_U 311#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED 312#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS 313#undef _GLIBCXX_TUPLE_ASSIGN 314#undef _GLIBCXX_TUPLE_COPY_INIT 315#undef _GLIBCXX_TUPLE_ADD_CREF 316#undef _GLIBCXX_BIND_V_ARGS 317#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS 318#undef _GLIBCXX_MU_GET_TUPLE_ARGS 319#undef _GLIBCXX_BIND_MEMBERS_INIT 320#undef _GLIBCXX_BIND_MEMBERS 321#undef _GLIBCXX_ARGS_SHIFTED 322#undef _GLIBCXX_PARAMS_SHIFTED 323#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED 324#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED 325#undef _GLIBCXX_COMMA_SHIFTED 326#undef _GLIBCXX_ARGS 327#undef _GLIBCXX_REF_PARAMS 328#undef _GLIBCXX_PARAMS 329#undef _GLIBCXX_TEMPLATE_ARGS 330#undef _GLIBCXX_TEMPLATE_PARAMS 331#undef _GLIBCXX_COMMA 332#undef _GLIBCXX_NUM_ARGS 333#define _GLIBCXX_NUM_ARGS 5 334#define _GLIBCXX_COMMA , 335#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5 336#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5 337#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5 338#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4, _T5& __a5 339#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4, __a5 340#define _GLIBCXX_COMMA_SHIFTED , 341#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3, typename _T4 342#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3, _T4 343#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4 344#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3, __a4 345#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4; _T5 _M_arg5; 346#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4), _M_arg5(__a5) 347#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple), ::std::tr1::get<4>(__tuple) 348#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T5> _CV(_T5, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type 349#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T5>()(_M_arg5, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)) 350#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4, typename __add_c_ref<_T5>::type __a5 351#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4), _M_arg5(__in._M_arg5) 352#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4; _M_arg5 = __in._M_arg5; 353#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass, typename _T5 = _NullClass 354#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type, typename __strip_reference_wrapper<_T5>::__type 355#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4, typename _U5 356#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4, _U5 357#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4), ref(__a5) 358#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4&, _T5& 359#define _GLIBCXX_NUM_ARGS_PLUS_1 6 360#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T6 361#include _GLIBCXX_REPEAT_HEADER 362#undef _GLIBCXX_T_NUM_ARGS_PLUS_1 363#undef _GLIBCXX_NUM_ARGS_PLUS_1 364#undef _GLIBCXX_REF_TEMPLATE_ARGS 365#undef _GLIBCXX_REF_WRAP_PARAMS 366#undef _GLIBCXX_TEMPLATE_ARGS_U 367#undef _GLIBCXX_TEMPLATE_PARAMS_U 368#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED 369#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS 370#undef _GLIBCXX_TUPLE_ASSIGN 371#undef _GLIBCXX_TUPLE_COPY_INIT 372#undef _GLIBCXX_TUPLE_ADD_CREF 373#undef _GLIBCXX_BIND_V_ARGS 374#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS 375#undef _GLIBCXX_MU_GET_TUPLE_ARGS 376#undef _GLIBCXX_BIND_MEMBERS_INIT 377#undef _GLIBCXX_BIND_MEMBERS 378#undef _GLIBCXX_ARGS_SHIFTED 379#undef _GLIBCXX_PARAMS_SHIFTED 380#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED 381#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED 382#undef _GLIBCXX_COMMA_SHIFTED 383#undef _GLIBCXX_ARGS 384#undef _GLIBCXX_REF_PARAMS 385#undef _GLIBCXX_PARAMS 386#undef _GLIBCXX_TEMPLATE_ARGS 387#undef _GLIBCXX_TEMPLATE_PARAMS 388#undef _GLIBCXX_COMMA 389#undef _GLIBCXX_NUM_ARGS 390#define _GLIBCXX_NUM_ARGS 6 391#define _GLIBCXX_COMMA , 392#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6 393#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5, _T6 394#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6 395#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4, _T5& __a5, _T6& __a6 396#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4, __a5, __a6 397#define _GLIBCXX_COMMA_SHIFTED , 398#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3, typename _T4, typename _T5 399#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3, _T4, _T5 400#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5 401#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3, __a4, __a5 402#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4; _T5 _M_arg5; _T6 _M_arg6; 403#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4), _M_arg5(__a5), _M_arg6(__a6) 404#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple), ::std::tr1::get<4>(__tuple), ::std::tr1::get<5>(__tuple) 405#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T5> _CV(_T5, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T6> _CV(_T6, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type 406#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T5>()(_M_arg5, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T6>()(_M_arg6, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)) 407#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4, typename __add_c_ref<_T5>::type __a5, typename __add_c_ref<_T6>::type __a6 408#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4), _M_arg5(__in._M_arg5), _M_arg6(__in._M_arg6) 409#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4; _M_arg5 = __in._M_arg5; _M_arg6 = __in._M_arg6; 410#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass, typename _T5 = _NullClass, typename _T6 = _NullClass 411#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type, typename __strip_reference_wrapper<_T5>::__type, typename __strip_reference_wrapper<_T6>::__type 412#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4, typename _U5, typename _U6 413#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4, _U5, _U6 414#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4), ref(__a5), ref(__a6) 415#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4&, _T5&, _T6& 416#define _GLIBCXX_NUM_ARGS_PLUS_1 7 417#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T7 418#include _GLIBCXX_REPEAT_HEADER 419#undef _GLIBCXX_T_NUM_ARGS_PLUS_1 420#undef _GLIBCXX_NUM_ARGS_PLUS_1 421#undef _GLIBCXX_REF_TEMPLATE_ARGS 422#undef _GLIBCXX_REF_WRAP_PARAMS 423#undef _GLIBCXX_TEMPLATE_ARGS_U 424#undef _GLIBCXX_TEMPLATE_PARAMS_U 425#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED 426#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS 427#undef _GLIBCXX_TUPLE_ASSIGN 428#undef _GLIBCXX_TUPLE_COPY_INIT 429#undef _GLIBCXX_TUPLE_ADD_CREF 430#undef _GLIBCXX_BIND_V_ARGS 431#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS 432#undef _GLIBCXX_MU_GET_TUPLE_ARGS 433#undef _GLIBCXX_BIND_MEMBERS_INIT 434#undef _GLIBCXX_BIND_MEMBERS 435#undef _GLIBCXX_ARGS_SHIFTED 436#undef _GLIBCXX_PARAMS_SHIFTED 437#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED 438#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED 439#undef _GLIBCXX_COMMA_SHIFTED 440#undef _GLIBCXX_ARGS 441#undef _GLIBCXX_REF_PARAMS 442#undef _GLIBCXX_PARAMS 443#undef _GLIBCXX_TEMPLATE_ARGS 444#undef _GLIBCXX_TEMPLATE_PARAMS 445#undef _GLIBCXX_COMMA 446#undef _GLIBCXX_NUM_ARGS 447#define _GLIBCXX_NUM_ARGS 7 448#define _GLIBCXX_COMMA , 449#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7 450#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5, _T6, _T7 451#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7 452#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4, _T5& __a5, _T6& __a6, _T7& __a7 453#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4, __a5, __a6, __a7 454#define _GLIBCXX_COMMA_SHIFTED , 455#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6 456#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3, _T4, _T5, _T6 457#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6 458#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3, __a4, __a5, __a6 459#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4; _T5 _M_arg5; _T6 _M_arg6; _T7 _M_arg7; 460#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4), _M_arg5(__a5), _M_arg6(__a6), _M_arg7(__a7) 461#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple), ::std::tr1::get<4>(__tuple), ::std::tr1::get<5>(__tuple), ::std::tr1::get<6>(__tuple) 462#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T5> _CV(_T5, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T6> _CV(_T6, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T7> _CV(_T7, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type 463#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T5>()(_M_arg5, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T6>()(_M_arg6, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T7>()(_M_arg7, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)) 464#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4, typename __add_c_ref<_T5>::type __a5, typename __add_c_ref<_T6>::type __a6, typename __add_c_ref<_T7>::type __a7 465#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4), _M_arg5(__in._M_arg5), _M_arg6(__in._M_arg6), _M_arg7(__in._M_arg7) 466#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4; _M_arg5 = __in._M_arg5; _M_arg6 = __in._M_arg6; _M_arg7 = __in._M_arg7; 467#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass, typename _T5 = _NullClass, typename _T6 = _NullClass, typename _T7 = _NullClass 468#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type, typename __strip_reference_wrapper<_T5>::__type, typename __strip_reference_wrapper<_T6>::__type, typename __strip_reference_wrapper<_T7>::__type 469#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4, typename _U5, typename _U6, typename _U7 470#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4, _U5, _U6, _U7 471#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4), ref(__a5), ref(__a6), ref(__a7) 472#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4&, _T5&, _T6&, _T7& 473#define _GLIBCXX_NUM_ARGS_PLUS_1 8 474#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T8 475#include _GLIBCXX_REPEAT_HEADER 476#undef _GLIBCXX_T_NUM_ARGS_PLUS_1 477#undef _GLIBCXX_NUM_ARGS_PLUS_1 478#undef _GLIBCXX_REF_TEMPLATE_ARGS 479#undef _GLIBCXX_REF_WRAP_PARAMS 480#undef _GLIBCXX_TEMPLATE_ARGS_U 481#undef _GLIBCXX_TEMPLATE_PARAMS_U 482#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED 483#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS 484#undef _GLIBCXX_TUPLE_ASSIGN 485#undef _GLIBCXX_TUPLE_COPY_INIT 486#undef _GLIBCXX_TUPLE_ADD_CREF 487#undef _GLIBCXX_BIND_V_ARGS 488#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS 489#undef _GLIBCXX_MU_GET_TUPLE_ARGS 490#undef _GLIBCXX_BIND_MEMBERS_INIT 491#undef _GLIBCXX_BIND_MEMBERS 492#undef _GLIBCXX_ARGS_SHIFTED 493#undef _GLIBCXX_PARAMS_SHIFTED 494#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED 495#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED 496#undef _GLIBCXX_COMMA_SHIFTED 497#undef _GLIBCXX_ARGS 498#undef _GLIBCXX_REF_PARAMS 499#undef _GLIBCXX_PARAMS 500#undef _GLIBCXX_TEMPLATE_ARGS 501#undef _GLIBCXX_TEMPLATE_PARAMS 502#undef _GLIBCXX_COMMA 503#undef _GLIBCXX_NUM_ARGS 504#define _GLIBCXX_NUM_ARGS 8 505#define _GLIBCXX_COMMA , 506#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8 507#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8 508#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7, _T8 __a8 509#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4, _T5& __a5, _T6& __a6, _T7& __a7, _T8& __a8 510#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4, __a5, __a6, __a7, __a8 511#define _GLIBCXX_COMMA_SHIFTED , 512#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7 513#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3, _T4, _T5, _T6, _T7 514#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7 515#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3, __a4, __a5, __a6, __a7 516#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4; _T5 _M_arg5; _T6 _M_arg6; _T7 _M_arg7; _T8 _M_arg8; 517#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4), _M_arg5(__a5), _M_arg6(__a6), _M_arg7(__a7), _M_arg8(__a8) 518#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple), ::std::tr1::get<4>(__tuple), ::std::tr1::get<5>(__tuple), ::std::tr1::get<6>(__tuple), ::std::tr1::get<7>(__tuple) 519#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T5> _CV(_T5, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T6> _CV(_T6, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T7> _CV(_T7, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T8> _CV(_T8, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type 520#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T5>()(_M_arg5, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T6>()(_M_arg6, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T7>()(_M_arg7, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T8>()(_M_arg8, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)) 521#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4, typename __add_c_ref<_T5>::type __a5, typename __add_c_ref<_T6>::type __a6, typename __add_c_ref<_T7>::type __a7, typename __add_c_ref<_T8>::type __a8 522#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4), _M_arg5(__in._M_arg5), _M_arg6(__in._M_arg6), _M_arg7(__in._M_arg7), _M_arg8(__in._M_arg8) 523#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4; _M_arg5 = __in._M_arg5; _M_arg6 = __in._M_arg6; _M_arg7 = __in._M_arg7; _M_arg8 = __in._M_arg8; 524#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass, typename _T5 = _NullClass, typename _T6 = _NullClass, typename _T7 = _NullClass, typename _T8 = _NullClass 525#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type, typename __strip_reference_wrapper<_T5>::__type, typename __strip_reference_wrapper<_T6>::__type, typename __strip_reference_wrapper<_T7>::__type, typename __strip_reference_wrapper<_T8>::__type 526#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4, typename _U5, typename _U6, typename _U7, typename _U8 527#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4, _U5, _U6, _U7, _U8 528#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4), ref(__a5), ref(__a6), ref(__a7), ref(__a8) 529#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4&, _T5&, _T6&, _T7&, _T8& 530#define _GLIBCXX_NUM_ARGS_PLUS_1 9 531#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T9 532#include _GLIBCXX_REPEAT_HEADER 533#undef _GLIBCXX_T_NUM_ARGS_PLUS_1 534#undef _GLIBCXX_NUM_ARGS_PLUS_1 535#undef _GLIBCXX_REF_TEMPLATE_ARGS 536#undef _GLIBCXX_REF_WRAP_PARAMS 537#undef _GLIBCXX_TEMPLATE_ARGS_U 538#undef _GLIBCXX_TEMPLATE_PARAMS_U 539#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED 540#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS 541#undef _GLIBCXX_TUPLE_ASSIGN 542#undef _GLIBCXX_TUPLE_COPY_INIT 543#undef _GLIBCXX_TUPLE_ADD_CREF 544#undef _GLIBCXX_BIND_V_ARGS 545#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS 546#undef _GLIBCXX_MU_GET_TUPLE_ARGS 547#undef _GLIBCXX_BIND_MEMBERS_INIT 548#undef _GLIBCXX_BIND_MEMBERS 549#undef _GLIBCXX_ARGS_SHIFTED 550#undef _GLIBCXX_PARAMS_SHIFTED 551#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED 552#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED 553#undef _GLIBCXX_COMMA_SHIFTED 554#undef _GLIBCXX_ARGS 555#undef _GLIBCXX_REF_PARAMS 556#undef _GLIBCXX_PARAMS 557#undef _GLIBCXX_TEMPLATE_ARGS 558#undef _GLIBCXX_TEMPLATE_PARAMS 559#undef _GLIBCXX_COMMA 560#undef _GLIBCXX_NUM_ARGS 561#define _GLIBCXX_NUM_ARGS 9 562#define _GLIBCXX_COMMA , 563#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9 564#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9 565#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7, _T8 __a8, _T9 __a9 566#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4, _T5& __a5, _T6& __a6, _T7& __a7, _T8& __a8, _T9& __a9 567#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4, __a5, __a6, __a7, __a8, __a9 568#define _GLIBCXX_COMMA_SHIFTED , 569#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8 570#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8 571#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7, _T8 __a8 572#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3, __a4, __a5, __a6, __a7, __a8 573#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4; _T5 _M_arg5; _T6 _M_arg6; _T7 _M_arg7; _T8 _M_arg8; _T9 _M_arg9; 574#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4), _M_arg5(__a5), _M_arg6(__a6), _M_arg7(__a7), _M_arg8(__a8), _M_arg9(__a9) 575#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple), ::std::tr1::get<4>(__tuple), ::std::tr1::get<5>(__tuple), ::std::tr1::get<6>(__tuple), ::std::tr1::get<7>(__tuple), ::std::tr1::get<8>(__tuple) 576#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T5> _CV(_T5, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T6> _CV(_T6, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T7> _CV(_T7, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T8> _CV(_T8, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T9> _CV(_T9, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type 577#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T5>()(_M_arg5, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T6>()(_M_arg6, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T7>()(_M_arg7, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T8>()(_M_arg8, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T9>()(_M_arg9, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)) 578#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4, typename __add_c_ref<_T5>::type __a5, typename __add_c_ref<_T6>::type __a6, typename __add_c_ref<_T7>::type __a7, typename __add_c_ref<_T8>::type __a8, typename __add_c_ref<_T9>::type __a9 579#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4), _M_arg5(__in._M_arg5), _M_arg6(__in._M_arg6), _M_arg7(__in._M_arg7), _M_arg8(__in._M_arg8), _M_arg9(__in._M_arg9) 580#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4; _M_arg5 = __in._M_arg5; _M_arg6 = __in._M_arg6; _M_arg7 = __in._M_arg7; _M_arg8 = __in._M_arg8; _M_arg9 = __in._M_arg9; 581#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass, typename _T5 = _NullClass, typename _T6 = _NullClass, typename _T7 = _NullClass, typename _T8 = _NullClass, typename _T9 = _NullClass 582#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type, typename __strip_reference_wrapper<_T5>::__type, typename __strip_reference_wrapper<_T6>::__type, typename __strip_reference_wrapper<_T7>::__type, typename __strip_reference_wrapper<_T8>::__type, typename __strip_reference_wrapper<_T9>::__type 583#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4, typename _U5, typename _U6, typename _U7, typename _U8, typename _U9 584#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4, _U5, _U6, _U7, _U8, _U9 585#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4), ref(__a5), ref(__a6), ref(__a7), ref(__a8), ref(__a9) 586#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4&, _T5&, _T6&, _T7&, _T8&, _T9& 587#define _GLIBCXX_NUM_ARGS_PLUS_1 10 588#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T10 589#include _GLIBCXX_REPEAT_HEADER 590#undef _GLIBCXX_T_NUM_ARGS_PLUS_1 591#undef _GLIBCXX_NUM_ARGS_PLUS_1 592#undef _GLIBCXX_REF_TEMPLATE_ARGS 593#undef _GLIBCXX_REF_WRAP_PARAMS 594#undef _GLIBCXX_TEMPLATE_ARGS_U 595#undef _GLIBCXX_TEMPLATE_PARAMS_U 596#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED 597#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS 598#undef _GLIBCXX_TUPLE_ASSIGN 599#undef _GLIBCXX_TUPLE_COPY_INIT 600#undef _GLIBCXX_TUPLE_ADD_CREF 601#undef _GLIBCXX_BIND_V_ARGS 602#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS 603#undef _GLIBCXX_MU_GET_TUPLE_ARGS 604#undef _GLIBCXX_BIND_MEMBERS_INIT 605#undef _GLIBCXX_BIND_MEMBERS 606#undef _GLIBCXX_ARGS_SHIFTED 607#undef _GLIBCXX_PARAMS_SHIFTED 608#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED 609#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED 610#undef _GLIBCXX_COMMA_SHIFTED 611#undef _GLIBCXX_ARGS 612#undef _GLIBCXX_REF_PARAMS 613#undef _GLIBCXX_PARAMS 614#undef _GLIBCXX_TEMPLATE_ARGS 615#undef _GLIBCXX_TEMPLATE_PARAMS 616#undef _GLIBCXX_COMMA 617#undef _GLIBCXX_NUM_ARGS 618#define _GLIBCXX_LAST_INCLUDE 619#define _GLIBCXX_NUM_ARGS 10 620#define _GLIBCXX_COMMA , 621#define _GLIBCXX_TEMPLATE_PARAMS typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9, typename _T10 622#define _GLIBCXX_TEMPLATE_ARGS _T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9, _T10 623#define _GLIBCXX_PARAMS _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7, _T8 __a8, _T9 __a9, _T10 __a10 624#define _GLIBCXX_REF_PARAMS _T1& __a1, _T2& __a2, _T3& __a3, _T4& __a4, _T5& __a5, _T6& __a6, _T7& __a7, _T8& __a8, _T9& __a9, _T10& __a10 625#define _GLIBCXX_ARGS __a1, __a2, __a3, __a4, __a5, __a6, __a7, __a8, __a9, __a10 626#define _GLIBCXX_COMMA_SHIFTED , 627#define _GLIBCXX_TEMPLATE_PARAMS_SHIFTED typename _T1, typename _T2, typename _T3, typename _T4, typename _T5, typename _T6, typename _T7, typename _T8, typename _T9 628#define _GLIBCXX_TEMPLATE_ARGS_SHIFTED _T1, _T2, _T3, _T4, _T5, _T6, _T7, _T8, _T9 629#define _GLIBCXX_PARAMS_SHIFTED _T1 __a1, _T2 __a2, _T3 __a3, _T4 __a4, _T5 __a5, _T6 __a6, _T7 __a7, _T8 __a8, _T9 __a9 630#define _GLIBCXX_ARGS_SHIFTED __a1, __a2, __a3, __a4, __a5, __a6, __a7, __a8, __a9 631#define _GLIBCXX_BIND_MEMBERS _T1 _M_arg1; _T2 _M_arg2; _T3 _M_arg3; _T4 _M_arg4; _T5 _M_arg5; _T6 _M_arg6; _T7 _M_arg7; _T8 _M_arg8; _T9 _M_arg9; _T10 _M_arg10; 632#define _GLIBCXX_BIND_MEMBERS_INIT _M_arg1(__a1), _M_arg2(__a2), _M_arg3(__a3), _M_arg4(__a4), _M_arg5(__a5), _M_arg6(__a6), _M_arg7(__a7), _M_arg8(__a8), _M_arg9(__a9), _M_arg10(__a10) 633#define _GLIBCXX_MU_GET_TUPLE_ARGS ::std::tr1::get<0>(__tuple), ::std::tr1::get<1>(__tuple), ::std::tr1::get<2>(__tuple), ::std::tr1::get<3>(__tuple), ::std::tr1::get<4>(__tuple), ::std::tr1::get<5>(__tuple), ::std::tr1::get<6>(__tuple), ::std::tr1::get<7>(__tuple), ::std::tr1::get<8>(__tuple), ::std::tr1::get<9>(__tuple) 634#define _GLIBCXX_BIND_V_TEMPLATE_ARGS(_CV) typename result_of<_Mu<_T1> _CV(_T1, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T2> _CV(_T2, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T3> _CV(_T3, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T4> _CV(_T4, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T5> _CV(_T5, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T6> _CV(_T6, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T7> _CV(_T7, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T8> _CV(_T8, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T9> _CV(_T9, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type, typename result_of<_Mu<_T10> _CV(_T10, tuple<_GLIBCXX_BIND_TEMPLATE_ARGS>)>::type 635#define _GLIBCXX_BIND_V_ARGS _Mu<_T1>()(_M_arg1, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T2>()(_M_arg2, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T3>()(_M_arg3, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T4>()(_M_arg4, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T5>()(_M_arg5, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T6>()(_M_arg6, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T7>()(_M_arg7, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T8>()(_M_arg8, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T9>()(_M_arg9, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)), _Mu<_T10>()(_M_arg10, ::std::tr1::tie(_GLIBCXX_BIND_ARGS)) 636#define _GLIBCXX_TUPLE_ADD_CREF typename __add_c_ref<_T1>::type __a1, typename __add_c_ref<_T2>::type __a2, typename __add_c_ref<_T3>::type __a3, typename __add_c_ref<_T4>::type __a4, typename __add_c_ref<_T5>::type __a5, typename __add_c_ref<_T6>::type __a6, typename __add_c_ref<_T7>::type __a7, typename __add_c_ref<_T8>::type __a8, typename __add_c_ref<_T9>::type __a9, typename __add_c_ref<_T10>::type __a10 637#define _GLIBCXX_TUPLE_COPY_INIT _M_arg1(__in._M_arg1), _M_arg2(__in._M_arg2), _M_arg3(__in._M_arg3), _M_arg4(__in._M_arg4), _M_arg5(__in._M_arg5), _M_arg6(__in._M_arg6), _M_arg7(__in._M_arg7), _M_arg8(__in._M_arg8), _M_arg9(__in._M_arg9), _M_arg10(__in._M_arg10) 638#define _GLIBCXX_TUPLE_ASSIGN _M_arg1 = __in._M_arg1; _M_arg2 = __in._M_arg2; _M_arg3 = __in._M_arg3; _M_arg4 = __in._M_arg4; _M_arg5 = __in._M_arg5; _M_arg6 = __in._M_arg6; _M_arg7 = __in._M_arg7; _M_arg8 = __in._M_arg8; _M_arg9 = __in._M_arg9; _M_arg10 = __in._M_arg10; 639#define _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS typename _T1 = _NullClass, typename _T2 = _NullClass, typename _T3 = _NullClass, typename _T4 = _NullClass, typename _T5 = _NullClass, typename _T6 = _NullClass, typename _T7 = _NullClass, typename _T8 = _NullClass, typename _T9 = _NullClass, typename _T10 = _NullClass 640#define _GLIBCXX_TEMPLATE_ARGS_STRIPPED typename __strip_reference_wrapper<_T1>::__type, typename __strip_reference_wrapper<_T2>::__type, typename __strip_reference_wrapper<_T3>::__type, typename __strip_reference_wrapper<_T4>::__type, typename __strip_reference_wrapper<_T5>::__type, typename __strip_reference_wrapper<_T6>::__type, typename __strip_reference_wrapper<_T7>::__type, typename __strip_reference_wrapper<_T8>::__type, typename __strip_reference_wrapper<_T9>::__type, typename __strip_reference_wrapper<_T10>::__type 641#define _GLIBCXX_TEMPLATE_PARAMS_U typename _U1, typename _U2, typename _U3, typename _U4, typename _U5, typename _U6, typename _U7, typename _U8, typename _U9, typename _U10 642#define _GLIBCXX_TEMPLATE_ARGS_U _U1, _U2, _U3, _U4, _U5, _U6, _U7, _U8, _U9, _U10 643#define _GLIBCXX_REF_WRAP_PARAMS ref(__a1), ref(__a2), ref(__a3), ref(__a4), ref(__a5), ref(__a6), ref(__a7), ref(__a8), ref(__a9), ref(__a10) 644#define _GLIBCXX_REF_TEMPLATE_ARGS _T1&, _T2&, _T3&, _T4&, _T5&, _T6&, _T7&, _T8&, _T9&, _T10& 645#define _GLIBCXX_NUM_ARGS_PLUS_1 11 646#define _GLIBCXX_T_NUM_ARGS_PLUS_1 _T11 647#include _GLIBCXX_REPEAT_HEADER 648#undef _GLIBCXX_T_NUM_ARGS_PLUS_1 649#undef _GLIBCXX_NUM_ARGS_PLUS_1 650#undef _GLIBCXX_REF_TEMPLATE_ARGS 651#undef _GLIBCXX_REF_WRAP_PARAMS 652#undef _GLIBCXX_TEMPLATE_ARGS_U 653#undef _GLIBCXX_TEMPLATE_PARAMS_U 654#undef _GLIBCXX_TEMPLATE_ARGS_STRIPPED 655#undef _GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS 656#undef _GLIBCXX_TUPLE_ASSIGN 657#undef _GLIBCXX_TUPLE_COPY_INIT 658#undef _GLIBCXX_TUPLE_ADD_CREF 659#undef _GLIBCXX_BIND_V_ARGS 660#undef _GLIBCXX_BIND_V_TEMPLATE_ARGS 661#undef _GLIBCXX_MU_GET_TUPLE_ARGS 662#undef _GLIBCXX_BIND_MEMBERS_INIT 663#undef _GLIBCXX_BIND_MEMBERS 664#undef _GLIBCXX_ARGS_SHIFTED 665#undef _GLIBCXX_PARAMS_SHIFTED 666#undef _GLIBCXX_TEMPLATE_ARGS_SHIFTED 667#undef _GLIBCXX_TEMPLATE_PARAMS_SHIFTED 668#undef _GLIBCXX_COMMA_SHIFTED 669#undef _GLIBCXX_ARGS 670#undef _GLIBCXX_REF_PARAMS 671#undef _GLIBCXX_PARAMS 672#undef _GLIBCXX_TEMPLATE_ARGS 673#undef _GLIBCXX_TEMPLATE_PARAMS 674#undef _GLIBCXX_COMMA 675#undef _GLIBCXX_NUM_ARGS 676#undef _GLIBCXX_LAST_INCLUDE 677 678