gcc/libstdc++-v3/testsuite/20_util/bind
Jonathan Wakely 72459cfd86 PR libstdc++/91371 make std::is_function handle other calling conventions
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
2019-08-20 22:21:15 +01:00
..
35569.cc Update copyright years. 2019-01-01 13:31:55 +01:00
38889.cc Update copyright years. 2019-01-01 13:31:55 +01:00
42593.cc Update copyright years. 2019-01-01 13:31:55 +01:00
45924.cc Update copyright years. 2019-01-01 13:31:55 +01:00
48698.cc Update copyright years. 2019-01-01 13:31:55 +01:00
49058_1.cc Update copyright years. 2019-01-01 13:31:55 +01:00
49058_2.cc Update copyright years. 2019-01-01 13:31:55 +01:00
57899.cc Update copyright years. 2019-01-01 13:31:55 +01:00
60497.cc Update copyright years. 2019-01-01 13:31:55 +01:00
68912.cc Update copyright years. 2019-01-01 13:31:55 +01:00
79798.cc Update copyright years. 2019-01-01 13:31:55 +01:00
83427.cc Update copyright years. 2019-01-01 13:31:55 +01:00
91371.cc PR libstdc++/91371 make std::is_function handle other calling conventions 2019-08-20 22:21:15 +01:00
all_bound.cc Update copyright years. 2019-01-01 13:31:55 +01:00
conv_result.cc Update copyright years. 2019-01-01 13:31:55 +01:00
cv_quals_2.cc Update copyright years. 2019-01-01 13:31:55 +01:00
cv_quals_3.cc Update copyright years. 2019-01-01 13:31:55 +01:00
cv_quals.cc Update copyright years. 2019-01-01 13:31:55 +01:00
is_placeholder_v.cc Update copyright years. 2019-01-01 13:31:55 +01:00
move.cc Update copyright years. 2019-01-01 13:31:55 +01:00
nested.cc Update copyright years. 2019-01-01 13:31:55 +01:00
placeholders.cc Update copyright years. 2019-01-01 13:31:55 +01:00
ref2.cc Update copyright years. 2019-01-01 13:31:55 +01:00
ref_neg.cc Update copyright years. 2019-01-01 13:31:55 +01:00
ref.cc Update copyright years. 2019-01-01 13:31:55 +01:00
refqual.cc Update copyright years. 2019-01-01 13:31:55 +01:00
socket.cc Update copyright years. 2019-01-01 13:31:55 +01:00