title: Xcode issue Type 'XYZController' does not conform to protocol
body: <p>I have an iOS project and after implementing a 3rd party library to my project via Pods, I'm getting an error:</p>
  
  <blockquote>
    <p>Type 'XYZController' does not conform to protocol</p>
  </blockquote>
  
  <p>When I click on the error and I add the protocol subs, Xcode adds the already implemented function (<code>cardForItemAt()</code>).</p>
  
  <p>However, when I created a new project from scratch, and implemented it the very same way, I don't have any error messages. </p>
  
  <p>Anyone has any idea what can cause this issue? What can I do in this case?
  I've cleaned the build, the derived data, and restarted Xcode, but same error.</p>
  
  <p>Here is my ViewController which fails:</p>
  
  <pre><code>import UIKIt
  import VerticalCardSwiper
  
  class MainViewController: UIViewController, VerticalCardSwiperDelegate, VerticalCardSwiperDatasource  {
      private var cardSwiper: VerticalCardSwiper!
  
      private var contactsDemoData: [Contact] = [
          Contact(name: "John Doe", age: 33),
          Contact(name: "Chuck Norris", age: 78),
          Contact(name: "Bill Gates", age: 62),
          Contact(name: "Steve Jobs", age: 56)
      ]
  
      override func viewDidLoad() {
          super.viewDidLoad()
          cardSwiper = VerticalCardSwiper(frame: self.view.bounds)
          cardSwiper.delegate = self
          cardSwiper.datasource = self
          cardSwiper.register(MainCard.self, forCellWithReuseIdentifier: "MainCard")
          view.addSubview(cardSwiper)
      }
  
      func cardForItemAt(verticalCardSwiperView: VerticalCardSwiperView, cardForItemAt index: Int) -&gt; CardCell {
          let cardCell = verticalCardSwiperView.dequeueReusableCell(withReuseIdentifier: "MainCard", for: index) as! MainCard
          let _ = contactsDemoData[index]
          cardCell.setRandomBackgroundColor()
          return cardCell
      }
  
      func numberOfCards(verticalCardSwiperView: VerticalCardSwiperView) -&gt; Int {
          return contactsDemoData.count
      }
  
      func willSwipeCardAway(card: CardCell, index: Int, swipeDirection: SwipeDirection) {
          // called right before the card animates off the screen.
      }
  
      func didSwipeCardAway(card: CardCell, index: Int, swipeDirection: SwipeDirection) {
          contactsDemoData.remove(at: index)
      }
  }
  
  class MainCard: CardCell {
      public func setRandomBackgroundColor(){
          let randomRed:CGFloat = CGFloat(arc4random()) / CGFloat(UInt32.max)
          let randomGreen:CGFloat = CGFloat(arc4random()) / CGFloat(UInt32.max)
          let randomBlue:CGFloat = CGFloat(arc4random()) / CGFloat(UInt32.max)
          self.backgroundColor = UIColor(red: randomRed, green: randomGreen, blue: randomBlue, alpha: 1.0)
      }
  
      override func layoutSubviews() {
          self.layer.cornerRadius = 12
          super.layoutSubviews()
      }
  }
  </code></pre>
  
  <p>I don't use storyboards at all in the project.</p>