ceylon/ceylon-spec — Issue #87: Type of := expressions is too optimistic
Author: FroMage
Created: 2011-12-06 13:51:40+00:00
State: open
Labels: bug

This compiles, because it attributes the `Bar` type to `(fooVar := Bar())` even though it's really stored in a `Foo`. I don't think we need this extra niceness, and it makes the job harder on the backend side, can we type it as `Foo` (LHS of assignment) instead?

```java
interface Foo { shared formal void foo(); }
class Bar() satisfies Foo{
shared actual void foo() {}
shared void bar(){}
}
variable Foo fooVar;
(fooVar := Bar()).bar();
```