[PATCH] D39308: [libcxx] Keep track of heap allocated regex states

Tim Shen via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Oct 26 13:43:10 PDT 2017

timshen added a comment.

In https://reviews.llvm.org/D39308#907424, @mclow.lists wrote:

> A couple of notes.

Sorry for the oversights, when a C++11(-only :) contributor doesn't care about ABI stability, nor exceptions, he contributes naive code. :P I'll fix them.

> - This change means that <regex> now requires C++11 (the new `__push` function w/ the varargs).  I don't know how important that is; but I'm pretty sure libc++ currently provides `<regex>` in C++03 mode.
> - This is an ABI change; existing code that was compiled with the "old" `<regex>` implementation will not interoperate with this.

Can you give an example on what would go wrong, while it's not expected to go wrong?

> - I think that there may be some exception-safety issues in `__push`; if the `push_back` throws, I think we leak.


More information about the cfe-commits mailing list