On Wed, May 20, 2009 at 10:44 AM, Monty Taylor <mo...@inaugust.com> wrote:
> Kenton Varda wrote: > > > > > > On Wed, May 20, 2009 at 12:35 AM, <cosmin.cremare...@gmail.com > > <mailto:cosmin.cremare...@gmail.com>> wrote: > > > > "./google/protobuf/stubs/once.h", line 114: Warning (Anachronism): > > Formal argument 2 of type extern "C" void(*)() in call to > pthread_once > > (_once*, extern "C" void(*)()) is being passed void(*)(). > > > > > > This warning seems to be saying that pointers to functions with extern > > "C" are not compatible with pointers to normal functions. If this is > > the case then that's a serious problem and I don't know what to do about > > it. But I think it's more likely that this is just bogus. > > AIUI, it stems from the fact that the Sun Studio C and C++ compilers are > separate... but I'm not 100% sure about that. In general, if you are > passing a pointer to a function that was compiled in C++ land, Sun > Studio is going to complain if you don't declare that function to have C > linkage. I had to do that for all of my callback functions in Drizzle. :) > > Now - as for it _actually_ being a problem, I don't know - I can ask > someone though if you think it's important to learn. If it doesn't work then libprotobuf is completely broken on sun studio, because we rely on being able to pass non-extern-C functions to pthread_once. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Protocol Buffers" group. To post to this group, send email to protobuf@googlegroups.com To unsubscribe from this group, send email to protobuf+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/protobuf?hl=en -~----------~----~----~----~------~----~------~--~---