+
+ /*
+ * Avoid a -Wreturn-type-c-linkage warning with clang.
+ * gcc is more permissive with regards to this warning, but
+ * clang is right that a structure containing a _const_ structure is not
+ * a trivial type in the eyes of the C++ standard, theoritically affecting its
+ * compatibility with C from an ABI standpoint:
+ * A trivial class is a class that is trivially copyable and has one or
+ * more default constructors, all of which are either trivial or deleted and
+ * at least one of which is not deleted.
+ *
+ * A const member implicitly deletes lttng_payload_view's constructor,
+ * making it non-trivial. This is not a problem for the moment as we are
+ * transitioning all code to C++11.
+ */
+#if !defined(__cplusplus)
+ const
+#endif
+ struct lttng_dynamic_pointer_array _fd_handles;
+