Node:aliasing bug, Next:Alice and Bob, Previous:Alderson loop, Up:= A =

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.

The Jargon File, Version 4.2.2, 20 Aug 2000 · 第 122 / 1941 题