Example #1
0
 private static CompileError makeCompileError(
     AstElement e, String msg, ErrorHandler handler, CompileError.ErrorType errorType)
     throws CompileError {
   WPos pos = e.attrErrorPos();
   if (handler.isUnitTestMode()) {
     throw new CompileError(pos, msg);
   }
   ListIterator<CompileError> it = handler.getErrors().listIterator();
   while (it.hasNext()) {
     CompileError err = it.next();
     if (err.getSource().getFile().equals(pos.getFile())) {
       if (bigger(err.getSource(), pos)) {
         // remove bigger errors
         it.remove();
       } else if (bigger(pos, err.getSource()) || equal(pos, err.getSource())) {
         // do not add smaller or equal errors
         return null;
       }
     }
   }
   return new CompileError(pos, msg, errorType);
 }