Index: uspace/lib/cpp/src/future.cpp
===================================================================
--- uspace/lib/cpp/src/future.cpp	(revision e8f48ea0fe35689c3c62ea0abf56b36993ae665d)
+++ uspace/lib/cpp/src/future.cpp	(revision 0eea8074c66c65bc6f0b4084447318c307178819)
@@ -84,5 +84,14 @@
     const char* future_error::what() const noexcept
     {
-        return code().message().c_str();
+        /*
+         * FIXME
+         * Following code would be optimal but the message string is
+         * actually destroyed before the function returns so we would
+         * be returning a dangling pointer. No simple fix available, hence
+         * we use the ugly hack.
+         */
+        //return code().message().c_str();
+#define QUOTE_ARG(arg) #arg
+        return "future_error, see " __FILE__ ":" QUOTE_ARG(__LINE__);
     }
 }
