public synchronized void analyseTypes() {
if (!fullyTyped) {
ProducedType.depth.set(-100);
//System.out.println("Run analysis phase for " + fileName);
compilationUnit.visit(new ExpressionVisitor());
compilationUnit.visit(new VisibilityVisitor());
compilationUnit.visit(new AnnotationVisitor());
compilationUnit.visit(new TypeArgumentVisitor());
fullyTyped = true;
}
}