Index: compiler/org/eclipse/jdt/internal/compiler/classfmt/FieldInfo.java =================================================================== RCS file: /home/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/classfmt/FieldInfo.java,v retrieving revision 1.36 diff -u -r1.36 FieldInfo.java --- compiler/org/eclipse/jdt/internal/compiler/classfmt/FieldInfo.java 23 Feb 2005 02:47:58 -0000 1.36 +++ compiler/org/eclipse/jdt/internal/compiler/classfmt/FieldInfo.java 10 Jun 2005 20:15:18 -0000 @@ -118,7 +118,7 @@ readOffset += 2; break; case '@' : - readOffset += decodeAnnotation(readOffset); + readOffset = decodeAnnotation(readOffset); break; case '[' : int numberOfValues = u2At(readOffset); Index: compiler/org/eclipse/jdt/internal/compiler/classfmt/MethodInfo.java =================================================================== RCS file: /home/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/classfmt/MethodInfo.java,v retrieving revision 1.35 diff -u -r1.35 MethodInfo.java --- compiler/org/eclipse/jdt/internal/compiler/classfmt/MethodInfo.java 23 Feb 2005 02:47:58 -0000 1.35 +++ compiler/org/eclipse/jdt/internal/compiler/classfmt/MethodInfo.java 10 Jun 2005 20:15:18 -0000 @@ -110,7 +110,7 @@ readOffset += 2; break; case '@' : - readOffset += decodeAnnotation(readOffset); + readOffset = decodeAnnotation(readOffset); break; case '[' : int numberOfValues = u2At(readOffset); Index: model/org/eclipse/jdt/internal/core/util/ParameterAnnotation.java =================================================================== RCS file: /home/eclipse/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/util/ParameterAnnotation.java,v retrieving revision 1.4 diff -u -r1.4 ParameterAnnotation.java --- model/org/eclipse/jdt/internal/core/util/ParameterAnnotation.java 23 Feb 2005 02:47:31 -0000 1.4 +++ model/org/eclipse/jdt/internal/core/util/ParameterAnnotation.java 10 Jun 2005 20:15:19 -0000 @@ -44,7 +44,7 @@ this.annotationsNumber = length; if (length != 0) { this.annotations = new IAnnotation[length]; - for (int i = 0; i < length; i++) { + for (int i = 0; i < length;) { Annotation annotation = new Annotation(classFileBytes, constantPool, offset + readOffset); this.annotations[i++] = annotation; this.readOffset += annotation.sizeInBytes();