slint/internal/compiler/tests/syntax/analysis/binding_loop_layout4.slint
Olivier Goffart 1a2aff8b57
Revert "compiler: inline components that are used only once" (#7697)
This reverts commit bf716ff8c5.
(And also revert the test part of 259756c0fd)

This exposed the bug #7693 and more issues mentined in
https://github.com/slint-ui/slint/issues/7693#issuecomment-2675077008

Fixes #7693
CC #7680
2025-02-21 19:11:11 +01:00

43 lines
2.1 KiB
Text

// Copyright © SixtyFPS GmbH <info@slint.dev>
// SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-2.0 OR LicenseRef-Slint-Software-3.0
component Foo {
// ^error{The binding for the property 'layoutinfo-h' is part of a binding loop}
// ^^error{The binding for the property 'layoutinfo-h' is part of a binding loop}
HorizontalLayout {
// ^error{The binding for the property 'layout-cache' is part of a binding loop}
// ^^error{The binding for the property 'width' is part of a binding loop}
// ^^^error{The binding for the property 'width' is part of a binding loop}
// ^^^^error{The binding for the property 'layoutinfo-h' is part of a binding loop}
// ^^^^^error{The binding for the property 'layout-cache' is part of a binding loop}
// ^^^^^^error{The binding for the property 'width' is part of a binding loop}
// ^^^^^^^error{The binding for the property 'width' is part of a binding loop}
// ^^^^^^^^error{The binding for the property 'layoutinfo-h' is part of a binding loop}
Text {
text: "hello";
font_size: self.width / 2.5;
// ^error{The binding for the property 'font-size' is part of a binding loop}
// ^^error{The binding for the property 'font-size' is part of a binding loop}
}
}
}
component Bar {
// ^error{The binding for the property 'layoutinfo-h' is part of a binding loop}
HorizontalLayout {
// ^error{The binding for the property 'layout-cache' is part of a binding loop}
// ^^error{The binding for the property 'width' is part of a binding loop}
// ^^^error{The binding for the property 'width' is part of a binding loop}
// ^^^^error{The binding for the property 'width' is part of a binding loop}
// ^^^^^error{The binding for the property 'layoutinfo-h' is part of a binding loop}
Foo {}
Foo {}
}
}
export component Apps inherits Window {
Bar {}
// ^error{The binding for the property 'preferred-width' is part of a binding loop}
// ^^error{The binding for the property 'width' is part of a binding loop}
}