title: @objc protocol crashes the swift compiler
body: <p>I wrote I protocol which was intended to have some <code>@optional</code> methods, but the swift compiler crashes. This works:</p>
  
  <pre><code>protocol SessionDelegate {
  
      // TODO these should all be optional
      func willOpenSession(session: Session);
      func didOpenSession(session: Session);
      func didFailOpenningSession(session: Session, error: NSError!);
  
      func willCloseSession(session: Session);
      func didCloseSession(session: Session);
  }
  </code></pre>
  
  <p>This doesn't:</p>
  
  <pre><code>@objc protocol SessionDelegate {
  
      @optional func willOpenSession(session: Session);
      @optional func didOpenSession(session: Session);
      @optional func didFailOpenningSession(session: Session, error: NSError!);
  
      @optional func willCloseSession(session: Session);
      @optional func didCloseSession(session: Session);
  }
  </code></pre>
  
  <p>Honestly, having <code>@objc</code> is enough to crash the compiler. Is there any workaround?</p>