import org.checkerframework.checker.guieffect.qual.PolyUI;
import org.checkerframework.checker.guieffect.qual.PolyUIEffect;

@PolyUI public class GenericSubTask implements @PolyUI IGenericTask {
  public GenericTaskUIConsumer uicons;
  public GenericTaskSafeConsumer safecons;

  @Override
  @PolyUIEffect
  public void doGenericStuff() {
    // In here, it should be that this:@PolyUI
    uicons.runAsync(this); // should be okay
    // :: error: (argument)
    safecons.runAsync(this); // should be error!
  }
}
