qt5base-lts/src/corelib/global
Thiago Macieira 02700cf6c2 Add an extra check for qssize_t's size and type
The definitions of size_t and ptrdiff_t ([support.types.layout] p2 and
p3 respectively) do not specify that they need to be as big as a
pointer. They just need to be big enough to hold the size of the largest
object and the biggest array subscript, respectively, the platform
supports (e.g., 16-bit DOS would have them as 16-bit in all memory
models, except huge).

But we depend on them actually being the size of a pointer in many
places, such as in QArrayData::offset, that stores the linear distance
from the end of the structure to the beginning of the data, wherever it
is in memory.

It's also a good idea to verify that qptrdiff and qssize_t are the same
type.

Change-Id: I9ad33fff8b634979bdbafffd14bbd1223afc58e8
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2017-05-06 02:57:41 +00:00
..
archdetect.cpp Add "-softfloat" to archdetect.cpp and clarify what to use when 2016-06-19 18:46:36 +00:00
global.pri Do not include qfloat16 tables in arm64 builds 2017-02-28 12:01:18 +00:00
qcompilerdetection.h Split Q_COMPILER_UNICODE_STRINGS: add Q_STDLIB_UNICODE_STRINGS 2017-04-20 06:50:36 +00:00
qconfig-bootstrapped.h QFileDevice/QFileInfo: Add fileTime() and setFileTime() 2017-04-27 18:44:15 +00:00
qendian.h Remove duplicated QT_HAS_BUILTIN define 2016-06-21 18:58:27 +00:00
qendian.qdoc Merge remote-tracking branch 'origin/5.6' into 5.7 2016-06-06 09:04:55 +02:00
qflags.h Add QDataStream streaming operator for QFlags 2017-02-09 17:46:11 +00:00
qfloat16_p.h New qfloat16 class 2017-01-31 14:21:42 +00:00
qfloat16.cpp Centralize the check that the floating point implementation follows IEEE754 2017-04-21 11:01:58 +00:00
qfloat16.h Move Q_REQUIRED_RESULT to its correct position 2017-04-20 05:40:59 +00:00
qglobal_p.h Core: Replace LGPL21 with LGPL license header 2017-03-28 12:47:55 +00:00
qglobal.cpp Add an extra check for qssize_t's size and type 2017-05-06 02:57:41 +00:00
qglobal.h Add an extra check for qssize_t's size and type 2017-05-06 02:57:41 +00:00
qglobalstatic.cpp Updated license headers 2016-01-21 18:55:18 +00:00
qglobalstatic.h Merge remote-tracking branch 'origin/5.6' into 5.7 2016-05-06 15:36:44 +02:00
qhooks_p.h Make sure all private headers in Qt Core include qglobal_p.h 2016-06-25 08:01:04 +00:00
qhooks.cpp QHostAddress: make it implictly shared 2017-01-19 14:09:47 +00:00
qisenum.h Remove compiler-specific implementations of Q_IS_ENUM 2016-11-09 09:13:01 +00:00
qlibraryinfo.cpp Fix warnings for -no-feature-settings 2017-04-04 13:12:19 +00:00
qlibraryinfo.h revert to building qmake with qconfig.cpp 2017-01-06 20:09:08 +00:00
qlogging.cpp Merge remote-tracking branch 'origin/5.9' into dev 2017-04-07 10:24:33 +02:00
qlogging.h Updated license headers 2016-01-15 12:25:24 +00:00
qmalloc.cpp Fix qReallocAligned for reallocation when alignment > 2*sizeof(void*) 2017-04-04 07:08:16 +00:00
qnamespace.h Introducing AA_CompressTabletEvents 2017-05-01 04:41:27 +00:00
qnamespace.qdoc Introducing AA_CompressTabletEvents 2017-05-01 04:41:27 +00:00
qnumeric_p.h Mark some more functions with Q_DECL_CONST_FUNCTION 2017-04-05 08:00:04 +00:00
qnumeric.cpp Updated license headers 2016-01-15 12:25:24 +00:00
qnumeric.h Mark some more functions with Q_DECL_CONST_FUNCTION 2017-04-05 08:00:04 +00:00
qoperatingsystemversion_darwin.mm Remove compatibility code paths for macOS < 10.10 and iOS < 8.0 2017-01-09 10:11:48 +00:00
qoperatingsystemversion_p.h Add header guard and We-mean-it comment to qoperatingsystemversion_p.h 2016-10-19 10:55:42 +00:00
qoperatingsystemversion_win.cpp Long live QOperatingSystemVersion! 2016-09-18 21:22:22 +00:00
qoperatingsystemversion.cpp Add missing documentation for QOperatingSystemVersion::segmentCount 2017-01-25 07:19:45 +00:00
qoperatingsystemversion.h Polish up the QOperatingSystemVersion API and documentation 2017-01-18 05:15:01 +00:00
qprocessordetection.h Merge remote-tracking branch 'origin/5.8' into dev 2017-01-30 12:46:20 +01:00
qsysinfo.h QSysInfo: Bring back suppression of ICC warning #1478 2017-04-12 03:37:11 +00:00
qsystemdetection.h Remove support for WinRT 8.1 and Windows Phone 8.1 2017-01-18 12:38:56 +00:00
qt_pch.h Updated license headers 2016-01-15 12:25:24 +00:00
qt_windows.h MinGW: Explicitly define NTDDI_VERSION 2016-11-08 15:30:33 +00:00
qtypeinfo.h Merge remote-tracking branch 'origin/5.9' into dev 2017-02-28 13:03:36 +01:00
qtypetraits.h Remove qtypetraits.h's contents altogether 2017-01-12 22:16:06 +00:00
qversiontagging.cpp Updated license headers 2016-01-21 18:55:18 +00:00
qversiontagging.h Merge remote-tracking branch 'origin/5.6' into 5.7 2016-10-27 10:23:39 +02:00