diff options
author | Simon Ochsenreither <simon@ochsenreither.de> | 2014-02-03 21:44:59 +0100 |
---|---|---|
committer | Simon Ochsenreither <simon@ochsenreither.de> | 2014-10-07 20:25:01 +0200 |
commit | c14e0532fcd6d68c43a3c974efec9d15b6e4b217 (patch) | |
tree | 39d214f792687f708fa390cf6e6432b70a6625da /src/reflect/scala/reflect/runtime/JavaUniverseForce.scala | |
parent | 0940f19dc6809ee7622dda1b76121af628d5b435 (diff) | |
download | scala-c14e0532fcd6d68c43a3c974efec9d15b6e4b217.tar.gz scala-c14e0532fcd6d68c43a3c974efec9d15b6e4b217.tar.bz2 scala-c14e0532fcd6d68c43a3c974efec9d15b6e4b217.zip |
SI-4788/SI-5948 Respect RetentionPolicy of Java annotations
Note that I removed the check to ignore @deprecated:
- @deprecated extends StaticAnnotation, so they aren't
supposed to show up in the RuntimeInvisibleAnnotation
attribute anyway, and the earlier check for "extends
ClassfileAnnotationClass" makes this check superflous
anyway.
- Otherwise, if @deprecated was extending
ClassfileAnnotationClass it would seem inconsistent
that we don't emit @deprecated, but would do so for
@deprecatedOverriding, @deprecatedInheritance, etc.
Anyway, due to ClassfileAnnotation not working in
Scala, and the additional check which only allows
Java-defined annotations, this is pretty pointless
from every perspective.
Diffstat (limited to 'src/reflect/scala/reflect/runtime/JavaUniverseForce.scala')
-rw-r--r-- | src/reflect/scala/reflect/runtime/JavaUniverseForce.scala | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/reflect/scala/reflect/runtime/JavaUniverseForce.scala b/src/reflect/scala/reflect/runtime/JavaUniverseForce.scala index dcd262c288..18a3c5d63f 100644 --- a/src/reflect/scala/reflect/runtime/JavaUniverseForce.scala +++ b/src/reflect/scala/reflect/runtime/JavaUniverseForce.scala @@ -360,6 +360,8 @@ trait JavaUniverseForce { self: runtime.JavaUniverse => definitions.AnnotationClass definitions.ClassfileAnnotationClass definitions.StaticAnnotationClass + definitions.AnnotationRetentionAttr + definitions.AnnotationRetentionPolicyAttr definitions.BridgeClass definitions.ElidableMethodClass definitions.ImplicitNotFoundClass |