The code contains a callable, block, or other code element in
which the same variable is used to control more than one unique task or store
more than one instance of data.
The code is structured in a way that relies too much on using
or setting global variables throughout various points in the code, instead of
preserving the associated information in a narrower, more local
context.
The source code uses symbolic constants, but it does not
sufficiently place the definitions of these constants into a more centralized or
isolated location.
The product or code uses machine-dependent functionality, but
it does not sufficiently encapsulate or isolate this functionality from
the rest of the code.
The product relies on third-party components that are not
actively supported or maintained by the original developer or a trusted proxy
for the original developer.
The code uses a data representation that relies on low-level
data representation or constructs that may vary across different processors,
physical machines, OSes, or other physical components.