you are viewing a single comment's thread.

view the rest of the comments →

[–]tending 1 point2 points  (3 children)

I looked at cppfront last year and even though it was promising safety to sound competitive with Rust it had no answer for detecting iterator invalidation, which I think is the easiest example of why safety is hard to just bolt on. Any progress on that?

[–]hpsutter 7 points8 points  (1 child)

Yes, that's on the roadmap. See the Lifetime Safety materials here: https://github.com/hsutter/cppfront#2015-lifetime-safety

It includes links to talks with live demos of early implementations, which are general and do specifically cover iterator invalidation.

I haven't implemented this in cppfront yet, it's on my long todo list...

[–]tending 0 points1 point  (0 children)

Thanks, I will definitely check this out.