slint/internal/compiler/tests/syntax/lookup/callback_alias2.slint
Olivier Goffart 57e9b5b796 Don't panic when an unresolved alias has a binding
Fixes #3085

When there are both a binding and a two way binding, we must keep the
two way binding in our bindings map. Otherwise type inference will not
work
2023-07-14 14:13:48 +02:00

21 lines
641 B
Text

// Copyright © SixtyFPS GmbH <info@slint.dev>
// SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-1.1 OR LicenseRef-Slint-commercial
export Xxx := Rectangle {
foo := Rectangle {
callback hello(int) -> int;
}
callback bar(int) -> int;
bar <=> foo.hello;
// ^error{Unknown property bar in Rectangle}
// #3085
callback row-pointer-event <=> dontexist;
// ^error{Unknown unqualified identifier 'dontexist'}
// ^^error{Binding to callback 'row-pointer-event' must bind to another callback}
row-pointer-event => {}
// ^error{Duplicated callback}
}