Hi,
> readonly property stringList onEmbedded: parent.onEmbedded
> Project {
> property bool mySetting: true
>
> Project {
> property bool mySettings: parent.mySetting
> ? parent.mySetting : false
> }
> }
This looks problematic. Qbs flattens nested and merges referenced project
items during the evaluation process (see
https://doc.qt.io/qbs/special-property-values.html#project). The
documentation does not say it, but that's what Qbs does with project items
under the hood AFAIK. If you define properties with the same name shadowing
each other and you use parent in addition, you may observe unwanted side
effects of the project merger. Maybe you get different results in different
projects because the property is evaluated at different times during the
resolve proces. For instance during early project evaluation, during probe
resolving or during module loading in products.
I was under the impression that the special "parent" alias is only a relict
from the QML parser and not guaranteed to work in Qbs. The same applies to
"id". It's reserved for probes at the moment although it works in other
cases too.
Could you live with a different solution? This would work:
Project {
property bool mySetting: true
Project {
property bool myOtherSetting: project.mySetting
? project.mySetting : false
}
}
Or if you explain what you want to achieve, we may find a different solution?
Richard
_______________________________________________
Qbs mailing list
Qbs@qt-project.org
https://lists.qt-project.org/listinfo/qbs