2018-10-30 Kjell Ahlstedt 2.10.1 2018-10-30 Kjell Ahlstedt tests: Catch exceptions by const ref To avoid "error: catching polymorphic type ‘class std::range_error’ by value" 2018-10-30 Kjell Ahlstedt Update README and .gitignore 2018-10-30 Chun-wei Fan builds: Add README file for MSVC builds Let people know how Visual Studio builds can be done and the options that can be used for the builds. 2018-10-30 Chun-wei Fan builds: Remove Visual Studio 2013 projects The NMake Makefiles superseded them, so let's just remove them. This will make builds with later Visual Studio versions simpler, and will make maintaining the Visual Studio build files easier. 2018-10-30 Chun-wei Fan builds: Add NMake Makefiles This adds a set of NMake Makefiles that can be used to build libsigc++-2.10.x (and the later C++11 versions of libsigc++) with Visual Studio 2013 or later. Building the example, the tests and the benchmarking programs are supported in addition to building the main libsigc++ DLL. Note that for the C++-11 releases, we name the DLLs and LIBs as sigc-vc140-2_0.[dll|lib] or sigc-vc140-d-2_0.[dll|lib] for Visual Studio 2015 and 2017 builds as these builds link to the msvcp140[d].dll and vcruntime140[d].dll C/C++ runtime DLLs. This set of NMake Makefiles are now dist'ed in place of the Visual Studio 2013 project files. 2018-10-30 Chun-wei Fan build: Consolidate source listing into sigc++/filelist.am This is for enabling the upcoming NMake Makefiles to use this file as well, in addition to the autotools build files, to build the libsigc++ DLL. 2018-10-30 Chun-wei Fan builds: Rename MSVC_Net2013 as MSVC_NMake This is to prepare for the transition for the Visual Studio build files to NMake Makefiles. 2018-08-29 Kjell Ahlstedt slot, signal: Avoid compiler warnings from function pointer conversions gcc8 -Wextra prints a warning when a single reinterpret_cast is used for conversion between different types of function pointers. The previous fix with a union in sigc::internal::bitwise_equivalent_cast<>() is not standard C++. Rename the function to function_pointer_cast<>(), and use two reinterpret_casts as recommended in gcc's documentation. Fixes #8 2018-08-02 Kjell Ahlstedt Update libsigcplusplus.doap 2018-08-02 Kjell Ahlstedt configure.ac: Update home page and bug report address 2018-08-02 Kjell Ahlstedt README: Update contact information 2018-07-17 Kjell Ahlstedt Qualify calls to bitwise_equivalent_cast() with namespace names Otherwise indirect calls from glibmm, with its own bitwise_equivalent_cast(), can be ambiguous due to ADL (argument-dependent lookup). 2018-07-16 Kjell Ahlstedt slot, signal: Avoid compiler warnings from function pointer conversions gcc8 -Wextra prints a warning when reinterpret_cast is used for conversion between different types of function pointers. Avoid that by adding sigc::internal::bitwise_equivalent_cast<>() with a union with members of the two types of function pointers. Fixes #1 2018-07-16 Kjell Ahlstedt Revert "slot, signal: Avoid compiler warnings from function pointer conversions" This reverts commit c6262e0a477b35cd9a4a00c34f3f0a44dcd07210. This can be done in a better way by keeping the union in a template function. 2018-07-13 Kjell Ahlstedt slot, signal: Avoid compiler warnings from function pointer conversions gcc8 -Wextra prints a warning when reinterpret_cast is used for conversion between different types of function pointers. Avoid that by instead using a union with members of the two types of function pointers. Fixes #1 2017-11-09 Kjell Ahlstedt signal_base docs: Warn against deletion during emission There is no known ABI-preserving fix for a memory leak, if a signal is deleted during emission. Describe a workaround in the documentation. Bug 167714 2017-11-09 Kjell Ahlstedt slot_base::set_parent(): Create a dummy slot_rep if necessary set_parent() must always store the supplied parent pointer and cleanup function pointer, or else there may be a memory leak. The pointers are stored in slot_rep. Bug 167714 2017-07-17 Kjell Ahlstedt test_signal: Test calls to signal_base::clear() Call it both during signal emission and otherwise. Bug 784550 2017-07-17 Kjell Ahlstedt signal_impl::clear(): Don't clear the slot list during signal emission If signal_impl::clear() is called during signal emission, don't call slots_.clear(). Let signal_impl::sweep() erase all slots after the signal emission. Bug 784550 2016-11-20 Christophe Lermytte Make --disable-benchmark work Currently, when calling ./configure, the possible outcomes of the enable_benchmark variable are: ./configure -> "" ./configure --enable-benchmark -> "yes" ./configure --enable-benchmark=yes -> "yes" ./configure --enable-benchmark=no -> "yes" ./configure --enable-benchmark=hello -> "yes" ./configure --disable-benchmark -> "yes" With this commit, those values become ./configure -> "" ./configure --enable-benchmark -> "yes" ./configure --enable-benchmark=yes -> "yes" ./configure --enable-benchmark=no -> "no" ./configure --enable-benchmark=hello -> "hello" ./configure --disable-benchmark -> "no" Note that enable_benchmark is currently only being checked for being "yes" or not. Bug #774732