Fix test for availability of emplace_back.

Testing for the GCC version 5 or later isn't right, since C++ 11 support
wasn't enabled by default until later.  This patch tests the C++ standard
support directly instead of inferring it from the GCC version.

gold/
	* incremental.cc (Sized_incremental_binary::setup_readers): Use
	emplace_back for C++ 11 or later.
This commit is contained in:
Cary Coutant
2018-07-09 16:12:27 -07:00
parent 8d4c0995eb
commit c3c5e48680
2 changed files with 8 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2018-07-09 Cary Coutant <ccoutant@gmail.com>
* incremental.cc (Sized_incremental_binary::setup_readers): Use
emplace_back for C++ 11 or later.
2018-07-06 Alan Modra <amodra@gmail.com> 2018-07-06 Alan Modra <amodra@gmail.com>
* powerpc.cc: Include attributes.h. * powerpc.cc: Include attributes.h.

View File

@ -311,10 +311,10 @@ Sized_incremental_binary<size, big_endian>::setup_readers()
for (unsigned int i = 0; i < count; i++) for (unsigned int i = 0; i < count; i++)
{ {
Input_entry_reader input_file = inputs.input_file(i); Input_entry_reader input_file = inputs.input_file(i);
#if defined(__GNUC__) && __GNUC__ < 5 #if __cplusplus >= 2001103L
this->input_entry_readers_.push_back(Sized_input_reader(input_file));
#else
this->input_entry_readers_.emplace_back(input_file); this->input_entry_readers_.emplace_back(input_file);
#else
this->input_entry_readers_.push_back(Sized_input_reader(input_file));
#endif #endif
switch (input_file.type()) switch (input_file.type())
{ {