       self.determine(result) // an error here means this `Deferred` has been canceled.
     }
 
-    self.started = AtomicInt32(1)
+    started.store(1)
 
     if qos == .unspecified
     {


  fileprivate init(queue: DispatchQueue)
  {
    self.resultp = AtomicMutablePointer(nil)
    self.waiters = AtomicMutablePointer(nil)
    self.started = AtomicInt32(0)

    self.queue = queue
  }

    let p = UnsafeMutablePointer<Result<Value>>.allocate(capacity: 1)
    p.initialize(to: result)

    resultp = AtomicMutablePointer(p)
    waiters = AtomicMutablePointer(nil)
    started = AtomicInt32(1)

    self.queue = queue
  }
