Complications to Dataflow Analysis
The Single-Assignment Rule
??Variables used as "scratchpad" temporaries (assigned a value then re-assigned another value within the same section of program) create false dependencies between the old value and the new value of the variable.
??Apply rule that a variable may only be written to once within a scope.
A := A+1 ???next A := A+1
Applicative or Functional Languages
??No goto's, global or static variables, call-by-reference or aliasing
??Enforces the single-assignment rule