re PR libstdc++/82558 (V8 JavaScript engine segfaults since r249235)
2017-10-16 François Dumont <fdumont@gcc.gnu.org> PR libstdc++/82558 * include/bits/stl_bvector.h (fill): Add iterator offset check. * testsuite/23_containers/vector/bool/82558.cc: New. From-SVN: r253776
This commit is contained in:
parent
181640f627
commit
1be043a140
@ -1,3 +1,9 @@
|
||||
2017-10-16 François Dumont <fdumont@gcc.gnu.org>
|
||||
|
||||
PR libstdc++/82558
|
||||
* include/bits/stl_bvector.h (fill): Add iterator offset check.
|
||||
* testsuite/23_containers/vector/bool/82558.cc: New.
|
||||
|
||||
2017-10-13 Jonathan Wakely <jwakely@redhat.com>
|
||||
|
||||
PR libstdc++/82522
|
||||
|
@ -417,7 +417,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
|
||||
if (__last._M_offset != 0)
|
||||
__fill_bvector(__last._M_p, 0, __last._M_offset, __x);
|
||||
}
|
||||
else
|
||||
else if (__first._M_offset != __last._M_offset)
|
||||
__fill_bvector(__first._M_p, __first._M_offset, __last._M_offset, __x);
|
||||
}
|
||||
|
||||
|
32
libstdc++-v3/testsuite/23_containers/vector/bool/82558.cc
Normal file
32
libstdc++-v3/testsuite/23_containers/vector/bool/82558.cc
Normal file
@ -0,0 +1,32 @@
|
||||
// Copyright (C) 2017 Free Software Foundation, Inc.
|
||||
//
|
||||
// This file is part of the GNU ISO C++ Library. This library is free
|
||||
// software; you can redistribute it and/or modify it under the
|
||||
// terms of the GNU General Public License as published by the
|
||||
// Free Software Foundation; either version 3, or (at your option)
|
||||
// any later version.
|
||||
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License along
|
||||
// with this library; see the file COPYING3. If not see
|
||||
// <http://www.gnu.org/licenses/>.
|
||||
|
||||
// 23.3.8 class vector<bool>
|
||||
|
||||
#include <vector>
|
||||
|
||||
// libstdc++/82558
|
||||
void test01()
|
||||
{
|
||||
std::vector<bool> v;
|
||||
std::fill(v.begin(), v.begin(), false);
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
test01();
|
||||
}
|
Loading…
Reference in New Issue
Block a user