2.0.5: 2004-09-01 Martin Schulze * MSVC_Net2003/Makefile.am: Add sigc++config.h to EXTRA_DIST. * configure.ac: Bump version number to 2.0.5. * NEWS: Add ChangeLog summary for version 2.0.5. 2.0.4: 2004-08-21 Martin Schulze * tests/test_lambda.cc: Use sigc::var("\n") instead of sigc::ref("\n"). Comment out the affected lines, nevertheless. Sun FORTE and Compaq C++ can handle neither sigc::ref("\n") nor sigc::var("\n"). I see more chances fixing sigc::var("\n"). * sigc++/adaptors/lambda/macros/base.h.m4: Add a comment about a possible work around for sigc::var("\n") compiler problems. * tests/test_compatibility.cc: Remove a 'const' keyword that prevents the test case from compiling with the Sun FORTE. * tests/test_trackable.cc: Remove a 'virtual' keyword and an unused variable to avoid compiler warnings. * NEWS: Add ChangeLog summary for version 2.0.4. 2004-08-03 Martin Schulze * scripts/cxx.m4, sigc++config.h.in, configure.ac, sigc++/adaptors/lambda/macros/operator.h.m4, tests/test_lambda.cc: Rollback change from 2004-07-15: configure check SIGC_OPERATOR_OVERLOAD_AMBIGUITY is not needed - the overload ambiguity doesn't occur if the lambda operators take all arguments as const reference. * configure.ac: Bump version number to 2.0.4. 2004-08-03 James Lin * Added SIGC_API qualifier to all externally-visible non-template classes/structs. * Added #include to the files that use SIGC_API. * Added empty SIGC_API definition to sigc++config.h.in for non-MSVC compilers. I'm not sure if this is the right place to put this (probably not). * Added MSVC-specific sigc++config.h to the MSVC project directory. (The comment in it probably should be edited.) * Changed MSVC project settings to output a multi-threaded DLL, set the include paths to work (hopefully) out-of-the-box. Disabled precompiled headers, since they just complicate things and shouldn't be necessary for such a relatively project. 2004-08-01 Martin Schulze * sigc++/type_traits.h: Remove type_trait<>::instance() (was unimplemented and unused; caused problems with the MSVC). 2004-07-23 Martin Schulze * Makefile.am: Fix typo concerning distribution of libsigc++-2.0.spec. * AUTHORS: Mention our contributors for platforms Sun FORTE and Intel C++. 2004-07-15 Martin Schulze * *.h.m4: Don't call operator()() in sun_forte_workaround(); rather copy operator()(). Calling operator()() makes a copy of the arguments causing wrong results if an argument type is a reference. Hopefully fixes #147311. 2004-07-15 Martin Schulze * tests/test_lambda.cc: Break "std::cout << [expr] << a << std::endl;" into "std::cout << [expr]; std::cout << a << std::endl;". I hope this fixes #147313 where the right values for "[expr]" but wrong values for "a" were written to std::cout for some compiler with optimizations turned off. 2004-07-15 Martin Schulze * sigc++/adaptors/lambda/macros/operator.h.m4: Correct return type deduction of lambda expressions in lambda_operator*::operator()(). Might be related to bug #147313. * sigc++/adaptors/lambda/macros/group.h.m4: Use m4 macro _P_(). 2004-07-15 Martin Schulze * scripts/cxx.m4, sigc++config.h.in, configure.ac, sigc++/adaptors/lambda/macros/operator.h.m4, tests/test_lambda.cc: Add configure check SIGC_OPERATOR_OVERLOAD_AMBIGUITY for a SUN FORTE compiler problem (bug #147391). Use it to decide whether the lambda action operators may be overloaded (not doing so restricts the API slightly). * sigc++/adaptors/lambda/macros/operator.h.m4: Add some doxygen comments and remove attic code. * sigc++/adaptors/lambda/macros/base.h.m4: Add templates unwrap_lambda_type and unwrap_lambda_value() to support the non-overloaded lambda action operators. Also add some doxygen comments and remove attic code. * sigc++/adaptors/lambda/macros/group.h.m4: Fix a bug that resulted in gargabe values being passed on to the functor contained in the group adaptor (partly fixes #147313). 2004-07-11 Martin Schulze * scripts/cxx.m4, sigc++config.h.in, configure.ac, *.h.m4: Split SIGC_CXX_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD into SIGC_CXX_GCC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD and SIGC_CXX_MSVC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD. Remove LIBSIGC_TEMPLATE_PREFIX. Add template keyword to SIGC_WORKAROUND_OPERATOR_PARENTHESES depending on the configure checks. Should fix the compiler problems with MSVC. 2004-07-11 Martin Schulze * examples/hello_world.cc: Use sigc::ptr_fun instead of std::ptr_fun. (fixes bug #144846) 2004-07-11 Eric Bourque * libsigc++-2.0.spec.in: new file * configure.ac : patched generate spec file * .cvsignore: ignore generated file (Martin Schulze) * Makefile.am: distribute spec file (Martin Schulze) 2004-07-11 Murray Cumming * sigc++/connection.cc: Added some comments. * sigc++/trackable.cc: operator=(): Check for self-asignment, though I do not know of any actual bug that this fixes. Added some comments. * sigc++/trackable.h Added some doxygen documentation. 2004-07-09 Murray Cumming * tests/: Added test_disconnect_during_emit.cc, to prove that this works. 2004-07-08 Murray Cumming * tests/test_retype_return.cc: foo::operator(int): return a value. The SUN Forte 5.5 compiler complains about this, as it should. 2004-07-08 Murray Cumming * sigc++/macros/signal.h.m4: class signal*: Rename the slot_list typedef to slot_list_type, because there is already a template class called slot_type. SUN Forte 5.5 seems to complain about this and I am not surprised. The old typdef is still there for backwards compatibility, except when building with SUN Forte. 2004-07-07 Murray Cumming * scripts/cxx.m4: SIGC_CXX_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD(): Don't define the SIGC_TEMPLATE_SPECIALIZATOIN_OPERATOR_OVERLOAD C macro at all if the test fails. This might fix the build on SUN Forte. * sigc++/functors/macros/mem_fun.h.m4: Default constructor: Initialize the func_ptr_ member variable. I have no evidence that this solves any problems, but it worried me. * sigc++/functors/slot_base.h: operator bool(): Correct documentation, to use @code instead of * sigc++/macros/signal.h.m4: Remove the documentation for the parameters named first and last, because they do not exist. 2004-05-31 Martin Schulze * autogen.sh: Add '--force'-flag to the 'libtoolize'-command (bug #143425). 2.0.3: