Details
Description
Let's be honest: the change from int to qsizetype sizes in Qt 6.0 was more than rushed. Half the API and a good chunk of implementation code is still using int when it should be using qsizetype, and we have been papering over this issue by making qMin() allow mixed-type arguments and, apparently, by removing the annoying MSVC warnings that, in Qt 5, so nicely pin-pointed all these implicit conversions as hard errors.
There were several real bugs in e.g. the QBuffer code corresponding to int/qsizetype, so there's probably more.
Acceptance criterium: every int has been inspected and, if needed, ported to qsizetype. Unfortunately, relying on compiler warnings isn't enough, as explicit casts won't raise warnings, but need to be ported nonetheless.
Attachments
Issue Links
- resulted in
-
QTBUG-105717 REG [5.15 -> 6.x] QByteArray::replace(0, size(), ptr, n) became ambiguous on 64-bit platforms
- Closed
-
QTBUG-105753 QDir is not re-entrant
- Closed
-
QTBUG-105804 The qt_ntfs_permission_lookup mechanism is prone to data races
- Closed
-
QTBUG-105747 Remove QCoreGlobalData
- Closed
Gerrit Reviews
For Gerrit Dashboard: QTBUG-103525 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
440238,1 | qfilesystemengine: port to qsizetype | tqtc/lts-6.2 | qt/tqtc-qtbase | Status: NEW | 0 | 0 |