merged rules for callback on definition sites, added support for missing
case where you can mix external scopes with subsequent scope (i.e.
defines Foo bar in subsequent scope, x, y, z)