On Mon, Jan 12, 2015 at 3:55 AM, <
koryl...@gmail.com> wrote:
> I was really surprised when everything worked. Is there anytime when
> overriding make or its friends would be useful?
To be clear, you're not 'overriding' the built-in make(), you're
creating a new variable called 'make' within the scope of main().
This makes the built-in make() inaccessible within main() but doesn't
effect it outside of main().
The variable called 'make' inside main() is said to 'shadow' the
built-in make().
This is one of the useful properties of block scoping.