2025-11-27 09:28 ftp://ftp.de.debian.org/debian/pool/main/k/ki18n/ki18n_5.116.0.orig.tar.xz cppcheck-options: --library=posix --library=gnu --library=bsd --library=qt --library=kde --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=normalCheckLevelConditionExpressions -D__GNUC__ --platform=unix64 -j4 platform: Linux-6.12.57+deb13-amd64-x86_64-with-glibc2.41 python: 3.13.5 client-version: 1.3.67 compiler: g++ (Debian 14.2.0-19) 14.2.0 cppcheck: head 2.18.0 head-info: 9486fde (2025-11-26 08:20:02 +0100) count: 145 176 elapsed-time: 13.6 13.8 head-timing-info: old-timing-info: head results: ki18n-5.116.0/autotests/ki18ndeclarativetest.cpp:42:64: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PreferSynchronous [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/kcountrysubdivisiontest.cpp:172:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable code [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:21:11: style: Redundant initialization for 's'. The initialized value is overwritten before it is read. [redundantInitialization] ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:20:28: note: s is initialized ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:21:11: note: s is overwritten ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:22:11: style: Variable 's' is reassigned a value before the old one has been used. [redundantAssignment] ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:21:11: note: s is assigned ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:22:11: note: s is overwritten ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:23:11: style: Variable 's' is reassigned a value before the old one has been used. [redundantAssignment] ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:22:11: note: s is assigned ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:23:11: note: s is overwritten ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:24:11: style: Variable 's' is reassigned a value before the old one has been used. [redundantAssignment] ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:23:11: note: s is assigned ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:24:11: note: s is overwritten ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:25:11: style: Variable 's' is reassigned a value before the old one has been used. [redundantAssignment] ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:24:11: note: s is assigned ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:25:11: note: s is overwritten ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:26:11: style: Variable 's' is reassigned a value before the old one has been used. [redundantAssignment] ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:25:11: note: s is assigned ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:26:11: note: s is overwritten ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:27:11: style: Variable 's' is reassigned a value before the old one has been used. [redundantAssignment] ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:26:11: note: s is assigned ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:27:11: note: s is overwritten ki18n-5.116.0/autotests/kcountrytest.cpp:35:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AnyCountry [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/kcountrytest.cpp:48:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NewZealand [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/kcountrytest.cpp:110:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AnyCountry [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/kcountrytest.cpp:173:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable canBeConflict [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:46:17: style: Local variable 'someProperty' shadows outer variable [shadowVariable] ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:46:17: note: Shadowed declaration ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:46:17: note: Shadow variable ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:47:34: style: Local variable 'msg' shadows outer variable [shadowVariable] ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:47:34: note: Shadowed declaration ki18n-5.116.0/autotests/klazylocalizedstringtest.cpp:47:34: note: Shadow variable ki18n-5.116.0/autotests/klocalizedstringtest.h:25:0: error: failed to evaluate #if condition, undefined function-like macro invocation: KI18N_ENABLE_DEPRECATED_SINCE( ... ) [syntaxError] ki18n-5.116.0/autotests/ktranscriptcleantest.cpp:24:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable m_transcript [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/ktranscriptcleantest.cpp:30:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable m_transcript [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/ktranscriptcleantest.cpp:68:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable argv [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/ktimezonetest.cpp:35:37: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NAN [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/ktimezonetest.cpp:80:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable tz [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/testhelpers.cpp:22:71: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ConfigLocation [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/testhelpers.cpp:55:71: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ConfigLocation [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/ktranscripttest.cpp:33:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KTRANSCRIPT_PATH [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/ktranscripttest.cpp:113:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable argv [valueFlowBailoutIncompleteVar] ki18n-5.116.0/autotests/ktranscripttest.cpp:39:22: style: C-style pointer casting [cstyleCast] ki18n-5.116.0/src/i18n/klocalizedstring.cpp:1363:0: error: failed to evaluate #if condition, undefined function-like macro invocation: KI18N_BUILD_DEPRECATED_SINCE( ... ) [syntaxError] ki18n-5.116.0/src/i18n/kcatalog.cpp:72:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kcatalog.cpp:145:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable domain [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kcatalog.cpp:203:47: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable mutex [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kcatalog.cpp:254:139: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LocateDirectory [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kcatalog.cpp:322:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedstring.h:32:0: error: failed to evaluate #if condition, undefined function-like macro invocation: KI18N_ENABLE_DEPRECATED_SINCE( ... ) [syntaxError] ki18n-5.116.0/src/i18n/kcatalog.cpp:347:23: style:inconclusive: Technically the member function 'KCatalogPrivate::resetSystemLanguage' can be const. [functionConst] ki18n-5.116.0/src/i18n/kcatalog.cpp:132:10: note: Technically the member function 'KCatalogPrivate::resetSystemLanguage' can be const. ki18n-5.116.0/src/i18n/kcatalog.cpp:347:23: note: Technically the member function 'KCatalogPrivate::resetSystemLanguage' can be const. ki18n-5.116.0/src/i18n/gettext.h:109:12: style: C-style pointer casting [cstyleCast] ki18n-5.116.0/src/i18n/gettext.h:159:12: style: C-style pointer casting [cstyleCast] ki18n-5.116.0/src/i18n/gettext.h:101:9: style: The scope of the variable 'translation_found' can be reduced. [variableScope] ki18n-5.116.0/src/i18n/gettext.h:150:17: style: The scope of the variable 'translation' can be reduced. [variableScope] ki18n-5.116.0/src/i18n/gettext.h:151:9: style: The scope of the variable 'translation_found' can be reduced. [variableScope] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:61:40: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable String [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:132:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:163:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:194:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:227:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:260:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:286:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:312:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:340:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:368:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:399:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:430:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:463:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:496:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:522:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:548:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/klocalizedcontext.cpp:576:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/common_helpers.cpp:77:40: style: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm] ki18n-5.116.0/src/i18n/main.cpp:20:92: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TranslationsPath [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/localedata-qml/ki18nlocaledataqmlplugin.cpp:30:80: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable UndefinedValue [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/localedata-qml/ki18nlocaledataqmlplugin.cpp:87:68: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable UndefinedValue [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:166:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:175:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:185:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:196:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:208:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:213:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:317:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable String [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:344:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ReadOnly [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:408:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable UndefinedValue [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:732:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable UndefinedValue [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:806:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable UndefinedValue [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:814:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable UndefinedValue [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:862:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable UndefinedValue [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:933:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ReadOnly [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:983:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable UndefinedValue [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:1003:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable UndefinedValue [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:1189:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ReadOnly [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:1223:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ReadOnly [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:1412:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ReadOnly [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:1433:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ReadOnly [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:1513:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ReadOnly [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:302:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable UndefinedFormat [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:318:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PlainText [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:398:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SkipEmptyParts [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:423:57: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SkipEmptyParts [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:501:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N_KUIT [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:556:66: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PhraseTag [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:597:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N_KUIT [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:708:40: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable StructTag [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1073:50: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PlainText [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1090:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable domain [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1192:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable UndefinedFormat [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1223:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N_KUIT [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1285:47: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable StructTag [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1346:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable handling [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1425:53: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PhraseTag [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1515:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable RichText [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1563:132: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable InvertedGreedinessOption [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1624:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable d [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/ktranscript.cpp:1371:31: style: C-style pointer casting [cstyleCast] ki18n-5.116.0/src/i18n/ktranscript.cpp:354:13: style: The scope of the variable 'p2' can be reduced. [variableScope] ki18n-5.116.0/src/i18n/ktranscript.cpp:663:45: style:inconclusive: Function 'Scriptface' argument 1 names different: declaration 'config' definition 'config_'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/ktranscript.cpp:76:46: note: Function 'Scriptface' argument 1 names different: declaration 'config' definition 'config_'. ki18n-5.116.0/src/i18n/ktranscript.cpp:663:45: note: Function 'Scriptface' argument 1 names different: declaration 'config' definition 'config_'. ki18n-5.116.0/src/i18n/ktranscript.cpp:735:45: style:inconclusive: Function 'hascall' argument 1 names different: declaration 'name' definition 'qname'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/ktranscript.cpp:82:49: note: Function 'hascall' argument 1 names different: declaration 'name' definition 'qname'. ki18n-5.116.0/src/i18n/ktranscript.cpp:735:45: note: Function 'hascall' argument 1 names different: declaration 'name' definition 'qname'. ki18n-5.116.0/src/i18n/ktranscript.cpp:856:45: style:inconclusive: Function 'dynctxt' argument 1 names different: declaration 'key' definition 'qkey'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/ktranscript.cpp:90:49: note: Function 'dynctxt' argument 1 names different: declaration 'key' definition 'qkey'. ki18n-5.116.0/src/i18n/ktranscript.cpp:856:45: note: Function 'dynctxt' argument 1 names different: declaration 'key' definition 'qkey'. ki18n-5.116.0/src/i18n/ktranscript.cpp:880:41: style:inconclusive: Function 'dbgputs' argument 1 names different: declaration 'str' definition 'qstr'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/ktranscript.cpp:94:45: note: Function 'dbgputs' argument 1 names different: declaration 'str' definition 'qstr'. ki18n-5.116.0/src/i18n/ktranscript.cpp:880:41: note: Function 'dbgputs' argument 1 names different: declaration 'str' definition 'qstr'. ki18n-5.116.0/src/i18n/ktranscript.cpp:885:42: style:inconclusive: Function 'warnputs' argument 1 names different: declaration 'str' definition 'qstr'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/ktranscript.cpp:95:46: note: Function 'warnputs' argument 1 names different: declaration 'str' definition 'qstr'. ki18n-5.116.0/src/i18n/ktranscript.cpp:885:42: note: Function 'warnputs' argument 1 names different: declaration 'str' definition 'qstr'. ki18n-5.116.0/src/i18n/ktranscript.cpp:912:52: style:inconclusive: Function 'loadProps' argument 1 names different: declaration 'names' definition 'fnames'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/ktranscript.cpp:109:44: note: Function 'loadProps' argument 1 names different: declaration 'names' definition 'fnames'. ki18n-5.116.0/src/i18n/ktranscript.cpp:912:52: note: Function 'loadProps' argument 1 names different: declaration 'names' definition 'fnames'. ki18n-5.116.0/src/i18n/ktranscript.cpp:1172:47: style:inconclusive: Function 'load' argument 1 names different: declaration 'names' definition 'fnames'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/ktranscript.cpp:108:39: note: Function 'load' argument 1 names different: declaration 'names' definition 'fnames'. ki18n-5.116.0/src/i18n/ktranscript.cpp:1172:47: note: Function 'load' argument 1 names different: declaration 'names' definition 'fnames'. ki18n-5.116.0/src/i18n/ktranscript.cpp:936:19: style: Local variable 'file_check' shadows outer variable [shadowVariable] ki18n-5.116.0/src/i18n/ktranscript.cpp:932:15: note: Shadowed declaration ki18n-5.116.0/src/i18n/ktranscript.cpp:936:19: note: Shadow variable ki18n-5.116.0/src/i18n/ktranscript.cpp:1315:44: style: Local variable 'ekey' shadows outer variable [shadowVariable] ki18n-5.116.0/src/i18n/ktranscript.cpp:1300:28: note: Shadowed declaration ki18n-5.116.0/src/i18n/ktranscript.cpp:1315:44: note: Shadow variable ki18n-5.116.0/src/i18n/ktranscript.cpp:603:17: style: Variable 'sface' can be declared as pointer to const [constVariablePointer] ki18n-5.116.0/src/i18n/kuitsetup.cpp:453:5: warning: Member variable 'KuitTag::leadingNewlines' is not initialized in the constructor. [uninitMemberVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:458:5: warning: Member variable 'KuitTag::leadingNewlines' is not initialized in the constructor. [uninitMemberVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:415:25: style:inconclusive: Technically the member function 'KuitStaticData::toInterfacePath' can be const. [functionConst] ki18n-5.116.0/src/i18n/kuitsetup.cpp:192:13: note: Technically the member function 'KuitStaticData::toInterfacePath' can be const. ki18n-5.116.0/src/i18n/kuitsetup.cpp:415:25: note: Technically the member function 'KuitStaticData::toInterfacePath' can be const. ki18n-5.116.0/src/i18n/kuitsetup.cpp:1508:31: performance:inconclusive: Technically the member function 'KuitFormatterPrivate::finalizeVisualText' can be static (but you may consider moving to unnamed namespace). [functionStatic] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1143:13: note: Technically the member function 'KuitFormatterPrivate::finalizeVisualText' can be static (but you may consider moving to unnamed namespace). ki18n-5.116.0/src/i18n/kuitsetup.cpp:1508:31: note: Technically the member function 'KuitFormatterPrivate::finalizeVisualText' can be static (but you may consider moving to unnamed namespace). ki18n-5.116.0/src/i18n/kuitsetup.cpp:1400:23: performance:inconclusive: Technically the member function 'KuitFormatterPrivate::parseOpenEl' can be static (but you may consider moving to unnamed namespace). [functionStatic] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1163:34: note: Technically the member function 'KuitFormatterPrivate::parseOpenEl' can be static (but you may consider moving to unnamed namespace). ki18n-5.116.0/src/i18n/kuitsetup.cpp:1400:23: note: Technically the member function 'KuitFormatterPrivate::parseOpenEl' can be static (but you may consider moving to unnamed namespace). ki18n-5.116.0/src/i18n/kuitsetup.cpp:1120:5: style: Class 'KuitFormatterPrivate' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] ki18n-5.116.0/src/i18n/kuitsetup.cpp:548:57: style:inconclusive: Function 'setTagPattern' argument 2 names different: declaration 'attribNames' definition 'attribNames_'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/kuitsetup.cpp:529:43: note: Function 'setTagPattern' argument 2 names different: declaration 'attribNames' definition 'attribNames_'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:548:57: note: Function 'setTagPattern' argument 2 names different: declaration 'attribNames' definition 'attribNames_'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:552:42: style:inconclusive: Function 'setTagPattern' argument 6 names different: declaration 'leadingNewlines' definition 'leadingNewlines_'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/kuitsetup.cpp:533:28: note: Function 'setTagPattern' argument 6 names different: declaration 'leadingNewlines' definition 'leadingNewlines_'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:552:42: note: Function 'setTagPattern' argument 6 names different: declaration 'leadingNewlines' definition 'leadingNewlines_'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:1181:59: style:inconclusive: Function 'KuitFormatterPrivate' argument 1 names different: declaration 'language' definition 'language_'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1120:41: note: Function 'KuitFormatterPrivate' argument 1 names different: declaration 'language' definition 'language_'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:1181:59: note: Function 'KuitFormatterPrivate' argument 1 names different: declaration 'language' definition 'language_'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:1293:59: style:inconclusive: Function 'toVisualText' argument 1 names different: declaration 'text' definition 'text_'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1140:41: note: Function 'toVisualText' argument 1 names different: declaration 'text' definition 'text_'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:1293:59: note: Function 'toVisualText' argument 1 names different: declaration 'text' definition 'text_'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:1493:65: style:inconclusive: Function 'countWrappingNewlines' argument 1 names different: declaration 'ptext' definition 'text'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1169:54: note: Function 'countWrappingNewlines' argument 1 names different: declaration 'ptext' definition 'text'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:1493:65: note: Function 'countWrappingNewlines' argument 1 names different: declaration 'ptext' definition 'text'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:1508:65: style:inconclusive: Function 'finalizeVisualText' argument 1 names different: declaration 'ftext' definition 'text_'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1143:47: note: Function 'finalizeVisualText' argument 1 names different: declaration 'ftext' definition 'text_'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:1508:65: note: Function 'finalizeVisualText' argument 1 names different: declaration 'ftext' definition 'text_'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:1555:60: style:inconclusive: Function 'salvageMarkup' argument 1 names different: declaration 'text' definition 'text_'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1146:42: note: Function 'salvageMarkup' argument 1 names different: declaration 'text' definition 'text_'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:1555:60: note: Function 'salvageMarkup' argument 1 names different: declaration 'text' definition 'text_'. ki18n-5.116.0/src/i18n/kuitsetup.cpp:1248:24: style: Local variable 'format' shadows outer function [shadowFunction] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1122:13: note: Shadowed declaration ki18n-5.116.0/src/i18n/kuitsetup.cpp:1248:24: note: Shadow variable ki18n-5.116.0/src/i18n/kuitsetup.cpp:1346:64: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] ki18n-5.116.0/src/localedata/isocodes_p.h:69:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/localedata/isocodes_p.h:145:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/localedata/isocodes_p.h:178:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1175:40: style: class member 'KuitFormatterPrivate::comboKeyDelim' is never used. [unusedStructMember] ki18n-5.116.0/src/localedata/isocodescache.cpp:30:134: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LocateFile [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/localedata/isocodescache.cpp:52:61: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GenericCacheLocation [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/localedata/isocodescache.cpp:80:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ReadOnly [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/localedata/isocodescache.cpp:132:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18NLD [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/localedata/isocodescache.cpp:200:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ReadOnly [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/localedata/isocodescache.cpp:268:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18NLD [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1176:40: style: class member 'KuitFormatterPrivate::guiPathDelim' is never used. [unusedStructMember] ki18n-5.116.0/src/i18n/kuitsetup.cpp:1178:29: style: class member 'KuitFormatterPrivate::keyNames' is never used. [unusedStructMember] ki18n-5.116.0/src/localedata/isocodescache.cpp:130:21: performance:inconclusive: Technically the member function 'IsoCodesCache::createIso3166_1Cache' can be static (but you may consider moving to unnamed namespace). [functionStatic] ki18n-5.116.0/src/localedata/isocodescache_p.h:62:10: note: Technically the member function 'IsoCodesCache::createIso3166_1Cache' can be static (but you may consider moving to unnamed namespace). ki18n-5.116.0/src/localedata/isocodescache.cpp:130:21: note: Technically the member function 'IsoCodesCache::createIso3166_1Cache' can be static (but you may consider moving to unnamed namespace). ki18n-5.116.0/src/localedata/isocodescache.cpp:266:21: performance:inconclusive: Technically the member function 'IsoCodesCache::createIso3166_2Cache' can be static (but you may consider moving to unnamed namespace). [functionStatic] ki18n-5.116.0/src/localedata/isocodescache_p.h:63:10: note: Technically the member function 'IsoCodesCache::createIso3166_2Cache' can be static (but you may consider moving to unnamed namespace). ki18n-5.116.0/src/localedata/isocodescache.cpp:266:21: note: Technically the member function 'IsoCodesCache::createIso3166_2Cache' can be static (but you may consider moving to unnamed namespace). ki18n-5.116.0/src/localedata/kcountry.cpp:113:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AnyCountry [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/localedata/kcountry.cpp:163:50: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CurrencyIsoCode [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/localedata/kcountry.cpp:317:82: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Canonical [valueFlowBailoutIncompleteVar] ki18n-5.116.0/src/localedata/spatial_index_property_p.h:32:22: style: Class 'SpatialIndexProperty' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] ki18n-5.116.0/src/localedata/kcountry.cpp:63:16: style: Variable 'cache' can be declared as pointer to const [constVariablePointer] diff: 2.18.0 ki18n-5.116.0/autotests/klocalizedstringtest.cpp:197:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable QtWarningMsg [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/autotests/klocalizedstringtest.cpp:302:58: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Continue [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/autotests/klocalizedstringtest.cpp:335:53: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PlainText [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/autotests/klocalizedstringtest.cpp:48:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LC_ALL [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/autotests/klocalizedstringtest.cpp:54:9: style: Condition 'm_hasFrench' is always true [knownConditionTrueFalse] ki18n-5.116.0/autotests/klocalizedstringtest.cpp:45:19: note: Assignment 'm_hasFrench=true', assigned value is 1 ki18n-5.116.0/autotests/klocalizedstringtest.cpp:54:9: note: Condition 'm_hasFrench' is always true 2.18.0 ki18n-5.116.0/autotests/klocalizedstringtest.cpp:94:112: style:inconclusive: Function 'compileCatalogs' argument 3 names different: declaration 'language' definition 'lang'. [funcArgNamesDifferent] ki18n-5.116.0/autotests/klocalizedstringtest.h:46:91: note: Function 'compileCatalogs' argument 3 names different: declaration 'language' definition 'lang'. ki18n-5.116.0/autotests/klocalizedstringtest.cpp:94:112: note: Function 'compileCatalogs' argument 3 names different: declaration 'language' definition 'lang'. 2.18.0 ki18n-5.116.0/autotests/klocalizedstringtest.cpp:94:63: style:inconclusive: Function 'compileCatalogs' argument 1 names different: declaration 'catalogs' definition 'testPoPaths'. [funcArgNamesDifferent] ki18n-5.116.0/autotests/klocalizedstringtest.h:46:45: note: Function 'compileCatalogs' argument 1 names different: declaration 'catalogs' definition 'testPoPaths'. ki18n-5.116.0/autotests/klocalizedstringtest.cpp:94:63: note: Function 'compileCatalogs' argument 1 names different: declaration 'catalogs' definition 'testPoPaths'. 2.18.0 ki18n-5.116.0/autotests/klocalizedstringtest.h:14:1: style: The class 'KLocalizedStringTest' does not declare a constructor although it has private member variables which likely require initialization. [noConstructor] head ki18n-5.116.0/autotests/klocalizedstringtest.h:25:0: error: failed to evaluate #if condition, undefined function-like macro invocation: KI18N_ENABLE_DEPRECATED_SINCE( ... ) [syntaxError] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:1024:13: style: Variable 'dummy' is assigned a value that is never used. [unreadVariable] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:1024:19: style: Variable 'dummy' is assigned a value that is never used. [unreadVariable] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:1040:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:1187:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable text [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:119:74: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SkipEmptyParts [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:1312:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:1322:22: style: C-style pointer casting [cstyleCast] head ki18n-5.116.0/src/i18n/klocalizedstring.cpp:1363:0: error: failed to evaluate #if condition, undefined function-like macro invocation: KI18N_BUILD_DEPRECATED_SINCE( ... ) [syntaxError] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:187:5: warning: Member variable 'KLocalizedStringPrivate::number' is not initialized in the constructor. [uninitMemberVarPrivate] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:187:5: warning: Member variable 'KLocalizedStringPrivate::numberOrdinal' is not initialized in the constructor. [uninitMemberVarPrivate] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:353:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable domain [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:374:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable d [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:393:53: style:inconclusive: Function 'translateRaw' argument 8 names different: declaration 'translation' definition 'msgstr'. [funcArgNamesDifferent] ki18n-5.116.0/src/i18n/klocalizedstring.cpp:202:39: note: Function 'translateRaw' argument 8 names different: declaration 'translation' definition 'msgstr'. ki18n-5.116.0/src/i18n/klocalizedstring.cpp:393:53: note: Function 'translateRaw' argument 8 names different: declaration 'translation' definition 'msgstr'. 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:395:37: style: Variable 's' can be declared as pointer to const [constVariablePointer] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:399:40: style: Condition 'msgid.isEmpty()' is always false [knownConditionTrueFalse] ki18n-5.116.0/src/i18n/klocalizedstring.cpp:399:21: note: Assuming that condition 'msgid.isNull()' is not redundant ki18n-5.116.0/src/i18n/klocalizedstring.cpp:399:40: note: Condition 'msgid.isEmpty()' is always false 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:400:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:407:45: style: Condition 'msgctxt.isEmpty()' is always false [knownConditionTrueFalse] ki18n-5.116.0/src/i18n/klocalizedstring.cpp:407:24: note: Assuming that condition 'msgctxt.isNull()' is not redundant ki18n-5.116.0/src/i18n/klocalizedstring.cpp:407:45: note: Condition 'msgctxt.isEmpty()' is always false 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:412:55: style: Condition 'msgid_plural.isEmpty()' is always false [knownConditionTrueFalse] ki18n-5.116.0/src/i18n/klocalizedstring.cpp:412:29: note: Assuming that condition 'msgid_plural.isNull()' is not redundant ki18n-5.116.0/src/i18n/klocalizedstring.cpp:412:55: note: Condition 'msgid_plural.isEmpty()' is always false 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:455:52: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable format [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:460:49: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable format [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:465:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable domain [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:470:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable languages [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:481:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:704:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:835:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KI18N [valueFlowBailoutIncompleteVar] 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:958:13: style: Condition '!scriptError.isEmpty()' is always true [knownConditionTrueFalse] ki18n-5.116.0/src/i18n/klocalizedstring.cpp:956:9: note: Assuming that condition '!scriptError.isEmpty()' is not redundant ki18n-5.116.0/src/i18n/klocalizedstring.cpp:958:13: note: Condition '!scriptError.isEmpty()' is always true 2.18.0 ki18n-5.116.0/src/i18n/klocalizedstring.cpp:969:37: style: Variable 's' can be declared as pointer to const [constVariablePointer] head ki18n-5.116.0/src/i18n/klocalizedstring.h:32:0: error: failed to evaluate #if condition, undefined function-like macro invocation: KI18N_ENABLE_DEPRECATED_SINCE( ... ) [syntaxError] DONE