title: Unexpectedly found nil while assigning TO an optional
body: <p>In the code below, in func setTimer(timer:Timer) I am assigning timer.timeLabel to timerLabel.text. When I run that code, it gives me an error, saying that "Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value." I'm certain that it isn't referring to timer.timerlabel because I can run print(timer.timerlabel) and it prints the string. Therefore, that value isn't nil.</p>
  
  <p>When I attempt to manually set timerLabel.text = "", I get the same error on that line. This means that the warning concerns the variable I'm assigning to, not the one I'm assigning from.</p>
  
  <p>The same thing happens with the other labels as well (hoursLabel.text = time.hours, etc.)</p>
  
  <p>QUESTION: Why should it matter if the value I'm assigning to is nil? What might be causing this, considering that I'm using similar code in a tableViewCell and it works fine? I've attempted rebuilding the viewController and reconnecting all the IBOutlets. I've cleaned the project and still no luck.</p>
  
  <pre><code>import UIKit
  
  class TimerControlVC: UIViewController {
  
  @IBOutlet weak var timerLabel: UILabel!
  
  @IBOutlet weak var hoursLabel: UILabel!
  
  @IBOutlet weak var minutesLabel: UILabel!
  
  @IBOutlet weak var secondsLabel: UILabel!
  
  let tf = TimeFormatter()
  
  func setTimer(timer: Timer){
  
      print(timer.timerLabel)
  
      timerLabel.text = timer.timerLabel
      let time = tf.formatOutput(seconds: timer.time)
      hoursLabel.text = time.hours
      minutesLabel.text = time.minutes
      secondsLabel.text = time.seconds
  
    }
  
  }
  </code></pre>