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 <sergiodj@redhat.com> * common/environ.c (gdb_environ::unset): Use '::iterator' instead of '::const_iterator'.
This commit is contained in:
parent
9a6c7d9c02
commit
96160d6051
@ -1,3 +1,8 @@
|
||||
2017-06-20 Sergio Durigan Junior <sergiodj@redhat.com>
|
||||
|
||||
* common/environ.c (gdb_environ::unset): Use '::iterator' instead
|
||||
of '::const_iterator'.
|
||||
|
||||
2017-06-20 Sergio Durigan Junior <sergiodj@redhat.com>
|
||||
|
||||
* Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
|
||||
|
@ -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<char *>::const_iterator el = m_environ_vector.cbegin ();
|
||||
el != m_environ_vector.cend () - 1;
|
||||
for (std::vector<char *>::iterator el = m_environ_vector.begin ();
|
||||
el != m_environ_vector.end () - 1;
|
||||
++el)
|
||||
if (match_var_in_string (*el, var, len))
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user