diff options
| author | Ahmad Samir <a.samirh78@gmail.com> | 2025-06-01 12:59:09 +0300 |
|---|---|---|
| committer | Ahmad Samir <a.samirh78@gmail.com> | 2025-06-23 23:21:01 +0300 |
| commit | ecc2633338864945efd3eecc2c3365137c8be6a1 (patch) | |
| tree | 6d42896a8913836d32d14ae75ceed5d6d0eeff13 /src/corelib/kernel/qmetaobject.cpp | |
| parent | 8635b9c2955fe80add75e982647cd3e7883347fa (diff) | |
tst_QMetaObject: add some more signature normalization tests
Add tests with nested template args.
Add tests for empty and null signatures, requested in code review.
Add a test for `char * const *` to verify that
QTypeNormalizer::normalizeType() normalizes it as expected.
Add a test for explicit void argument inside a template, suggested by
Fabian in code review.
Pick-to: 6.10
Change-Id: I040135355702e9c11d00a8685c274894dc46d848
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
Diffstat (limited to 'src/corelib/kernel/qmetaobject.cpp')
| -rw-r--r-- | src/corelib/kernel/qmetaobject.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/corelib/kernel/qmetaobject.cpp b/src/corelib/kernel/qmetaobject.cpp index d3d71ccf5d3..795cc531114 100644 --- a/src/corelib/kernel/qmetaobject.cpp +++ b/src/corelib/kernel/qmetaobject.cpp @@ -1401,6 +1401,9 @@ static void qRemoveWhitespace(QByteArrayView str, char *d) static char *qNormalizeType(char *d, int &templdepth, QByteArray &result) { const char *t = d; + + // e.g. "QMap<a, QList<int const>>, QList<b>)" + // `t` is at the beginning; `d` is advanced to the `,` after the closing >> while (*d && (templdepth || (*d != ',' && *d != ')'))) { if (*d == '<') |
