aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuillaume Martres <smarter@ubuntu.com>2017-02-12 23:32:46 +0100
committerGuillaume Martres <smarter@ubuntu.com>2017-02-12 23:34:13 +0100
commit57ccea123ed4f0be575e0231e95a978a709f0af2 (patch)
tree42e92a1a73cba7a6e8eeb8c05f218775eff85ba3
parent75bea8dccce2bc3c0e8298ee71061c9871fd26ac (diff)
downloaddotty-57ccea123ed4f0be575e0231e95a978a709f0af2.tar.gz
dotty-57ccea123ed4f0be575e0231e95a978a709f0af2.tar.bz2
dotty-57ccea123ed4f0be575e0231e95a978a709f0af2.zip
Fix parsing annotation on function type
-rw-r--r--compiler/src/dotty/tools/dotc/parsing/Parsers.scala6
-rw-r--r--tests/pos/annot.scala1
2 files changed, 6 insertions, 1 deletions
diff --git a/compiler/src/dotty/tools/dotc/parsing/Parsers.scala b/compiler/src/dotty/tools/dotc/parsing/Parsers.scala
index 3162f61b4..9f4cdbd35 100644
--- a/compiler/src/dotty/tools/dotc/parsing/Parsers.scala
+++ b/compiler/src/dotty/tools/dotc/parsing/Parsers.scala
@@ -713,7 +713,11 @@ object Parsers {
if (t.isInstanceOf[ByNameTypeTree])
syntaxError(ByNameParameterNotSupported())
val tuple = atPos(start) { makeTupleOrParens(ts) }
- infixTypeRest(refinedTypeRest(withTypeRest(simpleTypeRest(tuple))))
+ infixTypeRest(
+ refinedTypeRest(
+ withTypeRest(
+ annotTypeRest(
+ simpleTypeRest(tuple)))))
}
}
}
diff --git a/tests/pos/annot.scala b/tests/pos/annot.scala
index dec6af945..bdaf82e12 100644
--- a/tests/pos/annot.scala
+++ b/tests/pos/annot.scala
@@ -24,5 +24,6 @@ class Test {
class C extends A @uncheckedVariance () with B @uncheckedVariance { val x = 10 }
+ val f: (Int => Int) @uncheckedVariance = ???
}