Retirar casts do capítulo de alocação dinâmica e explicar o porquê
Segundo o deus dos programadores, o Stack Overflow, fazer o cast do retorno de um malloc não só é desnecessário como pode introduzir erros.
Talvez seja necessário dar uma boa olhada na seção de C de lá para corrigir e adicionar coisas assim.
Referências: