aneira mais simples de determinar o tipo de retorno da funç

Dada uma função muito simples, mas longa, como:

int foo(int a, int b, int c, int d) {
    return 1;
}

// using ReturnTypeOfFoo = ???

Qual é a maneira mais simples e concisa de determinar o tipo de retorno da função ReturnTypeOfFoo, neste exemplo:int) em tempo de compilação sem repetir os tipos de parâmetros da função (apenas pelo nome, pois é sabido que a função não possui sobrecargas adicionais)?

questionAnswers(3)

yourAnswerToTheQuestion