summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/javac
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2016-03-29 11:02:34 +1000
committerJason Zaugg <jzaugg@gmail.com>2016-03-29 18:34:36 +1000
commit7e57bcc1818a402ad6ec32416af2b4522671f9ab (patch)
treeb3689186310539bb916f1ab9aa247599eca49b88 /src/compiler/scala/tools/nsc/javac
parent5b11d3ecad2803a0d0cb81a7a29faf0a4389a6b3 (diff)
downloadscala-7e57bcc1818a402ad6ec32416af2b4522671f9ab.tar.gz
scala-7e57bcc1818a402ad6ec32416af2b4522671f9ab.tar.bz2
scala-7e57bcc1818a402ad6ec32416af2b4522671f9ab.zip
Java types and type parameters can be annotated since JSR 308
Diffstat (limited to 'src/compiler/scala/tools/nsc/javac')
-rw-r--r--src/compiler/scala/tools/nsc/javac/JavaParsers.scala5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/javac/JavaParsers.scala b/src/compiler/scala/tools/nsc/javac/JavaParsers.scala
index 8cdc5944e8..cc851b6330 100644
--- a/src/compiler/scala/tools/nsc/javac/JavaParsers.scala
+++ b/src/compiler/scala/tools/nsc/javac/JavaParsers.scala
@@ -264,7 +264,8 @@ trait JavaParsers extends ast.parser.ParsersCommon with JavaScanners {
}
}
- def typ(): Tree =
+ def typ(): Tree = {
+ annotations()
optArrayBrackets {
if (in.token == FINAL) in.nextToken()
if (in.token == IDENTIFIER) {
@@ -287,6 +288,7 @@ trait JavaParsers extends ast.parser.ParsersCommon with JavaScanners {
basicType()
}
}
+ }
def typeArgs(t: Tree): Tree = {
val wildcards = new ListBuffer[TypeDef]
@@ -404,6 +406,7 @@ trait JavaParsers extends ast.parser.ParsersCommon with JavaScanners {
def typeParam(): TypeDef =
atPos(in.currentPos) {
+ annotations()
val name = identForType()
val hi = if (in.token == EXTENDS) { in.nextToken() ; bound() } else EmptyTree
TypeDef(Modifiers(Flags.JAVA | Flags.DEFERRED | Flags.PARAM), name, Nil, TypeBoundsTree(EmptyTree, hi))