title: Why this line NSNotificationCenter.defaultCenter().postNotificationName(...) throws SIGABRT
body: <p>I am playing with NSNotificationCenter in swift. This is my code in <code>main.swift</code></p>
  
  <p>import Foundation</p>
  
  <pre><code>class T: NSObject {
  
      func someAction(notification: NSNotification) {
          println(notification.userInfo)
      }
  }
  
  var dataDict = Dictionary&lt;String, String&gt;()
  dataDict["test"] = "test"
  dataDict["test1"] = "test1"
  
  
  var t = T();
  NSNotificationCenter.defaultCenter().addObserver(t, selector:"someAction", name: "someAction", object:nil)
  
  
  
  NSNotificationCenter.defaultCenter().postNotificationName("someAction", object:nil, userInfo:dataDict)
  
  let runloop = NSRunLoop.currentRunLoop();
  runloop.run();
  
  println("Done");
  </code></pre>
  
  <p>At the line <code>postNotification</code>, I got an exception:</p>
  
  <p><img src="https://i.stack.imgur.com/kISTf.png" alt="enter image description here"></p>
  
  <p>Here is some stacktrace:</p>
  
  <pre><code>2014-07-24 08:58:59.959 testswiftcli2[2171:303] -[_TtC13testswiftcli21T someAction]: unrecognized selector sent to instance 0x1005005a0
  2014-07-24 08:58:59.961 testswiftcli2[2171:303] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[_TtC13testswiftcli21T someAction]: unrecognized selector sent to instance 0x1005005a0'
  </code></pre>
  
  <p>When I tried to inspect the instance, I got this:</p>
  
  <pre><code>(lldb) po 0x1005005a0
  4300211616
  </code></pre>
  
  <p>It seems like the variable has already gone out of scope. Is it a right conclusion? </p>
  
  <p>What is the problem with the code above?</p>