// ::enable_if_t runs a ::sequence of statements when its condition holds // the statements inside are separated by commas and each one is still committed ::enable_if_t< ::is_same<::remove_cv_t<::int32_t>, ::int32_t>::value, ::sequence< ::declare<::name<'x'>, ::decltype(::difference<'C', 'A'>)>::commit, ::emit<::decltype(::value_of<::name<'x'>>)>::commit > >::commit; // this one never runs, so nothing is printed and nothing is asserted ::enable_if_t< ::false_type::value, ::sequence< ::static_assert<::false_type::value>::commit, ::emit<::decltype(::difference<'Z', 'A'>)>::commit > >::commit; // an empty sequence is allowed, for when you have nothing to say ::enable_if_t<::true_type::value, ::sequence<>>::commit;