Remove side effect from assert().

This permits removing assert checks from compiled code.
diff --git a/try.h b/try.h
index 541f2d7..ff06d74 100644
--- a/try.h
+++ b/try.h
@@ -357,8 +357,8 @@
 #   define try_stack_ ((try_t_ *)pthread_getspecific(try_key_))
 #   define try_stack_set_(next) \
         do { \
-            assert(pthread_setspecific(try_key_, next) == 0 && \
-                   "try: pthread_setspecific() failed"); \
+            int ret = pthread_setspecific(try_key_, next); \
+            assert(ret == 0 && "try: pthread_setspecific() failed"); \
         } while (0)
 #else /* !PTHREAD_ONCE_INIT */
     extern try_t_ *try_stack_;