doCall.setMethodTarget(type.getMethods("doCall").get(0));
final BooleanExpression booleanExpression = new BooleanExpression(doCall);
booleanExpression.setSourcePosition(annotationNode);
annotationProcessor.process(pci, pci.contract(), methodNode.getDeclaringClass(), methodNode, (BlockStatement) closureClassExpression.getNodeMetaData(AnnotationClosureVisitor.META_DATA_ORIGINAL_TRY_CATCH_BLOCK), booleanExpression);
// if the implementation method has no annotation, we need to set a dummy marker in order to find parent pre/postconditions
if (!AnnotationUtils.hasAnnotationOfType(methodNode, annotationNode.getClassNode().getName())) {
AnnotationNode annotationMarker = new AnnotationNode(annotationNode.getClassNode());
annotationMarker.setMember(CLOSURE_ATTRIBUTE_NAME, annotationNode.getMember(CLOSURE_ATTRIBUTE_NAME));