     flags.enqueueJob = true
 
     var groupOption = TaskOptionRecord.TaskGroup(group: _group)
-
-    // Create the asynchronous task future.
-    _ = Builtin.createAsyncTask(flags.bits, UnsafeRawPointer(&groupOption)._rawValue, operation)
+    withUnsafeBytes(of: &groupOption) { optionsBuffer in
+      // Create the asynchronous task future.
+      _ = Builtin.createAsyncTask(
+          flags.bits, optionsBuffer.baseAddress?._rawValue, operation)
+    }
 
     return true
   }

    flags.addPendingGroupTaskUnconditionally = true

    var groupOption = TaskOptionRecord.TaskGroup(group: _group)

    // Create the asynchronous task future.
    _ = Builtin.createAsyncTask(flags.bits, UnsafeRawPointer(&groupOption)._rawValue, operation)
  }

  /// Add a child task to the group.

    flags.enqueueJob = true

    var groupOption = TaskOptionRecord.TaskGroup(group: _group)
    withUnsafeBytes(of: &groupOption) { optionsBuffer in
      // Create the asynchronous task future.
      _ = Builtin.createAsyncTask(
          flags.bits, optionsBuffer.baseAddress?._rawValue, operation)
    }

    return true
  }
