Thanks! That looks like it ought to fix it.
I updated the Sandbox with the proposed fix, and was able to successfully build and run the tests and examples on MSVC 9 and GCC 4. Please let me know if that fixes the issue for MSVC 7.1.
Jeremy
David Matz wrote:
> error: error C2039: 'boost::get': Ist kein Element von
> 'boost::extensions::shared_library'
Jeremy Pack wrote:It seems to me that the compile error isn't caused by Boost.PreProcessor.
> Please add the command line option /P to your build - this will output
> the preprocessed version of your file test_extension_and_optional.cpp.
> Then send this to me - I might be able to figure out what is going on.
> It looks like one of the preprocessor macros used by
> Boost.PreProcessor isn't working
Actually I think I've found a workaround: Explicitly qualify the
shared_library::get member function call in extension/convenience.hpp (line 29),
(by adding the class name, "shared_library::") and the MSVC 7.1 error message
disappears!
HTH, Niels
PS Here's the patch:
Index: convenience.hpp
===================================================================
--- convenience.hpp (revision 44584)
+++ convenience.hpp (working copy)
@@ -26,7 +26,7 @@
return;
}
void (*func)(factory_map &) =
- lib.get<void, factory_map &>(external_function_name);
+ lib.shared_library::get<void, factory_map &>(external_function_name);
if (!func) {
return;