On Wed, Jul 12, 2006 at 02:04:37AM +0100, Tristan Wibberley wrote: > If the programmer had intended that the type should appear to not exist. > it wouldn't be defined in a header #include-able by client code. The
GCC doesn't know if the header is includable by client code; I assume that's the use Jason intended for marking classes hidden ("it belongs to this shared object and no one else can see it"). > In the examples above, client code that knows (via headers) that the > classes exist should be able to get pointers to instances via exported > functions, access any visible or virtual members, and pass the pointers > back into visible functions of the shared object - or even dereference > the pointers to pass by reference. So... what does it restrict, then? Is it just defaulting methods to hidden, as a strange form of access control? -- Daniel Jacobowitz CodeSourcery