> On 2011-03-22 12:14:43, Andrew Stitcher wrote: > > Looking at the gcc documentation, it seems that the way > > __attribute((visibility=..)) is supposed to be used is the opposite way > > round to which we use in our headers (and in Visual Studio/Windows) your > > supposed to set a default which is more visible and then override it with > > less visible member functions. > > > > Doing it that way looks like it would avoid the warnings you are seeing (I > > haven't tried this though so I may have it wrong in practice)
I didn't get the same impression, I'll read again. The big advantage in doing it this way is that windows does it this way and the windows folks have already defined and tested our public API for us with macros we can re-use. I also feel like it makes more sense to me to directly define the public API rather than indirectly defining it as the inverse of the non-public functions. Seems like it is more error prone to try to mark every non-public function - since that's a constantly changing set - than mark the stable set of public API functions. - Alan ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/520/#review347 ----------------------------------------------------------- On 2011-03-22 08:10:48, Alan Conway wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/520/ > ----------------------------------------------------------- > > (Updated 2011-03-22 08:10:48) > > > Review request for qpid and Andrew Stitcher. > > > Summary > ------- > > WIP: enable -fvisibility=hidden -fvisibility-inlines-hidden > > Failing with warnings: warning: lowering visibility of ... to match its type > Google suggests warning is ok, but no apparent way to disable it. > Try build with warnings off to see if the results are good. > > > Diffs > ----- > > trunk/qpid/cpp/configure.ac 1084053 > trunk/qpid/cpp/include/qmf/engine/QmfEngineImportExport.h 1084053 > trunk/qpid/cpp/include/qpid/CommonImportExport.h 1084053 > trunk/qpid/cpp/include/qpid/ImportExportDefs.h PRE-CREATION > trunk/qpid/cpp/include/qpid/agent/QmfAgentImportExport.h 1084053 > trunk/qpid/cpp/include/qpid/client/ClientImportExport.h 1084053 > trunk/qpid/cpp/include/qpid/console/ConsoleImportExport.h 1084053 > trunk/qpid/cpp/include/qpid/messaging/ImportExport.h 1084053 > trunk/qpid/cpp/src/Makefile.am 1084053 > trunk/qpid/cpp/src/qpid/broker/BrokerImportExport.h 1084053 > > Diff: https://reviews.apache.org/r/520/diff > > > Testing > ------- > > > Thanks, > > Alan > >
