diff options
author | Martin Odersky <odersky@gmail.com> | 2017-04-11 17:07:08 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2017-04-11 17:07:46 +0200 |
commit | 35d0acdad24717c1843304fd5eb124313658e7d2 (patch) | |
tree | 6f9caaf450959f58a1c77c1829a6a63b18add7e4 /tests/pos | |
parent | 9917029becab32d56e786ac9309ee195737f6da0 (diff) | |
download | dotty-35d0acdad24717c1843304fd5eb124313658e7d2.tar.gz dotty-35d0acdad24717c1843304fd5eb124313658e7d2.tar.bz2 dotty-35d0acdad24717c1843304fd5eb124313658e7d2.zip |
Add fullyDefinedType for class parent types
If we do not do that, any type variables in the parent type get interpolated
later, when the whole primary constructor is typed. But by then we miss the
context of what their variance was.
Diffstat (limited to 'tests/pos')
-rw-r--r-- | tests/pos/i2218.scala | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/tests/pos/i2218.scala b/tests/pos/i2218.scala new file mode 100644 index 000000000..fbede8b9b --- /dev/null +++ b/tests/pos/i2218.scala @@ -0,0 +1,9 @@ +trait Rule[In] + +class C { + def ruleWithName[In](f: In => Int): Rule[In] = { + new DefaultRule(f) {} + } + + class DefaultRule[In](f: In => Int) extends Rule[In] +} |