On Tuesday 19 January 2016 19:16:25 Marc Mutz wrote: > That may be so. But most of what is _missing_ is implementable in Qt 5: > > - equal_range on hashed containers
No idea what that is. > - range inserts, ctors, assignments Already done for QVector for Qt6. However, since I wrote this on top of QGenericArray, I can't push it to Qt 5. > - exception safety guarantees Done since Qt 5.0 by João, but missed the release deadline. It's QGenericArray using QArrayDataPointer and QArrayDataOps. Also, we changed our policy towards exception-safety since 5.0 and this work is no longer needed. > - move semantics on realloc / insertions This is easy to implement in QArrayDataOps. However, due to CoW, we'd have to duplicate the code paths depending on whether the refcount was 1 or not. That's a runtime decision, so I don't think this is worth it. > - emplace (with Q_COMPILER_UNIFORM_INIT ifdef) Done in QGenericArray, but not really relevant since we don't support move- only types. > - not requiring op= / default ctor in QVector Not interesting to me. > - move-only payload types (hard with CoW) Ditto. > - splicing in node-based containers (hard with CoW) Ditto and no one has asked this in 10 years that QLinkedList has existed. > - atomic operations on QSharedPointer Explain more, please. > - alias ctors for QSharedPointer Ditto. > - changing iterator → const_iterator in insert / erase argumentsis > (hampered by QT_STRICT_ITERATORS preventing iterator → const_iterator > implicit conversions, otherwise one could write erase loops over > node-based containers that only detach when actually removing an element) Sounds like a Qt 6 change. Adding overloads is possible. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development