https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102048
--- Comment #3 from Zonghan Yang <fstqwq at foxmail dot com> --- I couldn't find document explicitly states how the function works but only the line of comment above it shows the idea. So I guess it's just a small typo but not found for years since no one really document it. In my opinion, it'd be better if it is consistent with std::string. Since current implementation is totally wrong, it's very unlikely that somebody really use this function historically (except unlucky wretches like me), it would be acceptable if we change the API. Or, deleting the function erase(size_t) itself instead of whole rope is also a good choice. From my point of view, rope is somehow useful in some specific tasks, so it'd be awesome if it can be kept it in libstdc++.