Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.java')
-rw-r--r--org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.java11
1 files changed, 10 insertions, 1 deletions
diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.java b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.java
index 1a65ef44dc..67dd0bd998 100644
--- a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.java
+++ b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.java
@@ -389,6 +389,16 @@ private int scanElementValue(int offset) {
int tag = u1At(currentOffset);
currentOffset++;
switch (tag) {
+ case 'Z':
+ if ((this.standardAnnotationTagBits & TagBits.AnnotationDeprecated) != 0) {
+ // assume member_name is 'since', because @Deprecated has only one boolean member
+ int constantOffset = this.constantPoolOffsets[u2At(currentOffset)] - this.structOffset + 1;
+ if (i4At(constantOffset) == 1) {
+ this.standardAnnotationTagBits |= TagBits.AnnotationTerminallyDeprecated;
+ }
+ }
+ currentOffset += 2;
+ break;
case 'B':
case 'C':
case 'D':
@@ -396,7 +406,6 @@ private int scanElementValue(int offset) {
case 'I':
case 'J':
case 'S':
- case 'Z':
case 's':
case 'c':
currentOffset += 2;

Back to the top