anchor.diff:    }
   
     void close({killDebugee: false}) {
  -    void exit() {
  +    void printErrorsAndExit() {
         if (errorsDetected) throw "Errors detected";
         exit(errors.length);
       }
  
positive.code:       // available and we call exit() in the next event loop cycle.
        // Otherwise this will wait for the process to exit.
        targetProcess.exitCode.then((exitCode) {
          exit();
        });
      } else {
        exit();
      }
    }
  }
  
negative.code:     if (socket != null) {
        socket.close().catchError((error) {
          print("Error occured while closing socket: $error");
        });
      }
      if (killDebugee) {
        if (!targetProcess.kill()) {
  