> Usually its best to use a different name rather than shadowing > something. And one more issue: when local toplevel names do not shadow imported ones, library author may add some name which is clashing with your public name and your software become uncompilable. When such shadowing is allowed, such issues are not popping up. Vag.