code: { Object o=Finding.detect(this,new UnaryPredicate() { 23: public boolean execute(Object o) { return ((Field)o).GetTag().charAt(0)!='0'; } }); if(o==null) throw new NoSuchElementException("No primary field."); return (Field)o; } jikes output: Found 1 semantic error compiling "Record.java": 23. public boolean execute(Object o) ^ *** Error: Duplicate declaration of local variable o -- Cheers. Alexander