gcc/libstdc++-v3
Jonathan Wakely 437f43cc78 PR67085 pass comparison functions by reference in heap algorithms
PR libstdc++/67085
	* include/bits/predefined_ops.h (_Iter_less_val, _Val_less_iter): Add
	converting constructors from _Iter_less_iter.
	(_Iter_comp_val, _Val_comp_iter): Add converting constructors from
	_Iter_comp_iter.
	(__iter_comp_val(_Iter_comp_iter<C>): Use converting constructor.
	(__val_comp_iter(_Iter_comp_iter<C>): Likewise.
	* include/bits/stl_heap.h (__is_heap_until, __push_heap, __pop_heap)
	(__make_heap, __sort_heap): Change _Compare parameters to references.
	(__is_heap, push_heap, __adjust_heap, __pop_heap, pop_heap)
	(__make_heap, make_heap, sort_heap, is_heap_until): Pass comparison
	functions as lvalues.
	(is_heap): Call __is_heap_until directly to avoid copying __comp.
	* testsuite/23_containers/priority_queue/67085.cc: Adjust test to
	count copies during construction with empty sequence.

From-SVN: r244656
2017-01-19 23:07:52 +00:00
..
config PR65411 don't retry fclose on EINTR 2017-01-13 17:52:34 +00:00
doc PR78905 define _GLIBCXX_RELEASE macro 2017-01-19 16:40:46 +00:00
include PR67085 pass comparison functions by reference in heap algorithms 2017-01-19 23:07:52 +00:00
libsupc++ PR79114 use decayed type in std::throw_with_nested assertion 2017-01-17 15:26:06 +00:00
po re PR other/79046 (g++ -print-file-name=plugin uses full version number in path) 2017-01-17 10:38:48 +01:00
python re PR other/79046 (g++ -print-file-name=plugin uses full version number in path) 2017-01-17 10:38:48 +01:00
scripts Update copyright years. 2017-01-01 13:07:43 +01:00
src re PR other/79046 (g++ -print-file-name=plugin uses full version number in path) 2017-01-17 10:38:48 +01:00
testsuite PR67085 pass comparison functions by reference in heap algorithms 2017-01-19 23:07:52 +00:00
acinclude.m4 PR79017 workaround incomplete C99 math on darwin 2017-01-09 17:15:58 +00:00
aclocal.m4 Build libgo with -Wa,-nH if possible (PR go/78978) [non-libgo parts] 2017-01-06 14:33:47 +00:00
ChangeLog PR67085 pass comparison functions by reference in heap algorithms 2017-01-19 23:07:52 +00:00
ChangeLog-1998
ChangeLog-1999
ChangeLog-2000
ChangeLog-2001
ChangeLog-2002
ChangeLog-2003
ChangeLog-2004
ChangeLog-2005
ChangeLog-2006
ChangeLog-2007
ChangeLog-2008
ChangeLog-2009
ChangeLog-2010
ChangeLog-2011
ChangeLog-2012
ChangeLog-2013
ChangeLog-2014
ChangeLog-2015 Update copyright years. 2016-01-04 15:30:50 +01:00
ChangeLog-2016 Update copyright years. 2017-01-01 13:07:43 +01:00
config.h.in PR79017 workaround incomplete C99 math on darwin 2017-01-09 17:15:58 +00:00
configure crossconfig.m4: Add fuchsia OS. 2017-01-17 23:36:12 +00:00
configure.ac re PR other/79046 (g++ -print-file-name=plugin uses full version number in path) 2017-01-17 10:38:48 +01:00
configure.host [RTEMS] Always use atomic builtins for libstdc++ 2016-09-23 06:58:00 +00:00
crossconfig.m4 crossconfig.m4: Add fuchsia OS. 2017-01-17 23:36:12 +00:00
fragment.am re PR other/79046 (g++ -print-file-name=plugin uses full version number in path) 2017-01-17 10:38:48 +01:00
linkage.m4
Makefile.am Update copyright years. 2017-01-01 13:07:43 +01:00
Makefile.in re PR other/79046 (g++ -print-file-name=plugin uses full version number in path) 2017-01-17 10:38:48 +01:00
README

file: libstdc++-v3/README

New users may wish to point their web browsers to the file
index.html in the 'doc/html' subdirectory.  It contains brief
building instructions and notes on how to configure the library in
interesting ways.