 /// An asynchronous task (just "Task" hereafter) is the analogue of a thread for
 /// asynchronous functions. All asynchronous functions run as part of some task.
 ///
-/// An instance of `Task` always represents a "detached" task. The instance
+/// An instance of `Task` always represents a top-level task. The instance
 /// can be used to await its completion, cancel the task, etc., The task will
 /// run to completion even if there are no other instances of the `Task`.
 ///

@available(SwiftStdlib 5.5, *)
public func _runAsyncMain(_ asyncFun: @escaping () async throws -> ()) {
#if os(Windows)
  detach {
    do {
      try await asyncFun()
      exit(0)

extension Task where Failure == Error {
  /// Run given `operation` as asynchronously in its own top-level task.
  ///
  /// This initializer creates asynchronous work on behalf of the synchronous function that calls it.
  /// Like `Task.detached`, this initializer creates a separate, top-level task.
  /// Unlike `Task.detached`, the task created inherits the priority and
  /// actor context of the caller, so the `operation` is treated more like an
  /// asynchronous extension to the synchronous operation.
  ///
  /// - Parameters:
  ///   - priority: priority of the task. If nil, the priority will come from
