title: Swift "h" must be bound in every pattern error - Switch problems
body: <p>What is the cause of this error in the switch statement "h must be bound in every pattern"?</p>
  
  <p>I'm basically trying to use h as a variable for hour, make sure that it isn't nil (because hour is initially an optional value, and then see if it's greater than 17). I know I'm doing this wrong somewhere, but what is that pesky little 'h must be bound in every pattern' error?</p>
  
  <pre><code>let date = NSDate()
  let calendar = Calendar.current
  let components = calendar.dateComponents([.hour], from: date as Date)
  let hour = components.hour
  
  
  switch hour {
  case let h, (h as Int) != nil, h &gt;= 17:
      return true
  default:
      return false        
  }
  </code></pre>