gcc/libstdc++-v3/libsupc++
Jonathan Wakely dddd011113 libstdc++: Implement LWG 3530 for concept-constrained comparisons
The proposed resolution for this library issue simplifies the
constraints for compare_three_way, ranges::equal_to, ranges::less etc.
so that they do not work with types which are convertible to pointers
but which fail to meet the usual syntactic requirements for the
comparisons.

This affects the example in PR libstdc++/93628 but doesn't fix the
problem described in that report.

libstdc++-v3/ChangeLog:

	* include/bits/ranges_cmp.h (__eq_builtin_ptr_cmp): Remove.
	(ranges::equal_to, ranges::not_equal_to): Do not constrain
	with __eq_builtin_ptr_cmp.
	(ranges::less, ranges::greater, ranges::less_equal)
	(ranges::greater_equal): Do not constrain with
	__less_builtin_ptr_cmp.
	* libsupc++/compare (compare_three_way): Do not constrain with
	__3way_builtin_ptr_cmp.
	* testsuite/18_support/comparisons/object/builtin-ptr-three-way.cc: Moved to...
	* testsuite/18_support/comparisons/object/lwg3530.cc: ...here.
	* testsuite/20_util/function_objects/range.cmp/lwg3530.cc: New test.
2021-03-10 15:27:06 +00:00
..
array_type_info.cc
atexit_arm.cc
atexit_thread.cc
atomic_lockfree_defines.h
bad_alloc.cc
bad_array_length.cc
bad_array_new.cc
bad_cast.cc
bad_typeid.cc
class_type_info.cc
compare libstdc++: Implement LWG 3530 for concept-constrained comparisons 2021-03-10 15:27:06 +00:00
cxxabi_forced.h
cxxabi_init_exception.h
cxxabi.h
del_op.cc
del_opa.cc
del_opant.cc
del_opnt.cc
del_ops.cc
del_opsa.cc
del_opv.cc
del_opva.cc
del_opvant.cc
del_opvnt.cc
del_opvs.cc
del_opvsa.cc
dyncast.cc PR c++/99074 - crash in dynamic_cast<>() on null pointer 2021-02-23 14:14:20 -07:00
eh_alloc.cc
eh_arm.cc
eh_atomics.h
eh_aux_runtime.cc
eh_call.cc
eh_catch.cc
eh_exception.cc
eh_globals.cc
eh_personality.cc
eh_ptr.cc libstdc++: Fix versioned namespace build 2021-02-11 17:28:16 +00:00
eh_term_handler.cc
eh_term_handler.h
eh_terminate.cc
eh_throw.cc
eh_tm.cc
eh_type.cc
eh_unex_handler.cc
enum_type_info.cc
exception
exception_defines.h
exception_ptr.h libstdc++: Fix versioned namespace build 2021-02-11 17:28:16 +00:00
exception.h
function_type_info.cc
fundamental_type_info.cc
guard_error.cc
guard.cc
hash_bytes.cc
hash_bytes.h
initializer_list
Makefile.am
Makefile.in
nested_exception.cc
nested_exception.h
new
new_handler.cc
new_op.cc
new_opa.cc
new_opant.cc
new_opnt.cc
new_opv.cc
new_opva.cc
new_opvant.cc
new_opvnt.cc
pbase_type_info.cc
pmem_type_info.cc
pointer_type_info.cc
pure.cc
si_class_type_info.cc
tinfo2.cc
tinfo.cc
tinfo.h
typeinfo
unwind-cxx.h
vec.cc
vmi_class_type_info.cc
vterminate.cc
vtv_stubs.cc