On Sunday, January 5, 2025, Frederick Virchanza Gotham wrote:

    consteval unsigned DoubleFactorial(unsigned const arg)
    {
        [constexpr arg : carg];
        return 2u * Factorial<carg>::value;
    }



Two possible alternative syntaxes:

consteval unsigned DoubleFactorial(unsigned const arg)
{
    constexpr unsigned carg = [constexpr arg];
    return 2u * Factorial<carg>::value;
}

consteval unsigned DoubleFactorial(constexpr unsigned arg)
{
    return 2u * Factorial<arg>::value;