¿Las declaraciones de función implícita en C generan realmente el código objeto?

En el curso de esta discusiónacerca de lanzar el valor de retorno demalloc muchas personas han afirmado que la declaración implícita demalloc causaría que el valor de retorno se convierta aint luego reconvertido de nuevo aT* posiblemente resultando en el truncamiento del puntero en situaciones donde:

sizeof(int) < sizeof(void*)

Esto implicaría que el compilador hace lo siguiente:

Enlaza y llama al código objeto correcto que definemallocGenera código de objeto para convertir el valor de retorno al tipo int más cortoGenera código de objeto para convertir de nuevo al tipo de puntero de destino más grande

¿Podría alguien realmente probar que esto sucede? Decir con algún código de ejemplo en 64bit Linux?

Lo haría yo mismo, pero no tengo acceso a una máquina de 64 bits.

Respuestas a la pregunta(4)

Su respuesta a la pregunta