On Monday 19 September 2016, Thiago Macieira wrote: > On segunda-feira, 19 de setembro de 2016 21:21:01 PDT André Pönitz wrote: > > On Mon, Sep 19, 2016 at 11:10:51AM -0700, Thiago Macieira wrote: > > > Since this is a P3 and 5.8 hasn't been released, I will push the > > > behaviour change to 5.8 and drop the fuzzy comparison. > > https://codereview.qt-project.org/171452 > > > > > QVariant should not expose any numeric or conversion functionality > > > > and *only* be used to store and retrieve data. Comparison/Ordering > > > > should only be used and only be available to the degree needed to > > > > fullfil basic container requirements. Everything else has bitten in > > > > the past, and will necessarily continue to do so, and adding more > > > > conceptually *wrong* features only digs deeper holes. > > > > > > That I can't do. > > > > That is understood. > > > > I am not asking to remove existing functionality, just to not to add > > "convenience" like > > > > QVariant v1 = char('a'); > > QVariant v2 = QChar('a'); > > QVariant v3 = QString("a"); > > assert(v1 == v2 && v2 == v3 && v1 != v3); > > It may already be too late.
It is, I am pretty sure we can't fix associativity, but another example is that qvariant equality is not even commutative right now, in the example above v2 == v3, but v3 != v2 I had this patch for it two years ago: https://codereview.qt-project.org/#/c/92850 `Allan _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development