 
             capture.tryBlock {
                 _ = try! actualExpression.evaluate()
-                return
-            }
-
+            }
+
+            let failureMessage = FailureMessage()
             setFailureMessageForException(
                 failureMessage,
                 exception: exception,

                userInfo: userInfo,
                closure: closure
            )
            return exceptionMatchesNonNilFieldsOrClosure(
                exception,
                named: named,
                reason: reason,
                userInfo: userInfo,
                closure: closure
            )
        }
}


    reason: String? = nil,
    userInfo: NSDictionary? = nil,
    closure: ((NSException) -> Void)? = nil) -> Predicate<Any> {
        return Predicate { actualExpression in
            var exception: NSException?
            let capture = NMBExceptionCapture(handler: ({ e in
                exception = e
