diff options
author | Fabian Kosmale <fabian.kosmale@qt.io> | 2020-11-24 20:49:32 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2020-12-03 15:36:54 +0000 |
commit | faaf8f5c0a73a27a159f00027ebeba5d486be6a9 (patch) | |
tree | e33d974e4053353f8c4043453833161800558f73 /src/corelib/itemmodels/qabstractitemmodel.h | |
parent | 0902ff112e7167d29c00838672497c755c1051b4 (diff) |
Avoid signed overflow in moc
moc's preprocessor needs to implement certain math operation to
correctly handle #if conditions. Unfortunately, its implementation is
not overflow safe. However, those are rare enough in practice that we
in general do not need to care about them.
This patch adds a workaround for one case where UBSAN run into an
overflow related issue.
A complete fix would require to make moc spec compliant (do math with
std::max_(u)int_t operands; always wrap on overflow) in all operations.
Fixes: QTBUG-88825
Change-Id: Ic4d2cb097db2fa2f9d4681bbaab3068eaa2745aa
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
(cherry picked from commit df8fbcf382b086e96082a8eb3622c60273e94c4d)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src/corelib/itemmodels/qabstractitemmodel.h')
0 files changed, 0 insertions, 0 deletions