// Copyright © SixtyFPS GmbH <info@slint.dev>
// SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-1.2 OR LicenseRef-Slint-commercial

Compo := Rectangle {
//       ^error{The binding for the property 'layoutinfo-h' is part of a binding loop}

    property <string> the_text;

    lay := HorizontalLayout {
//         ^error{The binding for the property 'layoutinfo-h' is part of a binding loop}
        if true : Rectangle {
//                ^error{The binding for the property 'layoutinfo-h' is part of a binding loop}
            VerticalLayout {
//          ^error{The binding for the property 'layoutinfo-h' is part of a binding loop}
                Text {
                    text: root.the_text;
//                        ^error{The binding for the property 'text' is part of a binding loop}
                }
            }
        }
    }

}

export Foo := Rectangle {
    Compo {
//  ^error{The binding for the property 'preferred-width' is part of a binding loop}
        the_text: self.preferred-width / 1px;
//                ^error{The binding for the property 'the-text' is part of a binding loop}
    }
}
