include/boost/json/impl/array.ipp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/include/boost/json/impl/array.ipp b/include/boost/json/impl/array.ipp index 4d067fb..a2c7fd6 100644 --- a/include/boost/json/impl/array.ipp +++ b/include/boost/json/impl/array.ipp @@ -491,8 +491,11 @@ erase( auto const p = &(*t_)[0] + (pos - &(*t_)[0]); destroy(p, p + 1); - relocate(p, p + 1, 1); --t_->size; + if(t_->size > 0) + relocate(p, p + 1, + t_->size - (p - + &(*t_)[0])); return p; }