Ticket #4094: mpl.hpp.patch

File mpl.hpp.patch, 4.4 KB (added by vziegler@…, 13 years ago)

patch for 1.42.0 intrusive/detail/mpl.hpp

  • ./boost_1_42_0/boost/intrusive/detail/mpl.hpp

     
    138138struct is_unary_or_binary_function_impl
    139139{  static const bool value = false; };
    140140
     141#ifndef BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
     142
    141143template <typename R>
    142144struct is_unary_or_binary_function_impl<R (*)()>
    143145{  static const bool value = true;  };
     
    145147template <typename R>
    146148struct is_unary_or_binary_function_impl<R (*)(...)>
    147149{  static const bool value = true;  };
    148 /*
    149 #ifdef BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
    150 
    151 template <typename R>
    152 struct is_unary_or_binary_function_impl<R (__stdcall*)()>
    153 {  static const bool value = true;  };
    154150
    155 template <typename R>
    156 struct is_unary_or_binary_function_impl<R (__stdcall*)(...)>
    157 {  static const bool value = true;  };
     151#else // BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
    158152
    159153template <typename R>
    160 struct is_unary_or_binary_function_impl<R (__stdcall*)(...)>
     154struct is_unary_or_binary_function_impl<R (__stdcall*)()>
    161155{  static const bool value = true;  };
    162156
    163157template <typename R>
     
    165159{  static const bool value = true;  };
    166160
    167161template <typename R>
    168 struct is_unary_or_binary_function_impl<R (__fastcall*)(...)>
    169 {  static const bool value = true;  };
    170 
    171 template <typename R>
    172162struct is_unary_or_binary_function_impl<R (__cdecl*)()>
    173163{  static const bool value = true;  };
    174164
    175165template <typename R>
    176166struct is_unary_or_binary_function_impl<R (__cdecl*)(...)>
    177167{  static const bool value = true;  };
     168
    178169#endif
    179 */
     170
     171#ifndef BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
     172
    180173template <typename R, class T0>
    181174struct is_unary_or_binary_function_impl<R (*)(T0)>
    182175{  static const bool value = true;  };
     
    185178struct is_unary_or_binary_function_impl<R (*)(T0...)>
    186179{  static const bool value = true;  };
    187180
    188 #ifdef BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
     181#else // BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
    189182
    190183template <typename R, class T0>
    191184struct is_unary_or_binary_function_impl<R (__stdcall*)(T0)>
    192185{  static const bool value = true;  };
    193 /*
    194 template <typename R, class T0>
    195 struct is_unary_or_binary_function_impl<R (__stdcall*)(T0...)>
    196 {  static const bool value = true;  };
    197186
    198187template <typename R, class T0>
    199188struct is_unary_or_binary_function_impl<R (__fastcall*)(T0)>
    200189{  static const bool value = true;  };
    201190
    202191template <typename R, class T0>
    203 struct is_unary_or_binary_function_impl<R (__fastcall*)(T0...)>
    204 {  static const bool value = true;  };
    205 
    206 template <typename R, class T0>
    207192struct is_unary_or_binary_function_impl<R (__cdecl*)(T0)>
    208193{  static const bool value = true;  };
    209194
    210195template <typename R, class T0>
    211196struct is_unary_or_binary_function_impl<R (__cdecl*)(T0...)>
    212197{  static const bool value = true;  };
    213 */
     198
    214199#endif
    215200
     201#ifndef BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
     202
    216203template <typename R, class T0, class T1>
    217204struct is_unary_or_binary_function_impl<R (*)(T0, T1)>
    218205{  static const bool value = true;  };
     
    220207template <typename R, class T0, class T1>
    221208struct is_unary_or_binary_function_impl<R (*)(T0, T1...)>
    222209{  static const bool value = true;  };
    223 /*
    224 #ifdef BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
    225210
    226 template <typename R, class T0, class T1>
    227 struct is_unary_or_binary_function_impl<R (__stdcall*)(T0, T1)>
    228 {  static const bool value = true;  };
     211#else // BOOST_INTRUSIVE_TT_TEST_MSC_FUNC_SIGS
    229212
    230213template <typename R, class T0, class T1>
    231 struct is_unary_or_binary_function_impl<R (__stdcall*)(T0, T1...)>
     214struct is_unary_or_binary_function_impl<R (__stdcall*)(T0, T1)>
    232215{  static const bool value = true;  };
    233216
    234217template <typename R, class T0, class T1>
     
    236219{  static const bool value = true;  };
    237220
    238221template <typename R, class T0, class T1>
    239 struct is_unary_or_binary_function_impl<R (__fastcall*)(T0, T1...)>
    240 {  static const bool value = true;  };
    241 
    242 template <typename R, class T0, class T1>
    243222struct is_unary_or_binary_function_impl<R (__cdecl*)(T0, T1)>
    244223{  static const bool value = true;  };
    245224
     
    247226struct is_unary_or_binary_function_impl<R (__cdecl*)(T0, T1...)>
    248227{  static const bool value = true;  };
    249228#endif
    250 */
     229
    251230template <typename T>
    252231struct is_unary_or_binary_function_impl<T&>
    253232{  static const bool value = false; };