aliasing bug

aliasing bug 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
   (`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.



HTML Conversion by AG2HTML.pl V2.94618 & witbrock@cs.cmu.edu