You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I just noticed that kvs.h has some function definitions that are not enclosed in an "extern C" directive after the merge of #1223. Is there a test we can add to catch this and any future slip-ups?
Maybe something that runs through the public symbols defined in libflux-core.so et al and generates C++ code that includes the flux headers and references the symbols, then attempt to link that program to ensure the C++ compiler did not mangle the C symbols? That may be an impractical proposition but thought I'd throw it out there in case others have some good ideas of how to do it.
The text was updated successfully, but these errors were encountered:
I can't think of anything more practical. It probably isn't a big deal though, because fixing it doesn't change the compilation of the libraries. And a user can always work around by adding their own extern "C" wrapper. The bigger issue is finding things that won't actually compiler under C++, and we would only find those issues by actually compiling everything under C++. And like you said, that might not be that practical.
I just noticed that
kvs.h
has some function definitions that are not enclosed in an "extern C" directive after the merge of #1223. Is there a test we can add to catch this and any future slip-ups?Maybe something that runs through the public symbols defined in libflux-core.so et al and generates C++ code that includes the flux headers and references the symbols, then attempt to link that program to ensure the C++ compiler did not mangle the C symbols? That may be an impractical proposition but thought I'd throw it out there in case others have some good ideas of how to do it.
The text was updated successfully, but these errors were encountered: