Ciao a tutti, ho scritto un semplicissimo programmino per capire meglio il funzionamento delle funzioni in mcheck.h, io voglio rilevare un memory leak, e ho scritto questo:

codice:
int foo(){
char *string; 
string = (char*)malloc(2048); 
if(string == -1) return -1; 

return 0; 
}

void main(){
mtrace();
 
  while(1) 
        foo(); 

muntrace(); 
}
Come si può vedere, la funzione foo alloca la memoria per la stringa senza mai rilasciarla, questo dovrebbe creare un memory leak, ma non viene mai rilevato. Infatti, eseguendo: mtrace ./eseguibile ottengo "No memory leaks.". Ora mi chiedo..perchè? E' evidente che ci dovrebbe essere.....