mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-12-22 18:45:10 +08:00
72459cfd86
The x86 attributes such as ms_abi, stdcall, fastcall etc. alter the function type, which means that functions with one of those attributes do not match any of the partial specializations of std::is_function. Rather than duplicating the list for every calling convention, use a much simpler definition of std::is_function. Also redefine __is_referenceable to not rely on partial specializations for each type of referenceable function. PR libstdc++/91371 * include/std/type_traits (is_function): Simplify definition. Remove partial specializations for function types. (__is_referenceable): Simplify definition. * testsuite/20_util/bind/91371.cc: New test. * testsuite/20_util/is_function/91371.cc: New test. * testsuite/20_util/is_function/value.cc: Check more pointer types. * testsuite/20_util/is_member_function_pointer/91371.cc: New test. * testsuite/20_util/is_object/91371.cc: New test. From-SVN: r274756 |
||
---|---|---|
.. | ||
35569.cc | ||
38889.cc | ||
42593.cc | ||
45924.cc | ||
48698.cc | ||
49058_1.cc | ||
49058_2.cc | ||
57899.cc | ||
60497.cc | ||
68912.cc | ||
79798.cc | ||
83427.cc | ||
91371.cc | ||
all_bound.cc | ||
conv_result.cc | ||
cv_quals_2.cc | ||
cv_quals_3.cc | ||
cv_quals.cc | ||
is_placeholder_v.cc | ||
move.cc | ||
nested.cc | ||
placeholders.cc | ||
ref2.cc | ||
ref_neg.cc | ||
ref.cc | ||
refqual.cc | ||
socket.cc |