Type incompatible
Cette catégorie d'avertissement est orthographiée « [incompatible-type] » par qmllint.
Impossible d’affecter une valeur à une propriété par défaut de type incompatible
Que s'est-il passé ?
Vous avez attribué un objet à une propriété par défaut de type incompatible.
Pourquoi est-ce un problème ?
Le moteur QML ne pourra pas affecter l'objet lors de l'exécution.
Exemple
import QtQuick
Item {
component MyType: QtObject {
default property list<Item> myDefaultProperty
}
MyType {
QtObject {} // note: QtObject does not inherit from Item
}
}Pour résoudre cet avertissement, liez un type compatible à la propriété ou, si vous êtes l'auteur de la propriété par défaut, modifiez le type dans la définition :
import QtQuick
Item {
component MyType: QtObject {
default property list<Item> myDefaultProperty
}
MyType {
Item {}
}
component AlternativeMyType: QtObject {
default property list<QtObject> myDefaultProperty
}
AlternativeMyType {
QtObject {} // is ok for AlternativeMyType
}
}Le type de la liaison de la propriété est incorrect
Que s'est-il passé ?
Vous avez utilisé un type de modificateur de propriété non valide.
Pourquoi est-ce un problème ?
Le moteur QML ne pourra pas utiliser le type du modificateur de propriété lors de l'exécution.
Exemple
import QtQuick
Item {
property int xxx
Item on xxx { ... }
}Pour corriger cet avertissement, supprimez l'on e ou utilisez un type de modificateur de propriété valide :
import QtQuick
Item {
property int xxx
Item { ... }
// Alternative: use a valid property modifier type
NumberAnimation on xxx { ... }
}La construction à partir d'une chaîne de caractères est obsolète ; utilisez plutôt la construction à partir d'un type de valeur structuré
Que s'est-il passé ?
Vous avez construit une « QML_STRUCTURED_VALUE » à l'aide d'une chaîne de caractères.
Pourquoi est-ce un problème ?
Cette méthode est obsolète et source d'erreurs de frappe.
Exemple
Pour corriger cet avertissement, renseignez le type de valeur structuré comme expliqué dans la description de l'QML_STRUCTURED_VALUE, au lieu d'associer une chaîne de caractères à la propriété :
Une fonction sans annotation de type de retour renvoie une valeur
Que s’est-il passé ?
Vous avez renvoyé une valeur à partir d’une fonction sans annotation de type de retour.
Pourquoi est-ce un problème ?
Vous avez indiqué que la fonction ne devait rien renvoyer ; elle ne doit donc rien renvoyer. Les outils Qml ne pourront pas traiter la méthode et le moteur Qml ignorera la valeur renvoyée dans une future version de Qt.
Exemple
import QtQuick
Item {
function f(x: int) {
...
return x
}
}Pour corriger cet avertissement, adaptez la signature de la fonction au nouveau type de retour ou supprimez la valeur de retour :
import QtQuick
Item {
function f(x: int): int {
...
return x
}
function alternativeF(x: int) {
...
return
}
}Impossible d'affecter une liaison/un objet/un littéral
Que s'est-il passé ?
Vous avez lié un objet, un littéral ou une expression à une propriété de type incompatible.
Pourquoi est-ce un problème ?
Le moteur QML ne pourra pas affecter l'objet, le littéral ou l'expression lors de l'exécution.
Exemple
Pour corriger cet avertissement, liez un objet, une valeur ou une expression de type compatible :
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.