Closed
Description
object Dependent{
def x: ( (i: Int) |=> Int ) = ???
def y: ( (i: Int) |=> Int ) = x
}
object Independent{
def x: ( Int |=> Int ) = ???
def y: ( Int |=> Int ) = x
}
object NarrowDependent{
def x: ( Int |=> Int ) = ???
def y: ( (i: Int) |=> Int ) = x
}
object WidenDependent{
def x: ( (i: Int) |=> Int ) = ???
def y: ( Int |=> Int ) = x
}
Independent, NarrowDependent are compiled with no errors.
Dependent, WidenDependent both fail to compile:
Dependent:
Found: => (i: Int) |=> Int(Dependent.x)
Required: Int
WidenDependent:
Found: => (i: Int) |=> Int(WidenDependent.x)
Required: Int
Metadata
Metadata
Assignees
Labels
No labels