]>
source.dussan.org Git - aspectj.git/commit
Some preliminary work on this bug
This includes a change in shadows in Parser class:
protected void consumeDeclareAnnotation(char kind) {
concatNodeLists();
ASTNode tokens = popPseudoTokens(";");
int annotationCount = this.expressionLengthPtr+1;
Annotation[] annotations = new Annotation[annotationCount];
int count = 0;
int length;
while (this.expressionLengthPtr>0 && (length = this.expressionLengthStack[this.expressionLengthPtr--]) != 0) {
System.arraycopy(
this.expressionStack,
(this.expressionPtr -= length) + 1,
annotations = new Annotation[length],
count++,
length);
}
// int length;
// Annotation[] annotations = new Annotation[1]; // there should only ever be one for us...
// if ((length = this.expressionLengthStack[this.expressionLengthPtr--]) != 0) {
// System.arraycopy(
// this.expressionStack,
// (this.expressionPtr -= length) + 1,
// annotations = new Annotation[length],
// 0,
// length);
// }
MethodDeclaration declareDecl = declarationFactory.createDeclareAnnotationDeclaration(this.compilationUnit.compilationResult,tokens,annotations,this,kind);
pushOnAstStack(declareDecl);
}
It touches so much code though and requires a change to serialized form.