Sommario:
Definizione - Cosa significa Stale Pointer Bug?
Un bug puntatore stantio si riferisce a una categoria di delicati errori di programmazione che potrebbero sorgere in codici che conducono un'allocazione dinamica, in particolare mediante la funzione del linguaggio C "malloc" o suo equivalente.
Un bug puntatore stantio è anche noto come bug di aliasing.
Techopedia spiega Stale Pointer Bug
Nei casi in cui vari puntatori indirizzano un determinato blocco di memoria, può accadere che la memoria venga liberata o riallocata mediante un particolare alias e quindi referenziata tramite un'altra. Questo può portare a una perdita delicata e forse sporadica rispetto alla storia di allocazione e allo stato dell'arena malloc.
Se non viene creato alcun alias per la memoria allocata, questo tipo di bug può essere facilmente evitato. Un'altra opzione per evitare bug puntatori obsoleti è l'uso di un linguaggio di livello superiore come Lisp che incorpora un garbage collector.
Il termine bug puntatore stantio è attualmente collegato alla programmazione C; tuttavia, questo bug era già presente in modo molto simile in Fortran e ALGOL 60 negli anni '60.