using de gnu99 standart
modifing the macro dieIfFail