for (int i = 0; i < options.proc; i++) { writers[i] = new ThreadedVisitor(options.destination, tree, i * length, i == options.proc - 1 ? tree.length : (i + 1) * length, this);
for (int i = 0; i < KjcOptions.proc; i++) { writers[i] = new ThreadedVisitor(KjcOptions.destination, tree, i * length, i == KjcOptions.proc - 1 ? tree.length : (i + 1) * length, this);
    protected void acceptMultiProc(final JCompilationUnit[] tree) {	try {	    Thread[]		writers = new Thread[tree.length];	    int		length = tree.length / options.proc;	    for (int i = 0; i < options.proc; i++) {		writers[i] = new ThreadedVisitor(options.destination, tree, i * length, i == options.proc - 1 ? tree.length : (i + 1) * length, this);		writers[i].start();	    }	    for (int i = 0; i < options.proc; i++) {		writers[i].join();	    }	} catch (InterruptedException ie) {	    ie.printStackTrace();	}    }