2014-04-26 10:52:28 -04:00
|
|
|
aliasing bug
|
|
|
|
|
2014-04-26 11:54:15 -04:00
|
|
|
n. A class of subtle programming errors that can arise in code that does
|
|
|
|
dynamic allocation, esp. via malloc (3) or equivalent. If several pointers
|
|
|
|
address (are aliases for ) a given hunk of storage, it may happen that the
|
|
|
|
storage is freed or reallocated (and thus moved) through one alias and then
|
|
|
|
referenced through another, which may lead to subtle (and possibly
|
|
|
|
intermittent) lossage depending on the state and the allocation history of
|
|
|
|
the malloc arena. Avoidable by use of allocation strategies that never alias
|
|
|
|
allocated core, or by use of higher-level languages, such as LISP , which
|
|
|
|
employ a garbage collector (see GC ). Also called a stale pointer bug. See
|
|
|
|
also precedence lossage , smash the stack , fandango on core , memory leak ,
|
|
|
|
memory smash , overrun screw , spam. Historical note: Though this term is
|
|
|
|
nowadays associated with C programming, it was already in use in a very
|
|
|
|
similar sense in the Algol-60 and FORTRAN communities in the 1960s.
|
|
|
|
|