 
   deinit
   {
-    while tail &- head > 0
+    while (tail &- head) > 0
     {
       buffer.advancedBy(head&mask).destroy()
       head = head &+ 1

  {
    // the `empty` semaphore has already been decremented for this operation.
    OSSpinLockLock(&wlock)
    if !closed && head+capacity > tail
    {
      buffer.advancedBy(tail&mask).initialize(newElement)
      tail = tail &+ 1

  {
    // the `filled` semaphore has already been decremented for this operation.
    OSSpinLockLock(&rlock)
    if (tail &- head) > 0
    {
      let element = buffer.advancedBy(head&mask).move()
      head = head &+ 1
