- scoper item injection can no longer affect generate scoping - cast conversion injects functions into the top level when possible - cast conversion considers loop variables to be local - `else if` generate blocks are still scopes at the current level