https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71044

--- Comment #7 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Author: redi
Date: Mon Dec 17 22:43:31 2018
New Revision: 267222

URL: https://gcc.gnu.org/viewcvs?rev=267222&root=gcc&view=rev
Log:
PR libstdc++/71044 fix off-by-one errors introduced recently

The recent changes to append/concat directly from strings (without
constructing paths) introduced regressions where one of the components
could be omitted from the iteration sequence in the result.

        PR libstdc++/71044
        * src/filesystem/std-path.cc (path::_M_append): Fix off-by-one error
        that caused a component to be lost from the iteration sequence.
        (path::_M_concat): Likewise.
        * testsuite/27_io/filesystem/path/append/source.cc: Test appending
        long strings.
        * testsuite/27_io/filesystem/path/concat/strings.cc: Test
        concatenating long strings.
        * testsuite/27_io/filesystem/path/construct/string_view.cc: Test
        construction from long string.

Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/src/filesystem/std-path.cc
    trunk/libstdc++-v3/testsuite/27_io/filesystem/path/append/source.cc
    trunk/libstdc++-v3/testsuite/27_io/filesystem/path/concat/strings.cc
    trunk/libstdc++-v3/testsuite/27_io/filesystem/path/construct/string_view.cc

Reply via email to