Como imprimir o endereço de uma função?

eu deixogcc compilar o seguinte exemplo usando-Wall -pedantic:

#include <stdio.h>

int main(void)
{
  printf("main: %p\n", main); /* line 5 */
  printf("main: %p\n", (void*) main); /* line 6 */

  return 0;
}

Eu recebo:

main.c:5: warning: format ‘%p’ expects type ‘void *’, but argument 2 has type ‘int (*)()’
main.c:6: warning: ISO C forbids conversion of function pointer to object pointer type

A linha 5 fez o meu alterar o código como na linha 6.

O que estou perdendo para remover o aviso ao imprimir o endereço de uma função?

questionAnswers(4)

yourAnswerToTheQuestion