Denis Doroshenko said: > So how do you specify that a function should be visible only to the > local compilation unit? Or, how do you keep others from using your > locally-scoped (but not declared static) function in a global context?
>> why would you even want that (moreover in opensource)? hide for what reason? << I'm not a fan of C++, for many reasons. However some (not all) of the principles of OOP are conducive to good design practice. One of these has to do with distinguishing between private and public functions (I won't say variables; I avoid globals like the plague) within a module. The public interface is all-you-need-to-know about the module. The private (static) stuff is in the none-of-your-business category. There's a myth that complex software has to be buggy. I don't believe in it. The key lies in managing complexity. Hiding the internals of a module is one of the tools that allows us to manage complexity. Steve http://www.fivetrees.com [demime 1.01d removed an attachment of type application/ms-tnef which had a name of winmail.dat]