summaryrefslogtreecommitdiff
path: root/libs/sigc++2/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'libs/sigc++2/ChangeLog')
-rw-r--r--libs/sigc++2/ChangeLog1249
1 files changed, 1249 insertions, 0 deletions
diff --git a/libs/sigc++2/ChangeLog b/libs/sigc++2/ChangeLog
new file mode 100644
index 0000000000..8e02aef058
--- /dev/null
+++ b/libs/sigc++2/ChangeLog
@@ -0,0 +1,1249 @@
+2004-10-12 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * MSVC_Net2003/*/*.vcproj, MSVC_Net2003/blank.cpp: Fix project files
+ to compile out-of-the-box and add dummy file so that .cc files get
+ recognized as c++ code files (patch from Timothy M. Shead).
+
+2004-10-10 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * sigc++/signal_base.{h,cc}, sigc++/functors/slot_base.{h,cc},
+ sigc++/functors/macros/slot.h.m4: If SIGC_NEW_DELETE_IN_LIBRARY_ONLY
+ is defined, implement signal_base::operator new/delete and
+ slot_rep::operator new/delete (suggested by Timothy M. Shead).
+ Remove old work-around from 2004-10-02 since it didn't work.
+
+2004-10-07 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * configure.ac: Update for libtool 1.5a (with support for Intel C++).
+ * MSVC_Net2003/sigc++config.h: Remove bogus '#define'
+ (reported by Timothy M. Shead <tshead@k-3d.com>).
+
+2004-10-02 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * configure.ac: Bump version number to 2.0.6.
+ * NEWS: Add ChangeLog summary for version 2.0.6.
+
+2004-10-02 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * sigc++/functors/slot_base.{h,cc}, sigc++/functors/macros/slot.h.m4:
+ Rename (typed_)slot_rep::detach to (typed_)slot_rep::destroy.
+ Call the dtor of the functor stored in typed_slot_rep from destroy().
+ A cleaner solution would be to add an additional "virtual" function
+ that calls 'delete' or a real virtual dtor. However, this would be
+ less efficient and might break the ABI. (Fixes #152323.)
+
+2004-10-02 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * sigc++config.h.in, MSVC_Net2003/sigc++config.h,
+ sigc++/signal_base.cc, sigc++/functors/slot_base.{h,cc},
+ sigc++/functors/macros/slot.h.m4: Define and use new macro
+ SIGC_NEW_DELETE_IN_LIBRARY_ONLY to ABI-compatibly move
+ all calls to new and delete into non-inline library code.
+
+2004-09-26 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * sigc++/adaptors/lambda/macros/group.h.m4: Add a missing
+ template keyword in the definition of deduce_result_type::type
+ (hopefully fixes #152327).
+
+2004-09-26 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * sigc++/macros/object_slot.h.m4: Use correct bound_mem_functor
+ variants for const (volatile) methods (fixes #148744).
+
+2004-09-01 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * docs/index.html: Correct link to lambda module.
+
+2004-09-01 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * README: Update compatibility section.
+
+2.0.5:
+
+2004-09-01 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * 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 <mschulze@cvs.gnome.org>
+
+ * 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 <mschulze@cvs.gnome.org>
+
+ * 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 <slimjimmy@mail.com>
+
+ * Added SIGC_API qualifier to all externally-visible non-template
+ classes/structs.
+ * Added #include <sigc++config.h> 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 <mschulze@cvs.gnome.org>
+
+ * sigc++/type_traits.h: Remove type_trait<>::instance()
+ (was unimplemented and unused; caused problems with the MSVC).
+
+2004-07-23 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * 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 <mschulze@cvs.gnome.org>
+
+ * *.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 <mschulze@cvs.gnome.org>
+
+ * 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 <mschulze@cvs.gnome.org>
+
+ * 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 <mschulze@cvs.gnome.org>
+
+ * 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 <mschulze@cvs.gnome.org>
+
+ * 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 <mschulze@cvs.gnome.org>
+
+ * examples/hello_world.cc: Use sigc::ptr_fun instead of std::ptr_fun.
+ (fixes bug #144846)
+
+2004-07-11 Eric Bourque <ericb@computer.org>
+
+ * 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 <murrayc@murrayc.com>
+
+ * 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 <murrayc@murrayc.com>
+
+ * tests/: Added test_disconnect_during_emit.cc, to prove that this
+ works.
+
+2004-07-08 Murray Cumming <murrayc@murrayc.com>
+
+ * 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 <murrayc@murrayc.com>
+
+ * 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 <murrayc@murrayc.com>
+
+ * 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 <code>
+ * 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 <mschulze@cvs.gnome.org>
+
+ * autogen.sh: Add '--force'-flag to the 'libtoolize'-command (bug #143425).
+
+2.0.3:
+
+2004-05-30 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * configure.ac: Bump version number to 2.0.3.
+ * NEWS: Add ChangeLog summary for version 2.0.3.
+ * sigc++/macros/signal.h.m4: Fix segfault on emission of unconnected signal.
+ * tests/test_signal.cc, tests/test_accumulated.cc: Emit unconnected signal.
+ * sigc++/macros/object_slot.h.m4: Suppress compiler warning at
+ dynamic_cast<>-test (tested by Christof Petig/Timothy M. Shead).
+
+2.0.2:
+
+2004-05-22 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * configure.ac: Bump version number to 2.0.2.
+ * NEWS: Add ChangeLog summary for version 2.0.2.
+
+2004-05-20 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * sigc++/macros/signal.h.m4: If a custom accumulator is specified
+ invoke it on signal emission even if the signal's slot list is empty.
+ (This used to be the case in libsigc++-1.2 as pointed out by Timothy.)
+
+2004-05-20 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * sigc++/macros/object_slot.h.m4: Suppress compiler warning at
+ dynamic_cast<>-test (suggested by Timothy M. Shead).
+
+2004-05-01 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * README: Updated for libsigc++-2.0.
+
+2.0.1:
+
+2004-04-27 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * configure.ac: Bump version number to 2.0.1.
+ * NEWS: Add ChangeLog summary for version 2.0.1.
+ * sigc++/adaptors/lambda/macros/base.h.m4: Fixed documentation.
+ * sigc++/adaptors/macros/bind.h.m4: Hide work-arounds from doxygen.
+ * scripts/cxx.m4, sigc++config.h.in, configure.ac,
+ sigc++/adaptors/macros/bind.h.m4: Removed configure check. It
+ showed that the Apple gcc can also compile the sophisticated version
+ of the work-around.
+
+2004-04-26 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * sigc++/macros/object_slot.h.m4: Modified test for SigC::Object
+ inheritance so that it also works if SigC::Object is virtual base.
+ (Fixes bug 141094 reported by Jonathan Brandmeyer)
+
+2004-04-26 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * scripts/cxx.m4: Updated the configure check. It would probably
+ have succeeded on the Apple.
+
+2004-04-26 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * sigc++/adaptors/macros/bind.h.m4: Add work-arounds for
+ bind<-1>::deduce_result_type compilation error on Apple gcc 3.3.
+ * scripts/cxx.m4, sigc++config.h.in, configure.ac: Add configure
+ check for the compilation error above.
+ * sigc++/adaptors/lambda/macros/operator.h.m4: Replace _A with
+ _Aa. _A is a reserved keyword on Apple gcc 3.3 (Spundun Bhatt).
+ (fixes bug #10444 reported by Spundun Bhatt)
+
+2004-04-19 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * sigc++/signal_base.cc: Fixed serious bug in signal_base::impl():
+ Only reference a newly created object (initial reference).
+ (This fixes bug #140269 reported by Andris.)
+
+2004-04-19 Murray Cumming <murrayc@murrayc.com>
+
+ * scripts/cxx.m4: Updated the operator() template check, because it
+ failed with gcc 3.4 (from cvs). Apparently the template keyword can
+ only be used from another template.
+
+2.0.0:
+
+2004-04-06 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * configure.ac: Bump version number to 2.0.0.
+ * NEWS: Add ChangeLog summary for version 2.0.0.
+ * TODO, AUTHORS: Bring up to date.
+ * sigc++-2.0.pc.in, Makefile.am: 1.9 -> 2.0
+ * Added more documentation.
+
+2004-04-10 Murray Cumming <murrayc@murrayc.com>
+
+ * sigc++/connection.[h|cc]: Implement blocked() to avoid undefined
+ symbol linker error.
+
+2004-04-08 Murray Cumming <murrayc@murrayc.com>
+
+ * dist the scripts directory.
+
+1.9.16:
+
+2004-04-06 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * configure.ac: Bump version number to 1.9.16.
+ * NEWS: Add ChangeLog summary for version 1.9.16.
+
+2004-04-02 Murray Cumming <murrayc@murrayc.com>
+
+ * sigc++/connection.cc: Make block() and unblock() always return a
+ value, to fix compiler warnings. Patch from bug #138620 by
+ Alexander Nedotsukov.
+
+2004-04-02 Murray Cumming <murrayc@murrayc.com>
+
+ * Fix the compile of examples/member_method.cc. Bug #131701 from
+ Kirill Smelkov. I also made the examples build as part of the regular
+ build.
+
+2004-04-02 Murray Cumming <murrayc@murrayc.com>
+
+ * sigc++config.h.m4: Remove every undef apart from the one we need, to
+ avoid clashes, because we #include this in a public header.
+
+2004-03-25 Murray Cumming <murrayc@murrayc.com>
+
+ * scripts/cxx.m4, configure.in, sigc++config.h.in: Rename the
+ template_keyword check to template_specialization, because the problem
+ is with or without the keyword.
+ * sigc++/adaptors/macros/adaptor_trait.h.m4: Define
+ SIGC_WORKAROUND_OPERATOR_PARENTHESES, which calls either operator() or
+ sun_forte_workaround() depending on the result of the compiler test.
+ * many .m4 files: Add sun_forte_workaround methods that call the
+ operator() methods. Put them in #ifdefs so that only SUN Forte C++
+ sees them.
+
+2004-03-22 Murray Cumming <murrayc@murrayc.com>
+
+ * Makefile.am, sigc++/Makfile.am: Fix the sigc++config.h.in disting,
+ to fix make distcheck.
+
+2004-03-21 Murray Cumming <murrayc@murrayc.com>
+
+ * Rename config.h.in to sigc++config.h.in so that gtkmm does not
+ include some other config.h at strange times - fixes a problem in
+ the gtkmm demos. This should really be in the sigc++ directory, but
+ that seems to add that as an include path, which causes the STL
+ headers to include sigc++/signal.h instead of some STL signal.h header.
+
+2004-03-20 Murray Cumming <murrayc@murrayc.com>
+
+ * Makefile.am: Install the config.h platform-specific header.
+ * sigc++-2.0.pc.in: Report the include path for config.h
+
+2004-03-20 Murray Cumming <murrayc@murrayc.com>
+
+ * Added config.h.in, using autoheader, from which config.h will be
+ generated, so we can detect compiler features.
+ * configure.ac: Added AC_CONFIG_HEADER(config.h) to generate config.h
+ from config.h.in.
+ * scripts/cxx.m4: Added this directory and file, with a
+ SIGC_CXX_TEMPLATE_KEYWORD_OPERATOR_OVERLOAD macro that defines
+ the SIGC_TEMPLATE_KEYWORD_OPERATOR_OVERLOAD C macro.
+ * autogen.sh: Added -I scripts to the aclocal call, so that it finds
+ the m4 macro for configure.ac.
+ * sigc++/adapators/macros/adaptor_trait.h.m4: Include config.h and
+ use SIGC_TEMPLATE_KEYOWRD_OPERATOR_OVERLOAD.
+
+2004-03-18 Martin Schulze <mschulze@cvs.gnome.org>
+
+ * tests/test_mem_fun.cc, tests/test_ptr_fun.cc: Don't test
+ making functors from overloaded methods with partial template
+ specialization. Not portable among different compilers (SUN FORTE).
+ * adaptors/macros/apdaptor_trait.h.m4: Only gcc seems to use the
+ notation A.template operator()<...>(...) => adapt preprocessor check
+ for #define LIBSIGC_TEMPLATE_PREFIX. TODO: replace with configure check.
+
+2004-03-13 Murray Cumming <murrayc@murrayc.com>
+
+ * g++ 3.4 (pre-release) build fixes:
+ * sigc++/macros/signal.h.m4: slot_iterator_buf::operator*():
+ Use blocked() and empty() instead of non-existant blocked_and_empty().
+ * sigc++/functors/macros/mem_fun.h.m4: memfun_functor*::operator()():
+ Use this->func_ptr_ instead of just func_ptr_.
+ * sigc++/adaptors/macros/deduce_result_type.h.m4: Use
+ T_functor::template deduce_result_type<> instead of just
+ T_functor::deduce_result_type<>.
+ * sigc++/adaptors/lambda/macros/base.h.m4, operator.h.m4, group.h.m4::
+ Use template keyword again. operator[](): Use this->value_ instead of
+ just value_.
+ * sigc++/adaptors/lambda/macros/bind/m4: Use template keyword, and
+ this-> again.
+ * sigc++/adaptors/macros/compose.h.m4, hide.h.m4, bind_return.h.m4,
+ exception_catch.h.m4:
+ rettype.h.m4, rettype_return.h.m4: Use template keyword,and this-> again
+
+1.9.15:
+
+2004-02-27 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * configure.ac: Bump version number to 1.9.15.
+ * NEWS: Add ChangeLog summary for version 1.9.15.
+
+2004-02-27 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/functors/macros/slot.h.m4: Make the unnumbered slot templates'
+ copy ctors use the copy ctors of the base class. Fixes bug #24698.
+ * tests/test_slot.cc: Test copy ctor (Bryan Forbes).
+
+2004-02-27 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * tests/type_functor_trait.cc: Bring it up-to-date (use sigc::ref).
+ Make it work with the SUN Forte.
+
+2004-02-24 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/type_traits.h: Make is_base_and_derived<> work with the SUN Forte.
+
+2004-02-19 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/type_traits.h: Make is_base_and_derived<> platform independant.
+ * sigc++/adaptors/lambda/macros/base.h.m4: Make lambda_core<> ctors
+ explicit. Remove an unused ctor from lambda_core<T_type, true>.
+
+2004-02-14 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/functors/slot_base.h, sigc++/functors/macros/slot.h.m4:
+ Move some documentation to slot_base.h.
+ * sigc++/signal_base.h, sigc++/macros/signal.h.m4:
+ Move some documentation to signal_base.h.
+
+ API addition:
+ * sigc++/functors/macros/slot.h.m4: Add numbered slot# templates.
+ Make unnumbered slot templates inherit from slot#.
+
+ API change:
+ * sigc++/functors/macros/mem_fun.h.m4: Allow for methods of the object's
+ base types to be passed into sigc::mem_fun(). (Used to be the case in
+ libsigc++-1.2).
+
+2004-02-13 Murray Cumming <murrayc@usa.net>
+
+ * sigc++/functors/slot_base.[h|cc], sigc++/trackable.[h|cc]: Create
+ and use a typedef for the destroy_notify callback functions, to avoid
+ confusion function pointer declaration syntax in the API.
+
+2004-02-13 Murray Cumming <murrayc@murrayc.com>
+
+ * Moved implementation to .cc files:
+ * sigc++/functors/: Added slot_base.[h|cc] which contains non-template
+ code that was previsouly in the generated functors/slot.h and
+ non-generated slot.cc files. All non-inline implementation is now in
+ the .cc file.
+ * sigc++/functors/macros/slot.m4: Removed the code that has been moved
+ to slot_base.[h|cc].
+ * sigc++/: Added signal_base.[h|cc] which contains non-template code
+ that was previously in the generated signal.h and non-generated
+ signal.cc file. All non-inline implementation is now in the .cc file.
+ * sigc++/macros/signal.m4: Removed the code that ahs been moved to
+ signal.cc
+ * sigc++/connector.[h|cc]: method implementation moved to the .cc file.
+
+1.9.14:
+
+2004-02-13 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * configure.ac: Bump version number to 1.9.14.
+ * NEWS: Add ChangeLog summary for version 1.9.14.
+
+2004-02-09 Murray Cumming <murrayc@usa.net>
+
+ * sigc++/functors/macros/slot.h.m4: slot_base: Added operator bool(), needed to
+ check for a slot that is created with the default constructor. This was
+ present in libsigc++ 1.2 also.
+
+2004-02-06 Murray Cumming <murrayc@usa.net>
+
+ * Makefile.am: Build the docs directory, by adding it to SUBDIRS.
+ * docs/Doxyfile.in: Updated to be more glibmm-like.
+ * Added some @deprecated doxygen bits.
+ * sigc++/macros/signal.h.m4: Call base constructor from signal_base
+ constructor - this is an error-as-warning when building gtkmm.
+
+1.9.13:
+
+2003-11-30 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * configure.ac: Bump version number to 1.9.13.
+ * NEWS: Add ChangeLog summary for version 1.9.13.
+ * Makefile.am, MSVC_Net2003/Makefile.am, configure.ac:
+ Distribute MS .Net project files.
+ * sigc++/adaptors/macros/[bind,hide].h.m4: Correct and add
+ documentation. Make hide_functor ctor explicit.
+
+2003-11-11 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/adaptors/macros/[bind,hide].h.m4: Change to zero-based
+ argument index in numbered bind() and hide() overload
+ (Agreement on the mailing list).
+ Support binding up to CALL_SIZE arguments with one bind adaptor.
+ (Requested by joey yandle and others).
+ Only support binding of multiple arguments in unnumberd overloads
+ to keep the API simple (Requested by Murray Cumming).
+ * tests/test_[bind,hide,functor_trait].cc, sigc++/bind.h:
+ Reflect API changes in compatibility module and test cases.
+
+2003-11-10 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/adaptors/macros/[bind,hide].h.m4: Add unnumbered
+ bind() and hide() overloads to make specifying the argument
+ position optional (Proposed by Jeff Franks).
+ * tests/test_[bind,hide].cc: Test unnumbered bind() and hide().
+ * sigc++/adaptors/macros/adaptor_trait.h.m4:
+ Change "#ifdef MSVC" to "#ifdef _MSC_VER" (Roel Vanhout).
+
+2003-11-09 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/functors/macros/slot.h.m4: Change functor type in
+ typed_slot_rep to adaptor_trait::adaptor_type<T_functor>
+ and use explicit function template instantiation in
+ internal::slot_call::call_it(). Avoids copying of arguments
+ in call_it() and enables binding of object instances
+ to class methods through bind() (Reported by Jeff Franks).
+ * tests/test_bind.cc: Test binding object instances to
+ class methods through bind().
+ * sigc++/adaptors/adaptors.h: Include retype[_result].h.
+ * sigc++/adaptors/macros/adaptor_trait.h.m4:
+ - Add documentation.
+ - Mark some c-tors as explicit.
+ - Remove ununsed operator T_functor&() from adaptor_functor.
+ * sigc++/adaptors/macros/deduce_result_type.h.m4:
+ Rewrite parts of the documentation.
+ * sigc++/adaptors/macros/bind.h.m4: Add documentation.
+ * sigc++/functors/macros/mem_fun.h.m4: Remove unnecessary
+ explicit markers. Minor fixes to documentation.
+ * sigc++/functors/macros/functor_trait.h.m4:
+ Minor fixes to documentation.
+
+1.9.12:
+
+2003-11-04 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * configure.ac: Bump version number to 1.9.12.
+ * NEWS: Add ChangeLog summary for version 1.9.12.
+
+2003-11-03 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/macros/signal.h.m4: Document accumulators.
+ Move slot_iterator_buf into namespace internal. Since
+ accumulators have the iterator type as a template argument
+ there is no need to expose this very internal type.
+ * sigc++/functors/macros/*.m4: Regroup documentation.
+ Documentation of the core parts of the library should be
+ complete by now.
+
+2003-11-02 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * Improve documentation of the core parts of the library.
+ * tests/test_ptr_fun.cc: Test ptr_fun() with static
+ member functions.
+
+2003-11-02 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * Move all .m4 files into new subdirectories
+ sigc++/[...]/macros. Install the .m4 files on
+ "make install" (Reported by Ron Steinke).
+
+2003-11-01 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/[class,method,object]_slot.h.m4: Include
+ sigc++/functors/mem_fun.h (Reported by Ron Steinke).
+
+2003-11-01 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/adaptors/lambda/operator.h.m4: Add negation
+ operator I have completely overlooked until now.
+ * sigc++/tests/test_lambda.cc: Test negation operator.
+
+2003-11-01 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/[class_slot,method_slot,object_slot,hide].h.m4,
+ sigc++/signal.h.m4, sigc++/functors/mem_fun.h.m4:
+ - Use a shorter notation for ..._mem_function variants.
+ - Change order of mem_funcotr<>'s template arguments to
+ match std::mem_fun_t and to be more consistent with adaptors.
+ - Use ::sigc::slot's implicit ctor in compatibility module.
+ * sigc++/adaptors/lambda/operator.h.m4: Change some
+ lambda action names to match action names in std.
+
+ API addition:
+ * sigc++/adaptors/retype.h.m4: New file adding
+ adaptor retype.
+ * sigc++/Makefile.am: Build and distribute new file.
+ * tests/test_retype.cc: New file testing adaptor retype.
+ * MSVC_Net2003/tests/test_retype/test_reytype.vcproj,
+ tests/Makefile.am: Build and distribute new test case.
+
+2003-11-01 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * MSVC_Net2003: New directory containing project
+ files for Visual Studio .Net 2003.
+ Credits to Roel Vanhout <roel@riks.nl>!
+
+2003-11-01 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/retype.h.m4: Use LIBSIGC_TEMPLATE_PREFIX
+ in explicit function template instantiations.
+ * sigc++/type_traits.h: Add template specialization
+ for arrays (T_type[N]) to disable non-working member
+ type_trait<T_type[N]>::instance().
+ * sigc++/visit_each.h: Remove more disturbing
+ limit_derived_target<>::operator() overloads.
+ (Should have noticed earlier that they are unnecessary.)
+ * sigc++/adaptors/deduce_result_type.h.m4,
+ sigc++/adaptors/lambda/operator.h.m4,
+ sigc++/functors/functor_trait.h.m4,
+ tests/test_[bind,compose,exception_catch,hide,lambda].cc:
+ Completely removed support for typeof(). We don't need
+ it any more and it is completely non-standard!
+
+2003-10-30 Cedric Gustin <cedric.gustin@swing.be>
+
+ * configure.ac: Added test of win32 platform. Commented
+ out AM_DISABLE_SHARED (DLLs are shared libraries).
+ * sigc++/Makefile.am: added a few LDFLAGS for win32
+ DLLs.
+
+2003-10-30 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/signal.h.m4: Add SigC::Signal#<>::slot().
+ * sigc++/slot.h.m4: Comment out make_slot() work-around.
+ * sigc++/adaptors/bind.h.m4: Remove unnecessary brackets
+ in template argument lists. They are confusing MSVC.
+ * sigc++/adaptors/*.h.m4, sigc++/adaptors/lambda/*.h.m4:
+ Use LIBSIGC_TEMPLATE_PREFIX in explicit function
+ template instantiations.
+ * sigc++/tests/test_*.cc:
+ - Include <string> where std::string is used.
+ - Use double instead of float.
+
+2003-10-27 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/retype.h.m4: Cleanup.
+ * TODO: Bring it up to date.
+
+1.9.11:
+
+2003-10-26 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * configure.ac: Bump version number to 1.9.11.
+ * NEWS: Add ChangeLog summary for version 1.9.11.
+
+2003-10-26 Martin Schulze <teebaum@cvs.gnome.org>
+
+ Compatiblity module:
+ * sigc++/signal.h.m4: Move definition of compatiblity
+ classes SigC::SignalN to here.
+ * sigc++/connection.h:
+ - Add connection::connected().
+ - Add compatibility typedef SigC::Connection.
+ * sigc++/bind.h, sigc++/bind_return.h,
+ sigc++/class_slot.h.m4, sigc++/hide.h.m4,
+ sigc++/method_slot.h.m4, sigc++/object.h,
+ sigc++/object_slot.h.m4, sigc++/retype.h.m4,
+ sigc++/retype_return.h sigc++/slot.h.m4,
+ sigc++/compatibility.h:
+ New files to complete compatibility module.
+ Split content of compatibility.h.m4 among the new files.
+ * sigc++/compatibility.h.m4: Removed.
+ * Makefile.am: Build and distribute new files.
+ * tests/test_compatibility.cc: Test new stuff.
+
+ Fixes:
+ * sigc++/functors/slot.h.m4: Fix copy constructor and
+ operator=() of slot template.
+ * sigc++/adaptors/bind.h.m4: Fix deduce_result_type
+ template specializations. bind<0>() probably compiles
+ with gcc-3.3, now.
+
+2003-10-26 Martin Schulze <teebaum@cvs.gnome.org>
+
+ Fixes:
+ * sigc++/functors/slot.{cc,h.m4}:
+ - Fix notification process: don't defer detaching of a
+ slot from all referred trackables during signal emission!
+ - Size optimization: replace virtual functions from
+ struct typed_slot_rep with function pointers in slot_rep
+ (reduces size of a typical typed_slot_rep instantiation
+ by 30% !!!).
+ * tests/test_slot.cc: Test sigc::slot more thoroughly.
+ * sigc++/functors/mem_fun.h.m4: Fix visit_each().
+ * sigc++/adaptos/bind_return.h.m4: Add support for
+ sigc::ref().
+ * tests/test_bind_return.cc: Use sigc::ref().
+ * sigc++/signal.h.m4: Avoid compiler warning about
+ uninitialized variable r_ in emit().
+ * sigc++/visit_each.h: Cleanup.
+
+ API additions:
+ * sigc++/adpators/lambda/operators.h.m4: Add
+ lambda actions sigc::{reinterpret,static,dynamic}_cast_
+ to support explicit parameter conversion.
+ * tests/test_lambda.cc: Test sigc::static_cast_.
+ * sigc++/adaptors/retype_return.h.m4: New file adding
+ adaptor retype_return (and hide_return).
+ * sigc++/Makefile.am: Build and distribute new file.
+ * tests/test_retype_return.cc: New file testing
+ adaptor retype_return (and hide_return).
+ * tests/Makefile.am: Build and distribute new test case.
+
+2003-10-25 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/visit_each.h: Remove disturbing
+ limit_derived_target<>::operator() overloads.
+ * sigc++/adaptors/bind.h.m4: Add support for sigc::ref().
+ * tests/test_bind.cc: Test sigc::ref().
+ * sigc++/adaptors/lambda/{operator,group,base}.h.m4:
+ - Move support for sigc::ref() from lambda_core<> into
+ lambda operator and lambda group creator functions.
+ - Add missing visit_each() overload for lambda<> template.
+ * tests/test_lambda.cc: Test auto-disconnection.
+ TODO: Fix a strange bug that leads to "Bus error"
+ during auto-disconnection.
+
+1.9.10:
+
+2003-10-23 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * configure.ac: Bump version number to 1.9.10.
+ * NEWS: Add ChangeLog summary for version 1.9.10.
+
+2003-10-23 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/functors/{functor_trait,slot}.h.m4:
+ Move definition of struct nil into functor_trait.h.
+
+2003-10-23 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * configure.ac: Disable typeof() compiler checks.
+ * sigc++/adaptors/bind.h.m4: Remove unnecessary
+ deduce_result_type<> template specializations.
+
+2003-10-20 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/adaptors/compose.h.m4:
+ Correct order of typedefs for good. (Patch from Jeff Franks.)
+
+1.9.9:
+
+2003-10-20 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/connection.h: Add constructor that takes
+ a sigc::slot_base& to support 3rd-party slot lists
+ like they are used in glibmm/gtkmm.
+ * sigc++/functors/slot.h.m4: Make sigc::slot::call_type public.
+ (Fixes compile problems reported by Jeff Franks.)
+ * sig++/type_traits.h: Don't use long long in
+ sigc::is_base_and_derived.
+ (Fixes compile problems reported by Jeff Franks.)
+ * sigc++/adaptors/{bind,compose,hide,exception_catch}.h.m4:
+ Correct order of typedefs. (Repoted by Jeff Franks.)
+ * configure.ac: Bump version number to 1.9.9.
+ * NEWS: Add ChangeLog summary for version 1.9.9.
+
+1.9.8:
+
+2003-10-19 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/functors/slot.h.m4: Define doxygen group functors.
+ * configure.ac: Bump version number to 1.9.8.
+ * NEWS: Add ChangeLog summary for version 1.9.8.
+
+2003-10-19 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * NEWS: Add announces of versions 1.9.6 and 1.9.7.
+ * sigc++/compatibility.h.m4: New file. Defines namespace SigC.
+ namespace SigC should be API compatible to libsigc++-1.2.
+ * sigc++/Makefile.am: Build compatibility.h.
+ * tests/test_compatibility.cc, tests/Makefile.am:
+ Add test case for compatibility module.
+ * docs/index.html: Change group names.
+ * sigc++/sigc++.h: Include connection.h.
+ * sigc++/connection.{cc,h}:
+ - Rename dependency to destroy_notify_callback.
+ - Change parameter name in set_slot() from d to data.
+ - Fix operator=(): Add "return *this;"
+ - Get rid of namespace functor.
+ - Corrections in documentation.
+ * sigc++/signal.{cc,h.m4}:
+ - Add reference counter to signal_impl. Replaces "bool destroy_".
+ - Move signal_base, slot_iterator[_buf], slot_list out of
+ namespace internal. They are part of the public API.
+ - Add convenience function signal#::make_slot().
+ - Get rid of namespace functor.
+ - Corrections in documentation.
+ * sigc++/trackable.{cc,h}:
+ - Rename dependency to destroy_notify_callback.
+ - Rename trackable::clear() to trackable::notify_callbacks().
+ - Corrections in documentation.
+ * sigc++/type_traits.h: Add documentation.
+ * sigc++/visit_each.h:
+ - Get rid of namespace functor.
+ - Add documentation.
+ * sigc++/adaptors[/lambda]/*: Get rid of namespace functor.
+ * sigc++/functors/{functor_trait.h,ptr_fun.h.m4,mem_fun.h.m4}:
+ - Get rid of namespace functor.
+ - Corrections in documentation / add documentation.
+ * sigc++/functors/slot.{cc,h.m4}:
+ - Move slot_base out of namespace internal. It's public API.
+ - Get rid of one-letter-parameter-names.
+ - Get rid of namespace functor.
+ - Corrections in documentation.
+ * tests/*.cc: Get rid of "using namespace ...".
+
+2003-09-10 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/adaptors/lambda/{base,operators}.h.m4:
+ Add subscript ([]) and assign (=) operator. I think there are now
+ enough operators available to make any future power user happy.
+ The only one missing is the comma operator and if we added it
+ the logical consequence would be to also add if(), switch(), do(),
+ etc. lambda expressions which are really out of place in libsigc++.
+ * sigc++/type_traits.h: Fix is_base_and_derived<> for const types.
+ * tests/test_lambda.cc: Test new operators.
+
+1.9.7:
+
+2003-09-05 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * configure.ac: Bump version number to 1.9.7.
+
+2003-09-03 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/adaptors/lambda/operator.h.m4:
+ - Restructure so that the size of the generated source file stays
+ reasonable for 34 operators: There are only two lambda templates
+ lambda_operator and lambda_operator_unary. The action is an additional
+ template parameter. A small template lambda_action[_unary] is specialized
+ for all actions.
+ - Add most operators that boost::lambda supports. Missing operators are
+ "=", "[]", "," and support for pointer arithmetic. I don't know if it's
+ worth adding these. In libsigc++, the purpose of lambda operators is to
+ provide some extra functionality for the group adaptor.
+ * tests/test_lambda.cc:
+ Test pre-increment, address and dereference operator.
+
+2003-08-31 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/reference_wrapper.h, sigc++/type_traits.h, sigc++/Makefile.am:
+ New file reference_wrapper.h provides ref() to specify that adaptors/lambdas
+ should take a reference to the object passed into ref() instead of a copy.
+ * tests/test_lambda.cc:
+ - Test group() with mem_fun().
+ - Use ref() where lambdas should store references to objects.
+ - Test var() and constant().
+ * sigc++/adaptors/lambda/base.h.m4:
+ - Support ref() in return type deduction.
+ - Add var() and constant() which create lambdas for usage with lambda operators.
+ * sigc++/adaptors/lambda/operator.h.m4:
+ - Fix return type deduction.
+ - Remove operator{+,-,*,...} overloads added on 2003-08-29. ref() is way cleaner.
+ * sigc++/adaptors/lambda/group.h.m4,
+ sigc++/adaptors/bind.h.m4, sigc++/adaptors/compose.h.m4,
+ sigc++/adaptors/exception_catch.h.m4, sigc++/adaptors/hide.h.m4:
+ Fix return type deduction.
+
+2003-08-29 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * tests/test_lambda.cc: Add more tests.
+ * sigc++/adaptors/lambda/select.h.m4, sigc++/adaptors/lambda/lambda.cc.m4:
+ Make _1, _2, ... constant.
+ * sigc++/adaptors/lambda/operator.h.m4:
+ Add operator{+,-,*,...} overloads to distinguish between const and non-const objects.
+ Store references to non-const objects rather than copies.
+ This allows expressions like e.g. std::cout << _1.
+ * sigc++/adaptors/lambda/base.h.m4, sigc++/adaptors/lambda/group.h.m4:
+ Remove void specializations. Functors returning void are tested and work fine.
+
+2003-08-27 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * tests/test_callof.cc, tests/test_deduce_result_type.cc:
+ Rename, correct and improve this test case.
+ * tests/Makefile.am: Build and run test_deduce_result_type
+ instead of test_callof.
+
+2003-08-27 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * Update TODO.
+
+2003-08-27 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/adaptors/hide.h.m4: Remove usage of callof_ignore_arg<>.
+ * sigc++/callof.h.m4, sigc++/adaptors/deduce_result_type.h.m4,
+ sigc++/functors/functor_trait.h.m4:
+ Remove the first and move deduce_result_type templates from
+ functor_trait.h.m4 into new file deduce_result_type.h.m4.
+ * sigc++/Makefile.am, sigc++/sigc++.h, sigc++/adaptors/adaptor_trait.h.m4:
+ Build and include sigc++/adaptors/deduce_result_type.h instead of callof.h.
+ * sigc++/functors/slot.h.m4: Document struct nil.
+
+2003-08-24 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/functors/functor_trait.h.m4: Simplify usage of convenience
+ macro SIGC_FUNCTORS_HAVE_RESULT_TYPE:
+ namespace sigc{ namespace functor{ SIGC_FUNCTORS_HAVE_RESULT_TYPE }}
+
+2003-08-24 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/functors/functor_trait.h,m4, sigc++/adaptors[/lambda]/*.h.m4:
+ Merge adaptor return type deduction and typeof() into
+ sigc::functor::deduce_result_type. Use it for all adaptors.
+ * tests/test_compose.cc: Only test multi-type get-functor if
+ typeof() if supported.
+
+2003-08-24 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/adaptors[/lambda]/*.h.m4:
+ - Remove unnecessary void specializations. In fact, only the one
+ for sigc::functor::exception_catch<> is needed and I don't really
+ understand why. For the lambda stuff the void specializatoins are
+ just commented out at the moment.
+ - Make typeof() optional. Surprisingly, I got the lambda stuff working
+ without typeof()! The test suite doesn't catch all cases yet, so maybe
+ some thing are still not working.
+ TODO: Implement configure check.
+ * tests/test_bind.cc, tests/test_compose.cc tests/test_exception_catch.cc,
+ tests/test_hide.cc, tests/test_lambda.cc:
+ Only test multiple functor return types if typeof() is supported.
+
+2003-08-06 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/trackable.{cc,h}: Add function trackable::clear().
+
+2003-06-24 Andreas Rottmann <rottmann@users.sourceforge.net>
+
+ * TODO: Minor tweaks.
+
+2003-06-23 Andreas Rottmann <rottmann@users.sourceforge.net>
+
+ * docs/reference/Doxyfile.in: Use these variables.
+ * docs/reference/Makefile.am (html/index.html): Provide doxygen
+ with SRCDIR and TOP_SRCDIR environment variables.
+
+ * sigc++/functors/slot.h.m4: Make slot::call_type typedef public;
+ this fixes a g++ 3.3 error in signal.h.
+
+ * sigc++/signal.h.m4: Make the signal::accumulated class public;
+ this fixes a g++ 3.3 error in test_accumulated.cc.
+
+2003-06-15 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/functor/slot.h.m4: Correct typing error in docs.
+ * sigc++/functor/ptr_fun.h.m4: Document the whole thing.
+
+2003-05-31 Murray Cumming <murrayc@usa.net>
+
+ * Reference documentation: Rearranged the groups to make it all
+ a bit more like the libsigc++ 1.2 reference documentation.
+ Corrected some spelling and grammar too.
+ This needs a lot of work. The text is very hard to read and it's
+ generally not appropriate for a user of the code who doesn't
+ care about the internals. But it's not impossible - our examples
+ should show us what we need to say in the documentation.
+ We probably need some more groups for the extra stuff, like we do
+ in libsigc++ 1.2.
+
+2003-05-29 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/signal.h.m4: Fix documentation.
+ * sigc++/connection.h, sigc++/functor/slot.h.m4:
+ Document the whole thing.
+
+2003-05-29 Martin Schulze <teebaum@cvs.gnome.org>
+
+ * sigc++/signal.h.m4:
+ - Remove bogus operator() from unnumbered signal<> and
+ signal<>::accumulated templates.
+ - Document the whole thing.
+
+ * docs/index.html: Fix some links.
+
+2003-04-06 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * TODO, configure.ac, Makefile.am, docs/*:
+ Add Doxygen framework.
+
+2003-04-06 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/callof.h.m4, sigc++/adaptors/*, tests/test_callof.cc:
+ Move sigc::callof<> to sigc::functor::internal::callof<>.
+
+ * sigc++/functors/mem_fun.h.m4, tests/test_mem_fun.cc:
+ Add new types [bound_][const_]volatile_mem_functor, visit_each()
+ and mem_fun() overloads for volatile qualifier.
+ Add ctor overloads in bound_*mem_functor and mem_fun() overloads
+ that take reference instead of pointer.
+
+2003-03-26 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * Change "closure" to "slot" throughout sigc++2 (file names,
+ class names, member variables, documentation, etc.).
+
+2003-03-26 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * TODO: Rewrite to reflect recent changes as well as recent discussions.
+
+2003-03-24 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/adaptors/bind_return.h.m4: Make the adaptor's data member
+ public so that visit_each() can access it.
+
+ * sigc++/adaptors/lambda/*.h.m4: More fixes. Add a note about
+ malfunctioning typeof() (probably compiler bug in gcc-3.2).
+
+ * tests/*.cc: Test references. Fix compose equivalent in test_lambda.
+
+2003-03-24 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/Makefile.am, sigc++/functors/functor_trait.h[.m4],
+ sigc++/adaptors/adaptor_trait.h.m4: Move detection of function
+ and member method pointers' return types from adaptor_trait into
+ functor_trait. (We'll use functor_trait rather than adaptor_trait for
+ our lambda stuff.) functor_trait.h needs to be generated from .m4 now.
+
+ * sigc++/functors/functor_trait.h.m4: Add convenience macros:
+ - SIGC_FUNCTORS_HAVE_RESULT_TYPE indicates that the existance of
+ T_functor::result_type should be assumed for all unknown functors.
+ - SIGC_FUNCTOR_TRAIT(T_functor, T_result) explicitly specifies the
+ result type of a functor.
+ ("typename functor_trait<T_functor>::result_type") is used to
+ determine the return type of our adaptors' operator()() overloads.
+
+ * sigc++/adaptors/[lambda/]*.h.m4: Various fixes in visit_each() and
+ operator()() overloads to make these operator()() overloads usable.
+ Most of them were just commented out before. Some adaptor types also
+ have void specializations, now.
+
+ * sigc++/adaptors/lambda/group.h.m4: Change syntax from
+ "[some_functor] % grp([args])" to "group([some_functor], [args])"
+ like we agreed on the ml some time ago.
+
+ * sigc++/tests/test_[all adaptors].cc: Test stuff that didn't work
+ before.
+
+2003-03-22 Murray Cumming <murrayc@usa.net>
+
+ * Added pgk-config file, from a mystery person in bug #108857
+
+2003-03-22 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * tests/test_bind.cc: Test and show how to use functor_trait
+ for user defined or 3rd-party functors so that a
+ bind<0>([functor],[arg1])() call with no arguments can return a value.
+
+2003-03-20 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/callof.h.m4: Add explanations. Comment in / create templates
+ callof_safe[#]. Unfortunately they don't work for functors with overloaded
+ operator() so we don't use it for now. At least everything is documented.
+
+ * sigc++/functors/functor_trait.h, sigc++/functors/*.h.m4: Add back
+ functor_base compiler hint. We're using it now in adaptor_functor<>.
+
+ * sigc++/adaptors/{adaptor_trait,bind}.h.m4: Make operator() overloads
+ with no arguments return the result of the functor invocation.
+ Fix multiple bind<0>().
+ * tests/test_bind.cc: Test the stuff that's working now.
+
+2003-03-16 Murray Cumming <murrayc@usa.net>
+
+ * Added sigc++/sigc++.h, like in libsigc++ 1.2
+ * examples: Added member_method example, which uses a class method
+ and which demonstrates disconnection.
+
+1.9.6:
+
+2003-03-11 Andreas Rottmann <rottmann@users.sourceforge.net>
+
+ * sigc++/Makefile.am: Use substitution references instead of
+ $(patsubst). Is shorter and fixes the strange-dirs-in-dist-tarball
+ bug.
+
+2003-03-09 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/connection.h: Add block() capability.
+
+2003-03-09 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/signal.{cc,h.m4}: Add flag signal_impl::destroy_
+ and function signal_impl::destroy(). Use them to defer
+ the destruction of the signal_impl object during signal
+ emission.
+
+ * tests/test_disconnect.cc: Add tests for the connection
+ class and for deleting signals during emission.
+
+2003-03-09 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/connection.{cc,h}, sigc++/Makefile.am:
+ - New files that add a connection class. Objects of this
+ class are constructed from closure list iterators and can
+ be used to disconnect the refered closure. As opposed to
+ iterators they stay valid beyond the lifetime of the closure.
+
+2003-03-09 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/functors/closure.{cc,h.m4}, sigc++/signal.cc:
+ - Rename closure_{base,rep}::[set_]dependency_ -> [set_]parent_.
+ - Make closure_rep inherit trackable. This allows for
+ connection objects that stay valid beyond the life time
+ of the refered closure.
+ - Make some one-line-functions inline again.
+
+2003-03-08 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/trackable.cc: BUGFIX in trackable_dep_list::clear()
+
+2003-03-08 Andreas Rottmann <rottmann@users.sourceforge.net>
+
+ * sigc++/Makefile.am: Rewritten so we can build lambda cleanly.
+ * sigc++/Makefile.am_fragment: Removed.
+
+ * sigc++/functors/Makfile.am: Removed.
+ * sigc++/adaptors/Makefile.am: Removed.
+ * sigc++/adaptors/lambda/Makefile.am: Removed.
+ * configure.ac (AC_OUTPUT): Remove the above Makefiles.
+
+ * tests/Makefile.am: Re-included lambda test.
+
+2003-03-07 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/signal.{cc,h.m4}:
+ - signal_emit#<>: New templates replacing signal#<>::caller.
+ The purpose of these templates is implementing the emit
+ function and optimizing signal emission for the case that
+ no accumulator is used via template specializations.
+ - default_accumulator<>: Removed. The default for T_accumulator
+ in signal#<> now is nil. An example how to use accumulators
+ is available in tests/test_accumulator.cc.
+ - signal_{base,impl}: Move the implementation of signal_base's
+ interface to signal_impl. An object of this class is
+ dynamically allocated when first connecting a closure to
+ the signal. This drastically reduces the size of empty signals
+ and allows for future addition of a reference counter to make
+ it safe to delete a signal during emission.
+ - Directly work on closure_rep during signal emission. This
+ seems to be quicker than using the closure templates.
+ - Document the classes. Restructure the header file a bit.
+
+ * sigc++/functors/closure.h.m4: Make closure_base::rep_ data
+ member public, so that signal emission can directly work on it.
+
+ * tests/test_size.cc: Add an entry for signal_impl.
+
+2003-03-07 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/functors/closure.{cc,h.m4}:
+ - closure_base: BUGFIXES in ~closure_base() and operator=().
+ - Mark some functions with the inline keyword. This seems to
+ help gcc 3.2 to optimize signal emission and (dis)connection.
+ - Document the classes. Restructure the header file a bit.
+
+2003-03-07 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/trackable.{cc,h}: Make trackable allocate a
+ trackable_dep_list object dynamically when adding the first
+ dependency. (This reduces the size of objects, that are not
+ refered by a closure by 4 bytes (50%) and increases the size
+ of objects that are refered by a closure by 4 bytes (50%)
+ on a 32 bit architecture => This reduces total memory use
+ when >50% of the trackables are not refered by a closure.)
+ Document the classes.
+
+2003-03-05 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * tests/Makefile.am, tests/test_size.cc, tests/test_accumulated.cc:
+ Add two test cases. test_size is showing the size of public and
+ internal structures. (Which apart from empty signals are smaller
+ than the sizes of the equivalent libsigc++-1.2 structures.)
+ test_accumulated is a test for the template signal<>::accumulated<>
+ at the same time showing the use of accumulators in libsigc++2.
+
+ * Offtopic: My note about binary sizes from 2003-02-10 is wrong.
+ Stripped libsigc++2 test binaries are about 8-10k in size.
+
+2003-03-05 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/visit_each.h: BUGFIX in template specialization
+ limit_derive_target<T_Target*,T_action>::with_type<false,T_type>:
+ Add non-const overloads for static void execute_() avoiding
+ compile time errors.
+
+2003-02-16 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * tests/Makefile.am, tests/test_disconnect.cc:
+ Add testcase with a mixed connection & disconnection sequence.
+
+2003-02-16 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/signal.cc: Bugfix in signal_base::insert():
+ Set notification function in the newly created copy of
+ slot_ rather than in slot_ itself.
+
+2003-02-10 Martin Schulze <MHL.Schulze@t-online.de>
+
+ * sigc++/signal.h.m4: Comment in typedefs for iterator types in
+ the signal#<> class template. Make signal#<>::connect() return an
+ iterator for convenience.
+ (Note that the first change increases the binary size of
+ tests/test_signal from 201k to 204k, the second change to 206k.)
+
+2003-01-23 Murray Cumming <murrayc@usa.net>
+
+ * sigc++/adaptors/lambda is disable temporarily (not built and
+ not distributed) because it gets built before its parent
+ directory, but #includes generated sources in the parent directory.
+
+2003-01-22 Murray Cumming <murrayc@usa.net>
+
+ * Added Andreas Rottman's example.
+
+2003-01-22 Murray Cumming <murrayc@usa.net>
+
+ * Applied Andreas Rottman's make dist fixes.
+
+2003-01-14 Murray Cumming <murrayc@usa.net>
+
+ * Added whitespace to make the code more readable.
+