#ifndef EFL_EINA_EINA_ALIGNED_UNION_HH_ #define EFL_EINA_EINA_ALIGNED_UNION_HH_ namespace efl { namespace eina { namespace _mpl { template struct max; template struct max : std::integral_constant {}; template struct max : max<(A0 > A1 ? A0 : A1), Args...> {}; } // Workaround needed for GCC before 5.1 template struct aligned_union { static constexpr std::size_t alignment_value = _mpl::max::value; typedef typename std::aligned_storage < _mpl::max::value , alignment_value >::type type; }; } } #endif