usar mi código para las funciones básicas del obligatorio 1 no implica que no deban analizar como liberara la memoria en cada caso. lo que tienes es un doble free, eso no tiene que ver ni con el compilador ni con la maquina virtual. Analiza tu código.