@Override
    public void report(Diagnostic<? extends T> diagnostic) {
      getWrapperDelegate().report(wrap(Diagnostic.class, new DiagnosticWrapper<>(myProcContext, (Diagnostic<T>)diagnostic)));
    }
@Override
    public void report(Diagnostic<? extends T> diagnostic)