From 96160d605128658378af73bb62732d1cbfa73d8a Mon Sep 17 00:00:00 2001 From: Sergio Durigan Junior Date: Tue, 20 Jun 2017 09:33:53 -0400 Subject: [PATCH] Use '::iterator' instead of '::const_iterator' on environ.c (and fix breakage on early versions of libstdc++) Even though C++11 supports modifying containers using a const_iterator (e.g., calling the 'erase' method of a std::vector), early versions of libstdc++ did not implement that. Some of our buildslaves are using these versions (e.g., the AArch64 buildslave uses gcc 4.8.8), and my previous commit causes a breakage on them. The solution is simple: just use a normal iterator, without const. gdb/ChangeLog: 2017-06-20 Sergio Durigan Junior * common/environ.c (gdb_environ::unset): Use '::iterator' instead of '::const_iterator'. --- gdb/ChangeLog | 5 +++++ gdb/common/environ.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 77001fadfb..f4e2b0823f 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2017-06-20 Sergio Durigan Junior + + * common/environ.c (gdb_environ::unset): Use '::iterator' instead + of '::const_iterator'. + 2017-06-20 Sergio Durigan Junior * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add diff --git a/gdb/common/environ.c b/gdb/common/environ.c index 20f8aba74b..2d1395719b 100644 --- a/gdb/common/environ.c +++ b/gdb/common/environ.c @@ -116,8 +116,8 @@ gdb_environ::unset (const char *var) /* We iterate until '.cend () - 1' because the last element is always NULL. */ - for (std::vector::const_iterator el = m_environ_vector.cbegin (); - el != m_environ_vector.cend () - 1; + for (std::vector::iterator el = m_environ_vector.begin (); + el != m_environ_vector.end () - 1; ++el) if (match_var_in_string (*el, var, len)) { -- 2.34.1