3 2012-10-18 Murray Cumming <murrayc@murray.com>
5 Update the Doxyfile.in syntax.
7 * docs/reference/Doxyfile.in: By running doxygen -u
10 2012-10-17 Kjell Ahlstedt <kjell.ahlstedt@bredband.net>
12 Add some missing newin{}.
14 * docs/reference/Doxyfile.in: Add ALIASES newin.
15 * sigc++/functors/macros/functor_trait.h.m4: Add newin{2,2,11} to
16 SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE.
17 * sigc++/signal_base.h: Add newin{2,4} to signal_impl::blocked(), block() and
18 signal_base::blocked(), block(), unblock(). Bug #153780.
20 2012-10-12 Kjell Ahlstedt <kjell.ahlstedt@bredband.net>
22 signal_base: Add blocked(), block(), unblock().
24 * sigc++/signal_base.[h|cc]: Add signal_impl::blocked(), block() and
25 signal_base::blocked(), block(), unblock(). Bug #153780.
29 2012-09-20 Andris Pavenis <andris.pavenis@iki.fi>
31 Fix comma operator in lambda expressions.
33 * sigc++/adaptors/lambda/macros/operator.h.m4: Add lambda_action<>
34 specialization for comma operator (operator,()).
35 * tests/test_cpp11_lambda.cc:
36 * tests/test_lambda.cc: Add a test case for the comma operator. Bug #342911.
38 2012-09-19 Kjell Ahlstedt <kjell.ahlstedt@bredband.net>
40 Add SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE.
42 * sigc++/adaptors/lambda/macros/base.h.m4:
43 * sigc++/adaptors/lambda/macros/group.h.m4:
44 * sigc++/functors/macros/functor_trait.h.m4:
45 * tests/test_cpp11_lambda.cc: Replace the preprocessor macro
46 SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH(C_keyword) with
47 SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE. Bug #672555.
49 2012-09-10 Kjell Ahlstedt <kjell.ahlstedt@bredband.net>
51 Use std::size_t and std::ptrdiff_t.
53 * sigc++/macros/signal.h.m4: Use std::size_t and std::ptrdiff_t instead
54 of ::size_t and ::ptrdiff_t. Only the std versions are required to be
55 declared in <cstddef>.
56 * sigc++/signal_base.h: Use std::size_t instead of ::size_t. (I did not change
57 MSVC++-only code in this file and other files.)
59 2012-09-07 Kjell Ahlstedt <kjell.ahlstedt@bredband.net>
61 Fix 'make check' with gcc 4.7.
63 * sigc++/adaptors/lambda/macros/base.h.m4: Define sigc::unwrap_lambda_value()
64 before it's used in sigc::lambda::operator[]() and operator=().
65 * sigc++/adaptors/lambda/macros/group.h.m4: Fix the C++11 examples in the
66 documentation as in test_cpp11_lambda.cc.
67 * tests/test_cpp11_lambda.cc: Only variables with automatic storage duration
68 shall be captured in C++11 lambda expressions.
70 2012-08-28 Kjell Ahlstedt <kjell.ahlstedt@bredband.net>
72 Update .gitignore and tests/.gitignore
74 * .gitignore: Add *~ (gedit's backup files).
75 * tests/.gitignore: Add missing executable test files.
77 2012-08-28 Kjell Ahlstedt <kjell.ahlstedt@bredband.net>
79 Add SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH for C++11 lambda expressions.
81 * sigc++/functors/macros/functor_trait.h.m4: Add the preprocessor macro
82 SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH(C_keyword), which makes it possible to
83 assign C++11 lambda expressions with any return type to slots.
84 Thanks to Chow Loong Jin, who posted similar code on libsigc-list.
85 * sigc++/adaptors/lambda/macros/base.h.m4:
86 * sigc++/adaptors/lambda/macros/group.h.m4: Add information on C++11 lambda
87 expressions to the documentation of lambda expressions and sigc::group().
88 * tests/Makefile.am: Add test_cpp11_lambda.cc.
89 * tests/test_cpp11_lambda.cc: New test case, showing that most uses of
90 libsigc++'s lambda expressions can be replaced by standard C++11 lambda
91 expressions. Bug #672555.
93 2012-03-19 Kjell Ahlstedt <kjell.ahlstedt@bredband.net>
95 Enable test_lambda in 'make check'.
97 * tests/Makefile.am: Enable test_lambda in 'make check'.
98 * tests/test_lambda.cc: Comment out the tests with sigc::ref() in lambda
99 functions' parameter lists. See Bug #669128.
103 2011-07-21 Thomas Rydzynski <qsorix@rydznet.pl>
105 Mention visit_each() in the documentation of sigc::adapts.
107 * sigc++/adaptors/macros/adaptor_trait.h.m4: Mention that a user-supplied
108 adaptor must be accompanied by a specialization of template function
109 visit_each(). Correct some minor errors in the example of a user-supplied
110 adaptor. Bug #486373.
112 2011-07-19 Kjell Ahlstedt <kjell.ahlstedt@bredband.net>
114 Add a test case for the previous commit.
117 * tests/test_bind_refptr.cc: A version of this test is also in glibmm.
118 Note that this includes a copy/paste of RefPtr.
119 See Bug #564005#14 (Alexander Shaduri)
121 2011-07-14 Kjell Ahlstedt <kjell.ahlstedt@bredband.net>
123 slot_rep: Avoid access to deleted object in notify().
125 * sigc++/functors/slot_base.cc: slot_rep::notify() calls disconnect() before
126 destroy(). If disconnect() has deleted the slot_rep object, destroy() is not
131 2011-02-22 Kjell Ahlstedt <kjell.ahlstedt@bredband.net>
133 trackable: Avoid calling the same callback function twice
135 * sigc++/trackable.cc: Invalidate a callback function entry in
136 trackable_callback_list::remove_callback() when the list is being cleared.
139 2011-02-04 Kalev Lember <kalev@smartlink.ee>
141 Fix the build with GCC 4.6
143 * sigc++/signal_base.h: Include <cstddef> for size_t.
145 2010-10-12 David King <davidk@openismus.com>
147 Documentation changes
149 * *.h.m4: Minor changes to documentation to fix up code example
150 formatting, by removing the additional two spaces of indentation.
151 Additionally, fix some spelling and grammar mistakes and typos.
153 2010-09-27 Armin Burgmeier <armin@arbur.net>
155 * MSVC_Net2005/libsigc++2.sln:
156 * MSVC_Net2005/libsigc++2.vcproj:
157 * MSVC_Net2005/tests/test_accumulated/test_accumulated.vcproj:
158 * MSVC_Net2005/tests/test_bind/test_bind.vcproj:
159 * MSVC_Net2005/tests/test_bind_return/test_bind_return.vcproj:
160 * MSVC_Net2005/tests/test_compose/test_compose.vcproj:
161 * MSVC_Net2005/tests/test_deduce_result_type/test_deduce_result_type.vcproj:
162 * MSVC_Net2005/tests/test_disconnect/test_disconnect.vcproj:
163 * MSVC_Net2005/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcproj:
164 * MSVC_Net2005/tests/test_exception_catch/test_exception_catch.vcproj:
165 * MSVC_Net2005/tests/test_functor_trait/test_functor_trait.vcproj:
166 * MSVC_Net2005/tests/test_hide/test_hide.vcproj:
167 * MSVC_Net2005/tests/test_mem_fun/test_mem_fun.vcproj:
168 * MSVC_Net2005/tests/test_ptr_fun/test_ptr_fun.vcproj:
169 * MSVC_Net2005/tests/test_retype/test_retype.vcproj:
170 * MSVC_Net2005/tests/test_retype_return/test_retype_return.vcproj:
171 * MSVC_Net2005/tests/test_signal/test_signal.vcproj:
172 * MSVC_Net2005/tests/test_size/test_size.vcproj:
173 * MSVC_Net2005/tests/test_slot/test_slot.vcproj:
174 * MSVC_Net2005/tests/test_trackable/test_trackable.vcproj:
175 * MSVC_Net2008/libsigc++2.sln:
176 * MSVC_Net2008/libsigc++2.vcproj:
177 * MSVC_Net2008/tests/test_accumulated/test_accumulated.vcproj:
178 * MSVC_Net2008/tests/test_bind/test_bind.vcproj:
179 * MSVC_Net2008/tests/test_bind_return/test_bind_return.vcproj:
180 * MSVC_Net2008/tests/test_compose/test_compose.vcproj:
181 * MSVC_Net2008/tests/test_deduce_result_type/test_deduce_result_type.vcproj:
182 * MSVC_Net2008/tests/test_disconnect/test_disconnect.vcproj:
183 * MSVC_Net2008/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcproj:
184 * MSVC_Net2008/tests/test_exception_catch/test_exception_catch.vcproj:
185 * MSVC_Net2008/tests/test_functor_trait/test_functor_trait.vcproj:
186 * MSVC_Net2008/tests/test_hide/test_hide.vcproj:
187 * MSVC_Net2008/tests/test_mem_fun/test_mem_fun.vcproj:
188 * MSVC_Net2008/tests/test_ptr_fun/test_ptr_fun.vcproj:
189 * MSVC_Net2008/tests/test_retype/test_retype.vcproj:
190 * MSVC_Net2008/tests/test_retype_return/test_retype_return.vcproj:
191 * MSVC_Net2008/tests/test_signal/test_signal.vcproj:
192 * MSVC_Net2008/tests/test_size/test_size.vcproj:
193 * MSVC_Net2008/tests/test_slot/test_slot.vcproj:
194 * MSVC_Net2008/tests/test_trackable/test_trackable.vcproj:
195 * MSVC_Net2010/libsigc++2.vcxproj:
196 * MSVC_Net2010/tests/test_accumulated/test_accumulated.vcxproj:
197 * MSVC_Net2010/tests/test_bind/test_bind.vcxproj:
198 * MSVC_Net2010/tests/test_bind_return/test_bind_return.vcxproj:
199 * MSVC_Net2010/tests/test_compose/test_compose.vcxproj:
200 * MSVC_Net2010/tests/test_deduce_result_type/test_deduce_result_type.vcxproj:
201 * MSVC_Net2010/tests/test_disconnect/test_disconnect.vcxproj:
202 * MSVC_Net2010/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcxproj:
203 * MSVC_Net2010/tests/test_exception_catch/test_exception_catch.vcxproj:
204 * MSVC_Net2010/tests/test_functor_trait/test_functor_trait.vcxproj:
205 * MSVC_Net2010/tests/test_hide/test_hide.vcxproj:
206 * MSVC_Net2010/tests/test_mem_fun/test_mem_fun.vcxproj:
207 * MSVC_Net2010/tests/test_ptr_fun/test_ptr_fun.vcxproj:
208 * MSVC_Net2010/tests/test_retype/test_retype.vcxproj:
209 * MSVC_Net2010/tests/test_retype_return/test_retype_return.vcxproj:
210 * MSVC_Net2010/tests/test_signal/test_signal.vcxproj:
211 * MSVC_Net2010/tests/test_size/test_size.vcxproj:
212 * MSVC_Net2010/tests/test_slot/test_slot.vcxproj:
213 * MSVC_Net2010/tests/test_trackable/test_trackable.vcxproj: Add 64
214 bit support to MSVC project files.
216 2010-09-27 Armin Burgmeier <armin@arbur.net>
218 * MSVC_Net2005/libsigc++2.sln:
219 * MSVC_Net2005/tests/test_accumulated/test_accumulated.vcproj:
220 * MSVC_Net2008/libsigc++2.sln:
221 * MSVC_Net2008/tests/test_accumulated/test_accumulated.vcproj: Add
222 test_accumulated to the MSVC projects.
224 2010-09-19 Armin Burgmeier <armin@arbur.net>
226 * MSVC_Net2010/filelist.am:
227 * MSVC_Net2010/libsigc++2.sln:
228 * MSVC_Net2010/libsigc++2.vcxproj:
229 * MSVC_Net2010/libsigc++2.vcxproj.filters:
230 * MSVC_Net2010/sigc.rc.in:
231 * MSVC_Net2010/tests/test_accumulated/test_accumulated.vcxproj:
232 * MSVC_Net2010/tests/test_accumulated/test_accumulated.vcxproj.filters:
233 * MSVC_Net2010/tests/test_bind/test_bind.vcxproj:
234 * MSVC_Net2010/tests/test_bind/test_bind.vcxproj.filters:
235 * MSVC_Net2010/tests/test_bind_return/test_bind_return.vcxproj:
236 * MSVC_Net2010/tests/test_bind_return/test_bind_return.vcxproj.filters:
237 * MSVC_Net2010/tests/test_compose/test_compose.vcxproj:
238 * MSVC_Net2010/tests/test_compose/test_compose.vcxproj.filters:
239 * MSVC_Net2010/tests/test_deduce_result_type/test_deduce_result_type.vcxproj:
240 * MSVC_Net2010/tests/test_deduce_result_type/test_deduce_result_type.vcxproj.filters:
241 * MSVC_Net2010/tests/test_disconnect/test_disconnect.vcxproj:
242 * MSVC_Net2010/tests/test_disconnect/test_disconnect.vcxproj.filters:
243 * MSVC_Net2010/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcxproj:
244 * MSVC_Net2010/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcxproj.filters:
245 * MSVC_Net2010/tests/test_exception_catch/test_exception_catch.vcxproj:
246 * MSVC_Net2010/tests/test_exception_catch/test_exception_catch.vcxproj.filters:
247 * MSVC_Net2010/tests/test_functor_trait/test_functor_trait.vcxproj:
248 * MSVC_Net2010/tests/test_functor_trait/test_functor_trait.vcxproj.filters:
249 * MSVC_Net2010/tests/test_hide/test_hide.vcxproj:
250 * MSVC_Net2010/tests/test_hide/test_hide.vcxproj.filters:
251 * MSVC_Net2010/tests/test_mem_fun/test_mem_fun.vcxproj:
252 * MSVC_Net2010/tests/test_mem_fun/test_mem_fun.vcxproj.filters:
253 * MSVC_Net2010/tests/test_ptr_fun/test_ptr_fun.vcxproj:
254 * MSVC_Net2010/tests/test_ptr_fun/test_ptr_fun.vcxproj.filters:
255 * MSVC_Net2010/tests/test_retype/test_retype.vcxproj:
256 * MSVC_Net2010/tests/test_retype/test_retype.vcxproj.filters:
257 * MSVC_Net2010/tests/test_retype_return/test_retype_return.vcxproj:
258 * MSVC_Net2010/tests/test_retype_return/test_retype_return.vcxproj.filters:
259 * MSVC_Net2010/tests/test_signal/test_signal.vcxproj:
260 * MSVC_Net2010/tests/test_signal/test_signal.vcxproj.filters:
261 * MSVC_Net2010/tests/test_size/test_size.vcxproj:
262 * MSVC_Net2010/tests/test_size/test_size.vcxproj.filters:
263 * MSVC_Net2010/tests/test_slot/test_slot.vcxproj:
264 * MSVC_Net2010/tests/test_slot/test_slot.vcxproj.filters:
265 * MSVC_Net2010/tests/test_trackable/test_trackable.vcxproj:
266 * MSVC_Net2010/tests/test_trackable/test_trackable.vcxproj.filters:
269 * configure.ac: Added project files for Visual Studio 2010.
271 2010-06-05 David King <davidk@openismus.com>
273 Small website updates
275 * docs/index.html: Remove broken namespace links.
276 * docs/website/doc.shtml: Link to library.gnome.org tutorial and API
281 2010-06-04 Murray Cumming <murrayc@murrayc.com>
283 Manual: Add an id="index" attribute in case that helps library.gnome.org.
285 * docs/manual/libsigc_manual.xml: Add it to the <book> tag.
289 2010-05-04 Murray Cumming <murrayc@murrayc.com>
291 Documentation improvements.
293 * docs/manual/libsigc_manual.xml: Remove Marshallers section because
294 it is apparently outdated and there is no example code to test it.
295 This fixes bug #417924 (Michael Ekstrand)
296 * sigc++/sigc++.h: Main page text: Rearranged slightly.
298 2010-04-27 David King <davidk@openismus.com>
300 Improvements to main page documentation
302 * sigc++/sigc++.h: Minor improvements.
304 2010-04-23 David King <davidk@openismus.com>
306 Add main page to Doxygen documentation
308 * docs/Makefile.am: Parse sigc++/sigc++.h for documentation.
309 * sigc++/sigc++.h: Add main page to Doxygen documentation.
311 2010-04-23 David King <davidk@openismus.com>
313 Fix the functors Doxygen group in the m4 files
315 * sigc++/functors/macros/functor_trait.h.m4:
316 * sigc++/functors/macros/mem_fun.h.m4:
317 * sigc++/functors/macros/ptr_fun.h.m4: Rename functors to
322 2010-04-16 Murray Cumming <murrayc@murrayc-desktop>
324 Docs: Fix the functors group and the link from the overview.
326 * docs/website/doc.shtml: Revert this to point to the overview page at
327 docs/indeex.html, which I have manually uploaded to the website, until
328 we add this overview to the doxygen-generated documentation itself.
329 * sigc++/functors/slot_base.h:
330 * sigc++/visit_each.h: Rename the functors doxygen group to sigcfunctors,
331 because doxygen seems to confuse it with the one in libstdc++.
332 * docs/index.html: Update the links.
334 2010-04-16 Murray Cumming <murrayc@murrayc.com>
336 Website: Fix the Makefile so upload works with sourceforge again.
338 2010-04-06 Murray Cumming <murrayc@murrayc.com>
340 Website: Update the reference API link.
342 * docs/website/doc.shtml: Update the reference API link to use
343 library.gnome.org. We should make sure that the tutorial docbook is there
345 * docs/website/devel.shtml: Remove CVS-specific instructions, quickly
346 mentioning the git module instead.
347 However, the Makefile must be updated to cope with sourceforge's changes.
348 I was not able to upload this yet.
352 2010-01-05 Daniel Elstner <daniel.kitta@gmail.com>
354 Use non-blurry font for dot graph labels
356 * docs/reference/Doxyfile.in (SHOW_INCLUDE_FILES): Enable.
357 (SHOW_USED_FILES): Disable.
358 (DOT_FONTNAME): Change from FreeSans to Sans, as the hinting for the
359 former appears to be rather bad.
360 (TEMPLATE_RELATIONS): Disable to reduce noise.
362 2009-12-29 Krzysztof Kosiński <tweenk.pl@gmail.com>
364 Accumulators: Allow return types that are different to the signal's.
366 * sigc++/macros/signal.h.m4: signal_emit*: Correct the slot_iterator_buf_type
367 and slot_reverse_iterator_buf_type typedefs to allow accumulators with
368 return types that are different to the signal's return type.
369 * tests/Makefile.am: Reenable test_accumulated, so we can test the fix.
370 It should be manually disabled if building on AIX (if the AIX problem cannot
372 * tests/test_accumulated.cc: Add an accumulator with a return type that is
373 different to the signal's return type. In this case it's a vector listing
377 2009-12-27 Daniel Elstner <daniel.kitta@gmail.com>
379 Disable collaboration graphs in documentation
381 * docs/reference/Doxyfile.in (CLASS_DIAGRAMS): Enable. Contrary to
382 what the Doxygen documentation says, no dot class inheritance graphs
383 will be generated if both CLASS_DIAGRAMS and COLLABORATION_GRAPH are
385 (COLLABORATION_GRAPH), (GROUP_GRAPHS): Turn off additional graphs to
388 2009-10-26 Armin Burgmeier <armin@arbur.net>
390 * sigc++config.h: Move the first five definitions to the !SIGC_MSC
391 ifdef block, so MSVC does not see them and only uses the definitions
392 from the SIGC_MSC block. This fixes the build with MSVC.
394 2009-09-19 Daniel Elstner <daniel.kitta@gmail.com>
396 Support Automake silent rules
398 * configure.ac: Call the AM_SILENT_RULES macro if it is defined.
399 * docs/doc-manual.am, sigc++/Makefile.am: Prefix the commands of
400 custom rules with $(AM_V_GEN) or $(AM_V_at) in order to support
401 the silent rules feature of Automake.
403 2009-09-17 Michael Hasselmann <michaelh@openismus.com>
405 Documentation cleanup: sigc::hide() always only hides one signal argument
407 * sigc++/adaptors/macros/hide.h.m4: The documentation stated that sigc::hide()
408 could discard multiple signal arguments when in fact the whole API only allows
409 control over one (dummy) signal argument at a time. The "multiple argument
410 hiding" example lives in it own section now to make it clearer you have to nest
411 sigc::hide() for that.
413 2009-09-13 Daniel Elstner <daniel.kitta@gmail.com>
415 Enable verbose output of autoreconf
417 * autogen.sh: Pass --verbose option to autoreconf.
421 2009-09-02 Daniel Elstner <danielk@openismus.com>
423 Bump version to 2.2.4.2 and update NEWS
425 * configure.ac (AC_INIT): Increment version number to 2.2.4.2.
426 (MM_PREREQ): Require mm-common 0.7.2.
427 * NEWS: Write news entry for libsigc++ 2.2.4.2.
429 2009-09-02 Daniel Elstner <danielk@openismus.com>
431 Document namespace sigc briefly
433 * sigc++/signal_base.h (sigc): Prepend documentation comment to
434 provide a brief description of namespace sigc, so that Doxygen
435 will recognize the namespace as documented.
437 2009-08-31 Daniel Elstner <danielk@openismus.com>
439 Update Doxygen configuration for Doxygen 1.6.1
441 * docs/reference/Doxyfile.in: Update configuration template using
443 (SORT_MEMBERS_CTORS_1ST): Enable.
445 2009-08-31 Daniel Elstner <danielk@openismus.com>
447 Protect space after comma in M4 output
449 * sigc++/macros/template.macros.m4 (_LOOP_SEP): Triple-quote the
450 list separator in this hairy construct, since the macro definition
451 itself is not quoted at all and the space after the comma got lost
452 in the output. This, in turn, produced overlong lines in the HTML
453 reference documentation.
457 2009-08-28 Daniel Elstner <danielk@openismus.com>
459 Update news entry for libsigc++ 2.2.4.1 release
461 * NEWS: Update top entry for release 2.2.4.1 of libsigc++.
462 (2.2.4): Correct spelling of Frédéric Péters' name.
464 2009-08-27 Daniel Elstner <danielk@openismus.com>
466 Use shared mm-common Doxygen style sheet
468 * configure.ac (MM_PREREQ): Require mm-common 0.7.
469 * docs/Makefile.am (dist_noinst_DATA): List doxygen.css.
470 * docs/reference/Doxyfile.in (HTML_STYLESHEET): Assign path
471 to the shared doxygen.css provided by mm-common.
473 2009-08-27 Daniel Elstner <danielk@openismus.com>
475 Remove header and footer HTML fragments
477 * docs/reference/libsigc_{header,footer}.html_fragment: Delete
478 files. These custom fragments were an unnecessary maintenance
479 hassle. Also, the files were out of date with respect to the
480 encoding and CSS classes used by Doxygen.
481 * docs/reference/Doxyfile.in (HTML_HEADER), (HTML_FOOTER): Set
483 (PROJECT_NAME): Substitute @PACKAGE_NAME@.
484 (PROJECT_NUMBER): Substitute @PACKAGE_VERSION@. It does look
485 nicer in the generated HTML pages, and is probably also less
487 (SORT_GROUP_NAMES): Enable for predictability.
489 2009-08-26 Daniel Elstner <danielk@openismus.com>
491 Bump version to 2.2.4.1 and update NEWS
493 * configure.ac (AC_INIT): Increment version number to 2.2.4.1.
494 * NEWS: Write news entry for libsigc++ 2.2.4.1.
496 2009-08-26 Daniel Elstner <danielk@openismus.com>
498 Reenable hierarchy graphs for each class
500 * docs/reference/Doxyfile.in (COLLABORATION_GRAPH): Set option
501 to YES to enable the per-class inheritance graphs.
503 2009-08-25 Daniel Elstner <danielk@openismus.com>
505 Have Automake check NEWS and use bzip2
507 * configure.ac (AM_INIT_AUTOMAKE): Add options check-news and
510 2009-08-25 Daniel Elstner <danielk@openismus.com>
512 Update NEWS for libsigc++ 2.2.4 release
514 2009-08-25 Daniel Elstner <danielk@openismus.com>
516 Bump version to 2.2.4 and require mm-common 0.6.1
518 * configure.ac (AC_INIT): Increase version number to 2.2.4.
519 (MM_PREREQ): Require mm-common 0.6.1 for the updated default
520 location of the reference documentation.
522 2009-08-25 Daniel Elstner <danielk@openismus.com>
524 Change documentation host to library.gnome.org
526 * README, docs/manual/libsigc_manual.xml: Adjust links to the
527 reference documentation in the text.
528 * docs/Makefile.am (pubdocbase), (htmlrefpub): Remove override
529 and use the updated mm-common default values.
530 * sigc++{,-uninstalled}.pc.in (htmlrefpub): Adjust link.
532 2009-08-24 Daniel Elstner <danielk@openismus.com>
534 Add id="content" element to documentation index
536 * docs/reference/libsigc_header.html_fragment: Start <div> element
537 with attribute id="content" to match the other C++ binding modules.
538 * docs/reference/libsigc_footer.html_fragment: Close <div> element.
540 2009-08-20 Daniel Elstner <danielk@openismus.com>
542 Use new version component substitutions
544 * MSVC_Net200[58]/sigc.rc.in: Replace the no longer defined
545 @FP_*_VERSION@ substitutions by the new @SIGCXX_*_VERSION@
546 substitutions for the version number components. These are
547 defined by MM_INIT_MODULE() from mm-common.
549 2009-08-20 Daniel Elstner <danielk@openismus.com>
551 Substitute API version in filenames dynamically
553 * sigc++.pc.in: Rename file from sigc++-2.0.pc.in.
554 * sigc++-uninstalled.pc.in: Rename file from
555 sigc++-2.0-uninstalled.pc.in.
556 * MSVC_Net200[58]/sigc.rc.in: Rename files from sigc-2.0.rc.in
557 and use @SIGCXX_API_VERSION@ substitution for the API version.
558 Also replace @VERSION@ with @PACKAGE_VERSION@.
559 * MSVC_Net200[58]/libsigc++2.{sln,vcproj}: Remove version from
560 the project name and filenames.
561 * MSVC_Net200[58]/filelist.am: Remove version from filenames.
562 * configure.ac (AC_CONFIG_FILES): Insert ${SIGCXX_MODULE_NAME}
563 into output filenames and remove the version from the input
565 * Makefile.am: Use $(SIGCXX_MODULE_NAME) in pkg-config file
566 names instead of hard-coding the API version.
567 * sigc++/Makefile.am (lib_LTLIBRARIES): Instead of hard-coding
568 the libtool archive name, substitute @SIGCXX_API_VERSION@ into
569 it, as well as into the derived variable names.
571 2009-08-17 Daniel Elstner <danielk@openismus.com>
573 Set libtool version information
575 * sigc++/Makefile.am (libsigc_2_0_la_LDFLAGS): Add libtool option
576 -version-info 0:0:0 to specify the version information explicitly.
578 2009-08-16 Daniel Elstner <daniel.kitta@gmail.com>
580 Remove unused parameter names for correctness
582 * tests/test_copy_invalid_slot.cc, tests/test_custom.cc,
583 tests/test_deduce_result_type.cc, tests/test_functor_trait.cc,
584 tests/test_limit_reference.cc: Remove the names of unused function
585 parameters from the prototype, in order to get libsigc++ to build
586 with fatal compiler warnings.
588 2009-08-16 Daniel Elstner <daniel.kitta@gmail.com>
590 Rename scripts/ to build/ for consistency
592 * build/: Rename directory from scripts/ for consistency with most
593 of the other modules that switched to the new build infrastructure.
594 * Makefile.am (ACLOCAL_AMFLAGS): Adjust M4 include directory.
595 * README: Adjust a reference to scripts/ in the text.
596 * configure.ac (AC_CONFIG_AUX_DIR): Copy auxiliary files to build/.
597 (AC_CONFIG_MACRO_DIR): Place Autoconf M4 files into build/.
598 * docs/Makefile.am: Include $(top_srcdir)/build/doc-reference.am.
600 2009-08-16 Daniel Elstner <danielk@openismus.com>
602 Update for latest mm-common 0.4
604 * configure.ac (MM_PREREQ): Require mm-common 0.4.
605 (MM_INIT_MODULE): Omit now optional version number argument.
606 (MM_CONFIG_DOCTOOL_DIR): Copy the documentation utilities into docs/
608 * Makefile.am (dist_noinst_DATA): Remove documentation utilities.
609 * sigc++-2.0.pc.in (htmlrefpub): Append trailing slash.
610 * sigc++-2.0-uninstalled.pc.in (htmlrefpub): ditto,
611 * docs/Makefile.am (htmlrefpub): ditto.
612 (doc_input): Perform a VPATH search for each input file, to correctly
613 handle the case of rebuilding the documentation of a tarball release
614 which includes the generated sources.
615 (dist_noinst_DATA): List documentation utilities.
617 2009-08-11 Daniel Elstner <danielk@openismus.com>
619 Do not recurse into MSVC subdirectories
621 * MSVC_Net200[58]/filelist.am: New Automake include files, defining
622 the lists of files to ship from the MSVC project directories.
623 * MSVC_Net200[58]/Makefile.am: Delete recursive Makefile.am files.
624 * Makefile.am: Include MSVC_Net200[58]/filelist.am.
625 (dist_noinst_DATA): Distribute MSVC project files.
626 (SUBDIRS): Do not recurse into the MSVC_Net200[58] subdirectories.
627 * configure.ac (AC_CONFIG_FILES): Remove the output files
628 MSVC_Net200[58]/Makefile.am from the list.
629 (AC_CONFIG_COMMANDS): Copy sigc++config.h into the MSVC project
630 directories at the end of config.status.
632 2009-08-11 Daniel Elstner <danielk@openismus.com>
634 Remove now superfluous doctool overrides
636 * docs/Makefile.am: Remove overrides for the documentation
637 utilities, since MM_CONFIG_DOCTOOL_DIR() already takes care
638 of setting MMDOCTOOLDIR to the local directory.
639 * sigc++-2.0.pc.in (datadir): Substitute value, just in case.
641 2009-08-10 Daniel Elstner <danielk@openismus.com>
643 Have mm-common-prepare install the doc utils
645 * configure.ac: Call MM_CONFIG_DOCTOOL_DIR([scripts]) to set
646 up the destination directory for mm-common-prepare to copy
647 the documentation utilities to.
648 * scripts/doc-install.pl: Delete file.
649 * scripts/doc-postprocess.pl: ditto,
650 * scripts/tagfile-to-devhelp2.xsl: ditto.
652 2009-08-09 Daniel Elstner <danielk@openismus.com>
654 Refresh doc-install and doc-postprocess copies
656 * scripts/doc-install.pl, scripts/doc-postprocess.pl: Copy
657 latest versions from the mm-common module.
658 * docs/Makefile.am (doc_install), (doc_postprocess): Include
659 $(PERL) interpreter command in front of the script name.
661 2009-08-08 Daniel Elstner <danielk@openismus.com>
663 Disable extraction of undocumented identifiers
665 * docs/reference/Doxyfile.in (EXTRACT_ALL): Change setting to
666 NO, and adapt a number of related options accordingly. The
667 result is a net loss of about 300 generated .html files. The
668 roughly 450 files which remain now are still an insanely high
670 (PREDEFINED): Predefine the Autoconf configuration defines to
671 nudge Doxygen towards documenting the canonical code paths.
673 2009-08-07 Daniel Elstner <danielk@openismus.com>
675 Use #error explicitly instead of broken code
677 * sigc++config.h.in: Do use the #error preprocessor directive,
678 instead of an errornous piece of code. This code does not need
679 the same level of obfuscation as an Autoconf feature test.
681 2009-08-07 Daniel Elstner <danielk@openismus.com>
683 Change bug report URL to point to Bugzilla
685 * configure.ac (AC_INIT): Change the bug-report argument to the
686 URL for filing a new libsigc++ bug on bugzilla.gnome.org. Also
687 name the website URL as fifth argument. It will simply be ignored
688 if the installed Autoconf does not support this new feature.
690 2009-08-07 Daniel Elstner <danielk@openismus.com>
692 Do not enable -pedantic mode by default
694 * configure.ac (MM_ARG_ENABLE_WARNINGS): Remove -pedantic from the
695 list of compiler flags to use at warning level "min" (the default).
697 2009-08-07 Daniel Elstner <danielk@openismus.com>
699 Correct M4 forbidden tokens pattern
701 * configure.ac (m4_pattern_forbid): Take into account that the
702 pattern is applied to tokens, not lines. Also catch unexpanded
703 calls to underscore-prefixed private macros.
705 2009-08-06 Daniel Elstner <danielk@openismus.com>
707 Transition to new mm-common build infrastructure
709 * autogen.sh: Replace with a minimal script that simply executes
710 mm-common-prepare, autoreconf and configure.
711 * configure.ac: Get rid of an enormous amount of old cruft. Use
712 macros from the new mm-common module to set up Doxygen for building
713 the documentation. Add option to enable more compiler warnings.
714 * sigc++-2.0-uninstalled.pc.in: New pkg-config data file to allow
715 linking to an uninstalled libsigc++.
716 * sigc++-2.0.pc.in: Modernize. Provide the location of the
717 installed reference documentation and the Doxygen tag file.
718 * sigc++config.h.in: Modernize and update for new build
720 * Makefile.am, */Makefile.am: Modernize and adapt to the new C++
721 binding build infrastructure in the mm-common module.
722 * sigc++/filelist.am: New Automake include file. Defines lists
723 of C++ and M4 source files.
724 * docs/Makefile.am: Rewrite using doc-reference.am from the
726 * docs/doc-manual.am: New Automake include file for building the
727 libsigc++ Docbook manual.
728 * docs/images/Makefile.am: Remove file.
729 * docs/manual/Makefile.am: ditto,
730 * docs/reference/Makefile.am: ditto.
731 * docs/Makefile_web.am_fragment: Remove for now, to be taken care
733 * docs/reference/Doxyfile.in: Modernize and adapt to new build
735 * docs/reference/beautify_docs.pl: Remove and use the more recent
736 scripts/doc-postprocess.pl instead.
737 * libsigc++-2.0.spec.in: Remove, to be resurrected only if someone
739 * scripts/Makefile.am: Remove file. Distribute the files from the
740 toplevel Makefile.am instead.
741 * scripts/cxx_std.m4: Add missing third argument to AC_DEFINE().
742 * scripts/doc-install.pl: New file, copied from mm-common.
743 * scripts/doc-postprocess.pl: ditto,
744 * scripts/tagfile-to-devhelp2.xsl: ditto.
746 2008-11-13 Murray Cumming <murrayc@murrayc.com>
748 * docs/website/stable.shtml: Correct the download link so it shows all
749 versions, not just 2.0.
753 2008-10-08 Armin Burgmeier <armin@arbur.net>
755 * MSVN_Net2005/libsigc++2.vcproj: Changed output name to match the new
758 * MSVC_Net2008/: Added MSVC 2008 project files. These are basically
759 the same as for MSVC 2005, but converted to MSVC 2008 projects.
762 * Makefile.am: Added the new files to the build.
764 2008-08-08 Armin Burgmeier <armin@arbur.net>
766 * MSVC_Net2005/libsigc++2.sln: Enable the disconnect_during_emit test
769 * MSVC_Net2005/libsigc++2.vcproj: Renamed the generated debug database
770 file to sigc-2.0d.pdb (the default), to stay consistent with the *mm
773 2008-08-08 Armin Burgmeier <armin@arbur.net>
775 * MSVC_Net2005/: Moved from MSVC_Net2003.
777 * MSVC_Net2005/libsigc++2.sln:
778 * MSVC_Net2005/libsigc++2.vcproj:
779 * MSVC_Net2005/tests/*/*.vcproj: Converted the Visual Studio 2003
780 project files to 2005 ones.
782 * MSVC_Net2005/Makefile.am:
784 * configure.ac: Adapted build files accordingly.
786 2008-04-06 Cedric Gustin <cedric.gustin@gmail.com>
788 * MSVC_Net2003/sigc-2.0.rc.in: Removed ATL/MFC header files
789 dependency as afxres.h is not part of the Microsoft Platform
790 SDK provided with Visual C++ Express 2008.
795 2008-03-10 Deng Xiyue <manphiz@gmail.com
797 * sigc++/macros/slot.h.m4:
798 Added an include of functors/slot.h that was mistakenly removed
799 during the 2.1 series, apparently breaking API slightly.
804 2008-02-28 Elaine Xiong <elaine.xiong@sun.com>
806 * sigc++/macros/signal.h.m4:
807 * tests/test_accum_iter.cc: Add ifdefs around uses of
808 reverse_iterator to really fix the build with recent
814 2008-01-01 Ryan Hill <dirtyepic@gentoo.>
816 * tests/test_copy_invalid_slot.cc: Include the cstdlib
817 and cstring headers to fix the build with the gcc 4.3
818 pre-release. Bug #454882.
820 2007-08-31 Murray Cumming <murrayc@murrayc.com>
822 * tests/test_copy_invalid_slot.cc: Added some includes to
823 fix the build in some environments, such as when using Sun CC.
824 Thanks to Vladimir Marek in bug #469872.
828 2007-08-14 Murray Cumming <murrayc@murrayc.com>
830 * sigc++/Makefile.am:
831 * sigc++/compatibility.h: Removed this header.
833 * sigc++/bind_return.h:
834 * sigc++/connection.h:
835 * sigc++/macros/class_slot.h.m4:
836 * sigc++/macros/hide.h.m4:
837 * sigc++/macros/method_slot.h.m4:
838 * sigc++/macros/object_slot.h.m4:
839 * sigc++/macros/retype.h.m4:
840 * sigc++/macros/signal.h.m4:
841 * sigc++/macros/slot.h.m4:
843 * sigc++/retype_return.h: Removed deprecated
844 compatibility API, to probably fix the build with
845 some compilers, such as some versions of the Sun Forte C++
846 CC compiler. Some of these headers are now mostly empty and
847 should be removed later.
848 This API has been deprecated April 2004, and
849 is not widely used, so it seems safe to do this now.
852 * tests/test_compatibility.cc: Removed this test.
854 2007-07-28 Michael Elkstrand <michael@elehack.net>
856 * sigc++/macros/signal.h.m4: slot_iterator_buf,
857 slot_reverse_iterator_buf: Added typedefs for
858 value_type, reference, and pointer, so that these
859 iterators are more like standard C++ iterators, so they can
860 be used with standard C++ algorithms.
862 * tests/test_accum_iter.cc: Added a test for this.
865 2006-11-14 Daniel Elstner <daniel.kitta@gmail.com>
867 * autogen.sh: Wholly replace this script with a critter from one
868 of my personal projects, with slight modifications. This one does
869 some sophisticated stuff like probing version numbers of available
870 automake and aclocal executables, in order to choose the right one
871 accordingly. All this is necessary to make the build system work
872 robustly in custom environments such as Maemo where automake-1.9
873 doesn't come preinstalled.
875 2006-06-20 Murray Cumming <murrayc@murrayc.com>
877 * sigc++/adaptors/macros/bind.h.m4:
878 * sigc++/adaptors/macros/retype.h.m4:
879 * sigc++/functors/macros/functor_trait.h.m4:
880 * sigc++/functors/macros/slot.h.m4:
881 * sigc++/macros/retype.h.m4:
882 * sigc++/macros/signal.h.m4: Revert the previous changes, because none is
883 used in the exported symbol names from gtkmm, so this would break the ABI
886 2006-05-26 Régis Duchesne <hpreg@vmware.com>
888 * sigc++/adaptors/macros/bind.h.m4:
889 * sigc++/adaptors/macros/retype.h.m4:
890 * sigc++/functors/macros/functor_trait.h.m4:
891 * sigc++/functors/macros/slot.h.m4:
892 * sigc++/macros/retype.h.m4:
893 * sigc++/macros/signal.h.m4:
894 Renamed 'nil' to 'none' to allow an Objective-C++ compiler to compile
895 the library header files.
897 2005-12-21 Murray Cumming <murrayc@murrayc.com>
899 * sigc++/macros/signal.h.m4: Make remaining
900 reverse_iterator_buf operator--() methods
901 return by reference, like the operator++() methods.
902 Bug #304402 from John Profic.
904 2005-12-20 Murray Cumming <murrayc@murrayc.com>
906 * sigc++/macros/signal.h.m4: Make all operator--() methods
907 return by reference, like the operator++() methods.
908 Bug #304402 from John Profic.
910 2005-12-14 John Profic <profic@kursknet.ru>
912 * sigc++/macros/signal.h.m4: Fix compilation problem in
915 2005-12-14 John Profic <profic@kursknet.ru>
917 * sigc++/macros/signal.h.m4: Added emit_reverse().
919 This is the HEAD branch, for API/ABI-compatible API additions.
920 See also the libsigc-2-0 branch.
922 2005-12-01 Murray Cumming <murrayc@murrayc.com>
924 * sigc++/functors/slot_base.cc:
925 slot_base::disconnect(): Set call_ to 0,
926 to invalidate the slot, even if parent_ is 0.
927 I think parent_ is, for instance, a signal, but
928 disconnect should still work on a slot that is not
929 connected to a signal, because a slot can be invoked
931 Fixes bug #311057 from James Lin.
933 2005-12-01 Murray Cumming <murrayc@murrayc.com>
936 * tests/test_slot_disconnect.cc: Added test
937 case from bug #311057.
939 2005-11-16 Philipp Berndt <philipp.berndt@gmx.net>
941 * sigc++/adaptors/macros/exception_catch.h.m4: Make member
942 exception_catch_functor<T_functor, T_catcher, void>::catcher_
943 public so that it can be accessed by visit_each()
944 (bug fixed for generalization on 2004-11-06)
948 2005-08-01 Neal E. Coombes <nealc@trdlnk.com>
950 * sigc++/signal_base.h: Updated the documentation for temp_slot_list
951 as requested in bug #303896.
953 2005-08-01 Murray Cumming <murrayc@murrayc.com>
955 * sigc++/adaptors/hide.h.m4: Added missing
956 ) in call to sun_forte_workaround(), fixing
957 build on SUN Forte 5.5. Bug #312020.
959 2005-08-19 Bruno Martinez <brunom@fing.edu.uy>
961 * sigc++/type_traits.h: Renamed
962 ::sigc::is_base_and_derived::internal to
963 ::sigc::is_base_and_derived::internal_class
964 in order to avoid conflict with
967 2005-07-13 Murray Cumming <murrayc@murrayc.com>
969 * docs/manual/libsigc_manual.xml: Correct mentions of
970 1.2 stuff instead of 2.0. Patch in bug #310213 from
973 2005-07-13 Murray Cumming <murrayc@murrayc.com>
975 * docs/manual/libsigc_manual.xml: Fixed typo
976 found by Antonio Coralles.
978 2005-07-09 Murray Cumming <murrayc@murrayc.com>
980 * sigc++/macros/signal.h.m4: Did the same (see
981 last commit) for slot_const_iterator and
984 2005-07-09 Murray Cumming <murrayc@murrayc.com>
986 * sigc++/macros/signal.h.m4: slot_iterator:
987 operator--() now returns value, not reference, like
988 operator++() already did. This caused crashes when
989 using --no-inline with g++. Bug #308651 by
994 2005-07-04 Philip Langdale <plangdale@vmware.com>
996 * sigc++/adaptors/macros/compose.h.m4: Add a setter typedef to
997 compose*_functor and use it instead of the (incorrect) getter
998 typedef in the compose* specialization of visit_each<>().
999 This corrects the lifetime management of slots created with
1000 compose(). Bug #308433.
1002 2005-06-13 Marek Rouchal <marek.rouchal@infineon.com>
1004 * tests/test_deduce_result_type.cc: Specify int return type
1005 for main(), to be more ISO C++ compliant. Bug #307478.
1007 2005-06-11 Andris Pavenis <pavenis@latnet.lv>
1009 * sigc++/adaptors/lambda/macros/base.h.m4:
1010 * sigc++/adaptors/lambda/macros/select.h.m4
1011 * sigc++/adaptors/macros/hide.h.m4: Specify only a type (not a
1012 parameter name) for unused member function parameters
1014 2005-06-12 Paul Pogonyshev <pogonyshev@gmx.net>
1018 * sigc++config.h.in: Add test for whether the compiler allows
1019 referencing to member functions of the class/structure being
1020 declared from a definition of a static member variable.
1021 Supposedly a generic solution for GCC 3.2 compilation problems.
1023 * sigc++/type_traits.h: Define SIGC_WRAP_IS_BASE_CLASS_ based on
1024 results of the above test.
1025 (struct is_base_and_derived): Wrap up is_base_class_() functions
1026 in an internal class if SIGC_WRAP_IS_BASE_CLASS_ is defined.
1028 2005-06-10 Murray Cumming <murrayc@murrayc.com>
1030 * sigc++/adaptors/macros/bind.h.m4:
1031 * sigc++/functors/macros/slot.h.m4:
1032 * sigc++/macros/signal.h.m4: Use CALL_SIZE instead of
1033 hard-coded 7s and 6s.
1037 2005-06-10 Murray Cumming <murrayc@murrayc.com>
1039 * sigc++/visit_each.h: Make the
1040 limit_derived_target::with_type inner class an outer class,
1041 to satisfy the SUN CC 5.7 compiler, though I think it is a
1042 compiler bug. Bug #302098 has the test case.
1046 2005-06-07 Murray Cumming <murrayc@murrayc.com>
1048 * tests/test_compatibility.cc: Specify the actual class when
1049 using test_int(), instead of the derived class, to fix the build
1050 on SUN Forte CC 5.5. Patch from Friedemann Kleint in
1053 2005-06-07 Murray Cumming <murrayc@murrayc.com>
1055 * sigc++/macros/signal.h.m4: signal_emit::emit(): Use scope to
1056 ensure a certain order of destruction of the member variables, to
1057 avoid a leak on MSVC++. Patch by Andreas Ames in Bug #306249.
1059 2005-06-07 Murray Cumming <murrayc@murrayc.com>
1061 * sigc++/macros/signal.h.m4: Added comments about commenting-out
1062 SIGC_TYPEDEF_REDEFINE_ALLOWED when using SUN Forte CC 5.7,
1063 because I can not seem to create a test for it.
1065 2005-06-07 Murray Cumming <murrayc@murrayc.com>
1068 * scripts/cxx_std.m4:
1069 * sigc++/macros/signal.h.m4:
1070 * sigc++config.h.in: Added check for
1071 the non-standard SUN Forte reverse_iterator<>,
1072 and used it. This is based on the same stuff in
1075 2005-06-07 Murray Cumming <murrayc@murrayc.com>
1077 * sigc++/visit_each.h: limit_derived_target(): Just some whitespace
1080 2005-05-16 Neal E. Coombes <nealc@trdlnk.com>
1082 * sigc++/signal_base.h: Modified temp_slot_list to be a temporary view
1083 into a slot list. Instead of emptying the original it now simply tacks
1084 a placeholder to the end of the original. It then uses this as it's
1085 'end' iterator. This should allow for conscious recursiveness, as well
1086 as inserting a slot to any position in the slot list during emittion.
1089 2005-06-04 Friedemann Kleint <kleint@bifab.de>
1091 * sigc++/macros/limit_reference.h.m4:
1092 visit_each() template specializations:
1093 Mention the bool I_derives_trackable
1094 template type, to fix the build on Solaris
1099 2005-05-06 Régis Duchesne <hpreg@vmware.com>
1101 * sigc++/macros/limit_reference.h.m4 (added):
1102 * sigc++/Makefile.am:
1103 New class that just stores a reference, and makes sure that if the
1104 reference derives from trackable, then the trackable reference will be
1105 used instead of the derived reference in visit_each().
1106 * sigc++/functors/macros/mem_fun.h.m4: Better fix for bug #169225 by
1107 Régis Duchesne and Christian Hammond, based on the new limit_reference
1109 * sigc++/adaptors/bound_argument.h (added): New class (built upon the
1110 new limit_reference class) that handles all 3 kinds of bound arguments:
1111 by value, by reference, and by constant reference. References are
1112 unwrapped in the bound_argument's constructor.
1113 * sigc++/adaptors/macros/bind.h.m4: Fix for bug #302327 by Régis
1114 Duchesne. Bound arguments now need to know whether they are passed by
1115 reference or not. So bind() now builds bind_functor instances using
1116 'reference_wrapper<Foo>' types, instead of 'Foo &' types. The
1117 bind_functor code is modified to compensate.
1118 * sigc++/adaptors/macros/bind_return.h.m4: Similar fix for a similar
1119 bug (unfiled) with bound return arguments.
1120 * sigc++/reference_wrapper.h:
1121 * sigc++/type_traits.h:
1122 The reference_wrapper class is only used in bound_argument.h. Put
1123 correct but unused code under #if 0.
1124 * sigc++/adaptors/lambda/base.h: This file needs reference_wrapper.h,
1125 but was incorrectly relying on type_traits.h to include it.
1126 * tests/Makefile.am:
1127 * tests/test_virtualbase_delete.cc (deleted):
1128 * tests/test_virtualbase_delete_ref_param.cc (deleted):
1129 * tests/test_limit_reference.cc (added):
1130 Replaced test_virtualbase_delete*.cc with a simpler
1131 test_limit_reference.cc which checks for all 3 aspects of the same bug
1133 * tests/test_bind_ref.cc: Slots must use 'Foo &' types. We were lucky
1134 this broken usage worked before this change. The change in
1135 type_traits.h made this bug obvious, by preventing the code to compile.
1136 * tests/test_bind_return.cc: After my change, bind() and bind_return()
1137 must use 'reference_wrapper<Foo>' types.
1138 * tests/test_custom.cc: Made this test a no-op (so it does not perturb
1139 'make check' on released versions of the library) and made it a
1140 template ready to be modified by hackers.
1142 2005-05-01 Murray Cumming <murrayc@murrayc.com>
1144 * sigc++/functors/slot_base.cc:
1145 slot_base::slot_base(src): If the source
1146 slot_base has a null rep->call_, meaning that the
1147 slot is invalid, just return a default-constructed
1148 slot, to prevent the crash shown in
1149 tests/tests_copy_invalid_slot.cc. Bug #302515 by
1152 2005-05-01 Murray Cumming <murrayc@murrayc.com>
1154 * sigc++/functors/macros/mem_fun.h.m4: bound_*<>:
1155 Add a new is_base_and_derived<sigc::trackable>
1156 parameter to the template and thereby provide a
1157 specialization for T_Obj types that derive from
1158 sigc::trackable. This prevents a crash when casting
1159 from the derived type to sigc::trackable after the
1160 derived destructor has run. This cast can sometimes
1161 fail when using multiple inheritance, at least with
1162 g++. Bug #169225 by Régis Duchesne and Christian
1164 * sigc++/type_traits.h: Add documenation for
1165 the internal is_base_and_derived<> template, which
1166 allows us to specialize other templates for certain
1169 2005-04-28 Murray Cumming <murrayc@murrayc.com>
1171 * sigc++/type_traits.h: Added comments for users of
1174 2005-04-28 Murray Cumming <murrayc@murrayc.com>
1176 * tests/Makefile.am:
1177 * tests/test_virtualbase_delete.cc: Added
1178 simplified test case from bug #169225. We have a patch
1179 to make this succeed but I am not ready to commit it
1182 2005-04-27 Murray Cumming <murrayc@murrayc.com>
1184 * tests/Makefile.am:
1185 * tests/test_custom.cc:
1186 Added a place to put extra test code, so I don't have
1187 to keep installing my crazy libsigc++ versions.
1189 2005-04-27 Murray Cumming <murrayc@murrayc.com>
1191 * sigc++/visit_each.h: Revert back to the non-explicit
1192 template call, because we can not specify the
1193 template specialization so easily, because the
1194 specializations have different numbers of types.
1195 * tests/Makefile/am:
1196 * tests/test_bind_ref.cc: Add a simple test only for
1197 sigc::ref disconnection.
1199 2005-04-26 Murray Cumming <murrayc@murrayc.com>
1201 * sigc++/visit_each.h: Use the explicit template
1202 specialization, needed for Tru64 and AIX compilers.
1203 This causes a crash in some uses of sigc::ref()
1204 (when using g++ 3.3.4 or 3.3.5 , but not with 3.4) but
1205 seems to fix a crash in some uses of multiple inheritance
1207 * tests/test_bind.cc: Comment out the crashing (not with
1208 g++ 3.4) use of sigc::ref() with an explanatory comment.
1212 2005-03-09 Cedric Gustin <cedric.gustin@swing.be>
1214 * Makefile.am: Moved MSVC_Net2003 directory to SUBDIRS.
1215 * MSVC_Net2003/Makefile.am: Added blank.cpp to EXTRA_DIST.
1216 * MSVC_Net2003/libsigc++2_msvcNet2003.sln: Removed
1217 test_accumulated and test_lambda projects as the tests are
1218 disabled in the standard, configure-based build.
1219 * MSVC_Net2003/MSVC_Net2003/libsigc++2_msvcNet2003.vcproj:
1220 Generate a PDB file in the Debug target.
1222 2005-03-05 Murray Cumming <murrayc@murrayc.com>
1224 * docs/website/stable.html: Mention actual supported compilers.
1225 * docs/website/docs.html: Removed broken examples links. Change
1226 reference link to the reference overview page.
1228 2005-02-23 Murray Cumming <murrayc@murrayc.com>
1230 * sigc++/functors/slot_base.h: Make slot_base::operator=() public, to
1231 fix the build with SUN Forte C++ 5.5 and Tru64.
1235 2005-02-20 Murray Cumming <murrayc@murrayc.com>
1237 * tests/test_slot.cc, test_disconnect.cc: #included <new> to avoid
1238 an unresolved symbol error with the Tru64 compiler. Solution found by
1239 Tim Mooney in bug #161503.
1241 2005-02-20 Martin Schulze <mschulze@cvs.gnome.org>
1243 * sigc++/signal_base.h: Add some documentation.
1245 2005-02-20 Martin Schulze <mschulze@cvs.gnome.org>
1247 * sigc++/signal_base.cc: Reset deferred_ flag to false in
1248 signal_impl::sweep() (Neal E. Coombes). Partly fixes bug #167714.
1250 2005-02-11 Martin Schulze <mschulze@cvs.gnome.org>
1252 * docs/manual/Makefile.am: Set the correct group in post-html.
1254 2005-02-11 Murray Cumming <murrayc@murrayc.com>
1256 * docs/website/doc.shtml: Fix typo in url for reference docs. Found by
1259 2005-02-06 Murray Cumming <murrayc@murrayc.com>
1261 * sigc++/signal_base.h: temp_slot_list::begin(), end(): Actually
1262 return the iterators.
1264 2005-02-03 Neal E. Coombes <nealc@trdlnk.com>
1266 * sigc++/signal_base.h: Add temp_slot_list struct to facilitate
1267 allowing new connections to a signal during an emittion without
1268 affecting that emittion.
1269 * sigc++/macros/signal.h.m4: Use the new struct temp_slot_list to
1270 prevent connections made during an emittion from being called in the
1271 same emittion (which has the potential of causing things like
1272 infinite loops). This guarantees an emittion will be finite, as well
1273 as maintaining any order of emittion guarantees that may have already
1278 2005-02-02 Murray Cumming <murrayc@murrayc.com>
1280 * sigc++/visit_each.h: visit_each_type(): Reverted the change, so that
1281 we do not specify the template types ot visit_each<>(), because it
1282 crashes on g++ 3.3.4 (but not g++ 3.4.2). Added a comment telling users
1283 of AIX (and maybe IRIX MipsPro and Tru64) to use the alternative version
1284 if they have compilation problems.
1286 2005-02-01 Murray Cumming <murrayc@murrayc.com>
1288 * sigc++/adapators/macros/base.h.m4: Add sigc::var<>() documentation,
1289 from Roger Ferrer Ibáñez in bug #149483.
1291 2005-02-01 Murray Cumming <murrayc@murrayc.com>
1293 * sigc++/adaptors/macros/compose.h.m4: In the template specializations
1294 of visit_each(): As before, specify the specific other template
1295 specializations of visit_each that we use. Needed by AIX.
1296 * tests/Makefile.am: Reenabled most tests, because AIX can now
1299 2005-02-01 Murray Cumming <murrayc@murrayc.com>
1301 * sigc++/visit_each.h: visit_each_type(): Specify the specific
1302 template specialization of visit_each<>() to use. The AIX compiler,
1303 and possibly the Tru64 compiler, need this extra hint.
1305 2005-02-01 Murray Cumming <murrayc@murrayc.com>
1307 * bind.h.m4: Define bind_functor::operator() inline because the AIX
1308 compiler/linker sometimes fails to find it when it is defined
1309 outside of the class.
1313 2005-01-30 Murray Cumming <murrayc@murrayc.com>
1315 * sigc++/type_traits.h: is_base_and_derived: Added
1316 avoid_gcc3_warning_(), to avoid an incorrect warning when using
1319 2005-01-28 Liza Klerck <liza@trdlnk.com>
1321 * sigc++/functors/macros/mem_fun.h.m4: Add a sigc:: namespace
1322 prefix to the nested use of visit_each(), to avoid ambiguity when
1323 using 2 versions of the libsigc++ API inside different namespace.
1325 2005-01-27 Murray Cumming <murrayc@murrayc.com>
1327 * sigc++/adaptors/macros/adaptor_trait.h.m4: Add a sigc:: namespace
1328 prefix to the nested use of visit_each(), to avoid ambiguity when
1329 using 2 versions of the libsigc++ API inside different namespace,
1330 which is not very advisable anyway. Bug #165222 from
1335 2005-01-24 Cedric Gustin <cedric.gustin@swing.be>
1337 * sigc++config.h.in : Moved the SIGC_USING_STD macro definition
1338 out of the SIGC_CONFIGURE section. We also need it for MSVC.
1339 * MSVC_Net2003/.cvsignore : Added .def and .aps files
1340 * MSVC_Net2003/Makefile.am: Rewrote rule for local copy of
1341 sigc++config.h (required for 'make distcheck').
1342 * MSVC_Net2003/libsigc++2_msvcNet2003.sln: Added test_retype and
1343 test_disconnect_during_emit tests.
1344 * MSVC_Net2003/tests/test_disconnect_during_emit/*,
1345 MSVC_Net2003/tests/test_retype/*: Initial commit.
1347 2005-01-21 Murray Cumming <murrayc@murrayc.com>
1349 * tests/: Disabled the test_accumulator, test_bind, and test_compose
1350 tests, and part of test_mem_fun because the AIX xlC compiler can not
1351 build them, but it can still do most things, including the examples.
1352 See the comments in tests/Makefile.am.
1354 2005-01-21 Murray Cumming <murrayc@murrayc.com>
1356 * sigc++/adaptors/bind.h.m4: non-member operator()(): Specify the
1357 extra nil arguments in the templated class name prefix. Oddly, the
1358 AIX xlC compiler says that the type of the first parameter does not
1359 match the template if you don't do this.
1361 2005-01-21 Murray Cumming <murrayc@murrayc.com>
1363 * sigc++/type_traits.h: is_base_and_derived struct: Move the
1364 is_base_class_() functions out of the inner class, because the AIX
1365 xlC compiler does not like that - see the comments in the code.
1366 * sigc++/adaptors/bind.h.m4: Add the extra nil template types to
1367 the template specializations, as in slot and signal.
1369 2005-01-21 Murray Cumming <murrayc@murrayc.com>
1371 * sigc++/functors/macros/slot.h.m4, sigc++/macros/signal.h.m4:
1372 slot and signal template specialization for
1373 various numbers of template args: In the class slot line, specify
1374 all the remaining template types as null, instead of expecting the
1375 compiler to guess them in itself. This partly fixes the build on
1376 AIX with the xlC compiler. Bug #164685.
1378 2005-01-19 Murray Cumming <murrayc@murrayc.com>
1380 * sigc++/type_traits: struct is_base_and_derived: Make the test inner
1381 struct a friend, so that it can use the big inner struct. This is
1382 required by the Tru64 compiler.
1383 * sigc++/adaptors/lambda/base.h: Put the unwrap_lambda_value()
1384 definitions at the top, because Tru64 (understandably) needs them to
1385 be declared before use.
1387 2005-01-19 Murray Cumming <murrayc@murrayc.com>
1389 * scripts/: Added cxx_std.m4, with a test copied from
1390 glibmm/scripts/cxx_std.m4 to check if the compiler has the std::
1392 * sigcconfig.h: #undef the new #define and add SIGC_USING_STD(),
1393 like GLIBMM_USING_STD, to put stuff in the std:: namespace when it
1394 is not there already,
1395 * configure.in: Used the new test.
1396 * tests/*: Uses SIG_USING_STD() for every std:: thing that we use.
1397 This is needed by the Tru64 and HP-UX compilers when using their
1400 2005-01-19 Murray Cumming <murrayc@murrayc.com>
1402 * configure.in: AC_INIT(): Provide the extra tarball name parameter,
1403 so that it does not create a libsigc--- tarball.
1405 2005-01-19 Murray Cumming <murrayc@murrayc.com>
1407 * configure.in: AC_INIT(): Use libsigc++ instead of sigc++, attempting
1408 to get the correct tarball name.
1410 2005-01-18 Murray Cumming <murrayc@murrayc.com>
1412 * configure.in: Used the autoconf 2.93 and AM_INIT_AUTOMAKE()
1413 technique to specify ustar format for the tarball, to prevent files
1414 with long file names from appearing at the top of the tarball.
1415 Based on the same fix in gtkmm 2.6.
1417 2005-01-18 Murray Cumming <murrayc@murrayc.com>
1419 * sigc++/functors/macros/slot_h.m4: Specify the base class when
1420 using the rep_ member variable. This stops the HP-UX aCC compiler
1421 from saying that a Nonstatic member is referenced in a nested class,
1422 local class or static member initializer. Bug #150719.
1424 2005-01-18 Murray Cumming <murrayc@murrayc.com>
1426 * Bug #159597 - patch from e97_far at e.kth.se to replace C-style
1427 casts with reinterpret_cast<> and static_cast<> to avoid warnings.
1429 2005-01-17 Murray Cumming <murrayc@murrayc.com>
1431 * docs/manual/Makefile.am: Specifying html/index.html instead of
1432 just the html directory as a target seems to fix distcheck problems.
1433 I can also now confirm that the install works on solaris, when using
1434 gmake, though not when using make.
1436 2005-01-17 Murray Cumming <murrayc@murrayc.com>
1438 * MSVC_Net2004/Makefile.am: Add built files to DISTCLEANFILES to fix
1440 * docs/reference/Makefile.am, manual/Makefile.am: Specify $srcdir in
1441 paths, to fix distcheck of the manual, and maybe fix install problems
1444 2005-01-11 Murray Cumming <murrayc@murrayc.com>
1446 * docs/website/stable.html: Updated the text about binary packages.
1447 * docs/website/docs.html: Link to the 2.0 documentation instead of the
1450 2004-12-17 GregSchussman <schussman@slac.stanford.edu>
1452 * glossary.shtml: Clean up punctuation, make definitions complete
1453 sentences, and add clarifications for certain definitions according to
1454 what Murray Cumming's suggestions and answers to my questions.
1457 2005-01-11 Murray Cumming <murrayc@murrayc.com>
1459 * docs/: Added manual, copied from the libsigc++-1.2 cvs module,
1460 and updated it for the new 2.0 API.
1462 2005-01-11 Murray Cumming <murrayc@murrayc.com>
1464 * docs/: Added website, copied from the libsigc++-1.2 cvs module.
1465 We will use it from here from now on.
1467 2004-12-11 Cedric Gustin <cedric.gustin@swing.be>
1469 * configure.ac : parse version tags at configure time (for
1471 * MSVC_Net2003/sigc-2.0.rc.in : New resource file.
1472 * MSVC_Net2003/Makefile.am: include sigc-2.0.rc in distribution.
1474 2004-12-08 Cedric Gustin <cedric.gustin@swing.be>
1476 * MSVC_Net2003/Makefile.am: get sigc++config.h from $(top_builddir)
1477 instead of $(top_srcdir).
1479 2004-12-08 Cedric Gustin <cedric.gustin@swing.be>
1481 * MSVC_Net2003/*/*.vcproj: Renamed libsigc++ target to
1482 sigc-2.0d.dll (Debug) and sigc-2.0.dll (Release). Added
1483 $(SolutionDir) and $(SolutionDir)\.. to "Additional Include
1484 Directories" in tests projects.
1485 * sigc++config.h.in: Rewrote dllexport/dllimport macros for
1486 MSVC, for better consistency with glibmm/gtkmm.
1487 * MSVC_Net2003/Makefile.am: copy sigc++config.h from $(top_srcdir)
1490 2004-11-27 Murray Cumming <murrayc@murrayc.com>
1492 * configure.in: Revert the AC_PROG_LIBTOOL change, so that this builds
1493 with actually released libtool versions, and in jhbuild, so that it
1496 2004-11-06 Martin Schulze <mschulze@cvs.gnome.org>
1498 * sigc++/adaptors/macros/exception_catch.h.m4: Make catcher_ member
1499 public so that it can be accessed by visit_each() (bug reported on
1500 ml by Philip Langdale <plangdale@vmware.com>).
1502 2004-10-24 Martin Schulze <mschulze@cvs.gnome.org>
1504 * MSVC_Net2003/*/*.vcproj: Link with the "multithreaded DLL" runtime
1505 libraries and enable RTTI for the MSVC build
1506 (patch from Timothy M. Shead <tshead@k-3d.com>).
1507 * MSVC_Net2003/*/.cvsignore: Hide generated build files from cvs
1508 (patch from Timothy M. Shead <tshead@k-3d.com>).
1512 2004-10-12 Martin Schulze <mschulze@cvs.gnome.org>
1514 * MSVC_Net2003/*/*.vcproj, MSVC_Net2003/blank.cpp: Fix project files
1515 to compile out-of-the-box and add dummy file so that .cc files get
1516 recognized as c++ code files (patch from Timothy M. Shead).
1518 2004-10-10 Martin Schulze <mschulze@cvs.gnome.org>
1520 * sigc++/signal_base.{h,cc}, sigc++/functors/slot_base.{h,cc},
1521 sigc++/functors/macros/slot.h.m4: If SIGC_NEW_DELETE_IN_LIBRARY_ONLY
1522 is defined, implement signal_base::operator new/delete and
1523 slot_rep::operator new/delete (suggested by Timothy M. Shead).
1524 Remove old work-around from 2004-10-02 since it didn't work.
1526 2004-10-07 Martin Schulze <mschulze@cvs.gnome.org>
1528 * configure.ac: Update for libtool 1.5a (with support for Intel C++).
1529 * MSVC_Net2003/sigc++config.h: Remove bogus '#define'
1530 (reported by Timothy M. Shead <tshead@k-3d.com>).
1532 2004-10-02 Martin Schulze <mschulze@cvs.gnome.org>
1534 * configure.ac: Bump version number to 2.0.6.
1535 * NEWS: Add ChangeLog summary for version 2.0.6.
1537 2004-10-02 Martin Schulze <mschulze@cvs.gnome.org>
1539 * sigc++/functors/slot_base.{h,cc}, sigc++/functors/macros/slot.h.m4:
1540 Rename (typed_)slot_rep::detach to (typed_)slot_rep::destroy.
1541 Call the dtor of the functor stored in typed_slot_rep from destroy().
1542 A cleaner solution would be to add an additional "virtual" function
1543 that calls 'delete' or a real virtual dtor. However, this would be
1544 less efficient and might break the ABI. (Fixes #152323.)
1546 2004-10-02 Martin Schulze <mschulze@cvs.gnome.org>
1548 * sigc++config.h.in, MSVC_Net2003/sigc++config.h,
1549 sigc++/signal_base.cc, sigc++/functors/slot_base.{h,cc},
1550 sigc++/functors/macros/slot.h.m4: Define and use new macro
1551 SIGC_NEW_DELETE_IN_LIBRARY_ONLY to ABI-compatibly move
1552 all calls to new and delete into non-inline library code.
1554 2004-09-26 Martin Schulze <mschulze@cvs.gnome.org>
1556 * sigc++/adaptors/lambda/macros/group.h.m4: Add a missing
1557 template keyword in the definition of deduce_result_type::type
1558 (hopefully fixes #152327).
1560 2004-09-26 Martin Schulze <mschulze@cvs.gnome.org>
1562 * sigc++/macros/object_slot.h.m4: Use correct bound_mem_functor
1563 variants for const (volatile) methods (fixes #148744).
1565 2004-09-01 Martin Schulze <mschulze@cvs.gnome.org>
1567 * docs/index.html: Correct link to lambda module.
1569 2004-09-01 Martin Schulze <mschulze@cvs.gnome.org>
1571 * README: Update compatibility section.
1575 2004-09-01 Martin Schulze <mschulze@cvs.gnome.org>
1577 * MSVC_Net2003/Makefile.am: Add sigc++config.h to EXTRA_DIST.
1578 * configure.ac: Bump version number to 2.0.5.
1579 * NEWS: Add ChangeLog summary for version 2.0.5.
1583 2004-08-21 Martin Schulze <mschulze@cvs.gnome.org>
1585 * tests/test_lambda.cc: Use sigc::var("\n") instead of sigc::ref("\n").
1586 Comment out the affected lines, nevertheless.
1587 Sun FORTE and Compaq C++ can handle neither sigc::ref("\n") nor
1588 sigc::var("\n"). I see more chances fixing sigc::var("\n").
1589 * sigc++/adaptors/lambda/macros/base.h.m4: Add a comment about a
1590 possible work around for sigc::var("\n") compiler problems.
1591 * tests/test_compatibility.cc: Remove a 'const' keyword that prevents
1592 the test case from compiling with the Sun FORTE.
1593 * tests/test_trackable.cc: Remove a 'virtual' keyword and an unused
1594 variable to avoid compiler warnings.
1595 * NEWS: Add ChangeLog summary for version 2.0.4.
1597 2004-08-03 Martin Schulze <mschulze@cvs.gnome.org>
1599 * scripts/cxx.m4, sigc++config.h.in, configure.ac,
1600 sigc++/adaptors/lambda/macros/operator.h.m4, tests/test_lambda.cc:
1601 Rollback change from 2004-07-15: configure check
1602 SIGC_OPERATOR_OVERLOAD_AMBIGUITY is not needed - the overload
1603 ambiguity doesn't occur if the lambda operators take all arguments
1605 * configure.ac: Bump version number to 2.0.4.
1607 2004-08-03 James Lin <slimjimmy@mail.com>
1609 * Added SIGC_API qualifier to all externally-visible non-template
1611 * Added #include <sigc++config.h> to the files that use SIGC_API.
1612 * Added empty SIGC_API definition to sigc++config.h.in for non-MSVC
1613 compilers. I'm not sure if this is the right place to put this
1615 * Added MSVC-specific sigc++config.h to the MSVC project directory.
1616 (The comment in it probably should be edited.)
1617 * Changed MSVC project settings to output a multi-threaded DLL, set
1618 the include paths to work (hopefully) out-of-the-box. Disabled
1619 precompiled headers, since they just complicate things and
1620 shouldn't be necessary for such a relatively project.
1622 2004-08-01 Martin Schulze <mschulze@cvs.gnome.org>
1624 * sigc++/type_traits.h: Remove type_trait<>::instance()
1625 (was unimplemented and unused; caused problems with the MSVC).
1627 2004-07-23 Martin Schulze <mschulze@cvs.gnome.org>
1629 * Makefile.am: Fix typo concerning distribution of libsigc++-2.0.spec.
1630 * AUTHORS: Mention our contributors for platforms Sun FORTE and Intel C++.
1632 2004-07-15 Martin Schulze <mschulze@cvs.gnome.org>
1634 * *.h.m4: Don't call operator()() in sun_forte_workaround(); rather copy
1635 operator()(). Calling operator()() makes a copy of the arguments causing
1636 wrong results if an argument type is a reference. Hopefully fixes #147311.
1638 2004-07-15 Martin Schulze <mschulze@cvs.gnome.org>
1640 * tests/test_lambda.cc: Break "std::cout << [expr] << a << std::endl;"
1641 into "std::cout << [expr]; std::cout << a << std::endl;".
1642 I hope this fixes #147313 where the right values for "[expr]" but wrong
1643 values for "a" were written to std::cout for some compiler with optimizations
1646 2004-07-15 Martin Schulze <mschulze@cvs.gnome.org>
1648 * sigc++/adaptors/lambda/macros/operator.h.m4: Correct return type deduction
1649 of lambda expressions in lambda_operator*::operator()(). Might be related to
1651 * sigc++/adaptors/lambda/macros/group.h.m4: Use m4 macro _P_().
1653 2004-07-15 Martin Schulze <mschulze@cvs.gnome.org>
1655 * scripts/cxx.m4, sigc++config.h.in, configure.ac,
1656 sigc++/adaptors/lambda/macros/operator.h.m4, tests/test_lambda.cc:
1657 Add configure check SIGC_OPERATOR_OVERLOAD_AMBIGUITY for a SUN FORTE
1658 compiler problem (bug #147391). Use it to decide whether the lambda
1659 action operators may be overloaded (not doing so restricts the API slightly).
1660 * sigc++/adaptors/lambda/macros/operator.h.m4: Add some doxygen comments
1661 and remove attic code.
1662 * sigc++/adaptors/lambda/macros/base.h.m4:
1663 Add templates unwrap_lambda_type and unwrap_lambda_value() to support
1664 the non-overloaded lambda action operators. Also add some doxygen comments
1665 and remove attic code.
1666 * sigc++/adaptors/lambda/macros/group.h.m4: Fix a bug that resulted in
1667 gargabe values being passed on to the functor contained in the group adaptor
1668 (partly fixes #147313).
1670 2004-07-11 Martin Schulze <mschulze@cvs.gnome.org>
1672 * scripts/cxx.m4, sigc++config.h.in, configure.ac, *.h.m4:
1673 Split SIGC_CXX_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD
1674 into SIGC_CXX_GCC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD
1675 and SIGC_CXX_MSVC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD.
1676 Remove LIBSIGC_TEMPLATE_PREFIX. Add template keyword to
1677 SIGC_WORKAROUND_OPERATOR_PARENTHESES depending on the configure checks.
1678 Should fix the compiler problems with MSVC.
1680 2004-07-11 Martin Schulze <mschulze@cvs.gnome.org>
1682 * examples/hello_world.cc: Use sigc::ptr_fun instead of std::ptr_fun.
1685 2004-07-11 Eric Bourque <ericb@computer.org>
1687 * libsigc++-2.0.spec.in: new file
1688 * configure.ac : patched generate spec file
1689 * .cvsignore: ignore generated file (Martin Schulze)
1690 * Makefile.am: distribute spec file (Martin Schulze)
1692 2004-07-11 Murray Cumming <murrayc@murrayc.com>
1694 * sigc++/connection.cc: Added some comments.
1695 * sigc++/trackable.cc: operator=(): Check for self-asignment, though I
1696 do not know of any actual bug that this fixes. Added some comments.
1697 * sigc++/trackable.h Added some doxygen documentation.
1699 2004-07-09 Murray Cumming <murrayc@murrayc.com>
1701 * tests/: Added test_disconnect_during_emit.cc, to prove that this
1704 2004-07-08 Murray Cumming <murrayc@murrayc.com>
1706 * tests/test_retype_return.cc: foo::operator(int): return a
1707 value. The SUN Forte 5.5 compiler complains about this, as it should.
1709 2004-07-08 Murray Cumming <murrayc@murrayc.com>
1711 * sigc++/macros/signal.h.m4: class signal*: Rename the slot_list
1712 typedef to slot_list_type, because there is already a template class
1713 called slot_type. SUN Forte 5.5 seems to complain about this and I am
1714 not surprised. The old typdef is still there for backwards
1715 compatibility, except when building with SUN Forte.
1717 2004-07-07 Murray Cumming <murrayc@murrayc.com>
1719 * scripts/cxx.m4: SIGC_CXX_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD():
1720 Don't define the SIGC_TEMPLATE_SPECIALIZATOIN_OPERATOR_OVERLOAD C
1721 macro at all if the test fails. This might fix the build on SUN Forte.
1722 * sigc++/functors/macros/mem_fun.h.m4: Default constructor: Initialize
1723 the func_ptr_ member variable. I have no evidence that this solves any
1724 problems, but it worried me.
1725 * sigc++/functors/slot_base.h: operator bool(): Correct documentation,
1726 to use @code instead of <code>
1727 * sigc++/macros/signal.h.m4: Remove the documentation for the
1728 parameters named first and last, because they do not exist.
1730 2004-05-31 Martin Schulze <mschulze@cvs.gnome.org>
1732 * autogen.sh: Add '--force'-flag to the 'libtoolize'-command (bug #143425).
1736 2004-05-30 Martin Schulze <mschulze@cvs.gnome.org>
1738 * configure.ac: Bump version number to 2.0.3.
1739 * NEWS: Add ChangeLog summary for version 2.0.3.
1740 * sigc++/macros/signal.h.m4: Fix segfault on emission of unconnected signal.
1741 * tests/test_signal.cc, tests/test_accumulated.cc: Emit unconnected signal.
1742 * sigc++/macros/object_slot.h.m4: Suppress compiler warning at
1743 dynamic_cast<>-test (tested by Christof Petig/Timothy M. Shead).
1747 2004-05-22 Martin Schulze <mschulze@cvs.gnome.org>
1749 * configure.ac: Bump version number to 2.0.2.
1750 * NEWS: Add ChangeLog summary for version 2.0.2.
1752 2004-05-20 Martin Schulze <mschulze@cvs.gnome.org>
1754 * sigc++/macros/signal.h.m4: If a custom accumulator is specified
1755 invoke it on signal emission even if the signal's slot list is empty.
1756 (This used to be the case in libsigc++-1.2 as pointed out by Timothy.)
1758 2004-05-20 Martin Schulze <mschulze@cvs.gnome.org>
1760 * sigc++/macros/object_slot.h.m4: Suppress compiler warning at
1761 dynamic_cast<>-test (suggested by Timothy M. Shead).
1763 2004-05-01 Martin Schulze <mschulze@cvs.gnome.org>
1765 * README: Updated for libsigc++-2.0.
1769 2004-04-27 Martin Schulze <mschulze@cvs.gnome.org>
1771 * configure.ac: Bump version number to 2.0.1.
1772 * NEWS: Add ChangeLog summary for version 2.0.1.
1773 * sigc++/adaptors/lambda/macros/base.h.m4: Fixed documentation.
1774 * sigc++/adaptors/macros/bind.h.m4: Hide work-arounds from doxygen.
1775 * scripts/cxx.m4, sigc++config.h.in, configure.ac,
1776 sigc++/adaptors/macros/bind.h.m4: Removed configure check. It
1777 showed that the Apple gcc can also compile the sophisticated version
1780 2004-04-26 Martin Schulze <mschulze@cvs.gnome.org>
1782 * sigc++/macros/object_slot.h.m4: Modified test for SigC::Object
1783 inheritance so that it also works if SigC::Object is virtual base.
1784 (Fixes bug 141094 reported by Jonathan Brandmeyer)
1786 2004-04-26 Martin Schulze <mschulze@cvs.gnome.org>
1788 * scripts/cxx.m4: Updated the configure check. It would probably
1789 have succeeded on the Apple.
1791 2004-04-26 Martin Schulze <mschulze@cvs.gnome.org>
1793 * sigc++/adaptors/macros/bind.h.m4: Add work-arounds for
1794 bind<-1>::deduce_result_type compilation error on Apple gcc 3.3.
1795 * scripts/cxx.m4, sigc++config.h.in, configure.ac: Add configure
1796 check for the compilation error above.
1797 * sigc++/adaptors/lambda/macros/operator.h.m4: Replace _A with
1798 _Aa. _A is a reserved keyword on Apple gcc 3.3 (Spundun Bhatt).
1799 (fixes bug #10444 reported by Spundun Bhatt)
1801 2004-04-19 Martin Schulze <mschulze@cvs.gnome.org>
1803 * sigc++/signal_base.cc: Fixed serious bug in signal_base::impl():
1804 Only reference a newly created object (initial reference).
1805 (This fixes bug #140269 reported by Andris.)
1807 2004-04-19 Murray Cumming <murrayc@murrayc.com>
1809 * scripts/cxx.m4: Updated the operator() template check, because it
1810 failed with gcc 3.4 (from cvs). Apparently the template keyword can
1811 only be used from another template.
1815 2004-04-06 Martin Schulze <mschulze@cvs.gnome.org>
1817 * configure.ac: Bump version number to 2.0.0.
1818 * NEWS: Add ChangeLog summary for version 2.0.0.
1819 * TODO, AUTHORS: Bring up to date.
1820 * sigc++-2.0.pc.in, Makefile.am: 1.9 -> 2.0
1821 * Added more documentation.
1823 2004-04-10 Murray Cumming <murrayc@murrayc.com>
1825 * sigc++/connection.[h|cc]: Implement blocked() to avoid undefined
1826 symbol linker error.
1828 2004-04-08 Murray Cumming <murrayc@murrayc.com>
1830 * dist the scripts directory.
1834 2004-04-06 Martin Schulze <teebaum@cvs.gnome.org>
1836 * configure.ac: Bump version number to 1.9.16.
1837 * NEWS: Add ChangeLog summary for version 1.9.16.
1839 2004-04-02 Murray Cumming <murrayc@murrayc.com>
1841 * sigc++/connection.cc: Make block() and unblock() always return a
1842 value, to fix compiler warnings. Patch from bug #138620 by
1843 Alexander Nedotsukov.
1845 2004-04-02 Murray Cumming <murrayc@murrayc.com>
1847 * Fix the compile of examples/member_method.cc. Bug #131701 from
1848 Kirill Smelkov. I also made the examples build as part of the regular
1851 2004-04-02 Murray Cumming <murrayc@murrayc.com>
1853 * sigc++config.h.m4: Remove every undef apart from the one we need, to
1854 avoid clashes, because we #include this in a public header.
1856 2004-03-25 Murray Cumming <murrayc@murrayc.com>
1858 * scripts/cxx.m4, configure.in, sigc++config.h.in: Rename the
1859 template_keyword check to template_specialization, because the problem
1860 is with or without the keyword.
1861 * sigc++/adaptors/macros/adaptor_trait.h.m4: Define
1862 SIGC_WORKAROUND_OPERATOR_PARENTHESES, which calls either operator() or
1863 sun_forte_workaround() depending on the result of the compiler test.
1864 * many .m4 files: Add sun_forte_workaround methods that call the
1865 operator() methods. Put them in #ifdefs so that only SUN Forte C++
1868 2004-03-22 Murray Cumming <murrayc@murrayc.com>
1870 * Makefile.am, sigc++/Makfile.am: Fix the sigc++config.h.in disting,
1871 to fix make distcheck.
1873 2004-03-21 Murray Cumming <murrayc@murrayc.com>
1875 * Rename config.h.in to sigc++config.h.in so that gtkmm does not
1876 include some other config.h at strange times - fixes a problem in
1877 the gtkmm demos. This should really be in the sigc++ directory, but
1878 that seems to add that as an include path, which causes the STL
1879 headers to include sigc++/signal.h instead of some STL signal.h header.
1881 2004-03-20 Murray Cumming <murrayc@murrayc.com>
1883 * Makefile.am: Install the config.h platform-specific header.
1884 * sigc++-2.0.pc.in: Report the include path for config.h
1886 2004-03-20 Murray Cumming <murrayc@murrayc.com>
1888 * Added config.h.in, using autoheader, from which config.h will be
1889 generated, so we can detect compiler features.
1890 * configure.ac: Added AC_CONFIG_HEADER(config.h) to generate config.h
1892 * scripts/cxx.m4: Added this directory and file, with a
1893 SIGC_CXX_TEMPLATE_KEYWORD_OPERATOR_OVERLOAD macro that defines
1894 the SIGC_TEMPLATE_KEYWORD_OPERATOR_OVERLOAD C macro.
1895 * autogen.sh: Added -I scripts to the aclocal call, so that it finds
1896 the m4 macro for configure.ac.
1897 * sigc++/adapators/macros/adaptor_trait.h.m4: Include config.h and
1898 use SIGC_TEMPLATE_KEYOWRD_OPERATOR_OVERLOAD.
1900 2004-03-18 Martin Schulze <mschulze@cvs.gnome.org>
1902 * tests/test_mem_fun.cc, tests/test_ptr_fun.cc: Don't test
1903 making functors from overloaded methods with partial template
1904 specialization. Not portable among different compilers (SUN FORTE).
1905 * adaptors/macros/apdaptor_trait.h.m4: Only gcc seems to use the
1906 notation A.template operator()<...>(...) => adapt preprocessor check
1907 for #define LIBSIGC_TEMPLATE_PREFIX. TODO: replace with configure check.
1909 2004-03-13 Murray Cumming <murrayc@murrayc.com>
1911 * g++ 3.4 (pre-release) build fixes:
1912 * sigc++/macros/signal.h.m4: slot_iterator_buf::operator*():
1913 Use blocked() and empty() instead of non-existant blocked_and_empty().
1914 * sigc++/functors/macros/mem_fun.h.m4: memfun_functor*::operator()():
1915 Use this->func_ptr_ instead of just func_ptr_.
1916 * sigc++/adaptors/macros/deduce_result_type.h.m4: Use
1917 T_functor::template deduce_result_type<> instead of just
1918 T_functor::deduce_result_type<>.
1919 * sigc++/adaptors/lambda/macros/base.h.m4, operator.h.m4, group.h.m4::
1920 Use template keyword again. operator[](): Use this->value_ instead of
1922 * sigc++/adaptors/lambda/macros/bind/m4: Use template keyword, and
1924 * sigc++/adaptors/macros/compose.h.m4, hide.h.m4, bind_return.h.m4,
1925 exception_catch.h.m4:
1926 rettype.h.m4, rettype_return.h.m4: Use template keyword,and this-> again
1930 2004-02-27 Martin Schulze <teebaum@cvs.gnome.org>
1932 * configure.ac: Bump version number to 1.9.15.
1933 * NEWS: Add ChangeLog summary for version 1.9.15.
1935 2004-02-27 Martin Schulze <teebaum@cvs.gnome.org>
1937 * sigc++/functors/macros/slot.h.m4: Make the unnumbered slot templates'
1938 copy ctors use the copy ctors of the base class. Fixes bug #24698.
1939 * tests/test_slot.cc: Test copy ctor (Bryan Forbes).
1941 2004-02-27 Martin Schulze <teebaum@cvs.gnome.org>
1943 * tests/type_functor_trait.cc: Bring it up-to-date (use sigc::ref).
1944 Make it work with the SUN Forte.
1946 2004-02-24 Martin Schulze <teebaum@cvs.gnome.org>
1948 * sigc++/type_traits.h: Make is_base_and_derived<> work with the SUN Forte.
1950 2004-02-19 Martin Schulze <teebaum@cvs.gnome.org>
1952 * sigc++/type_traits.h: Make is_base_and_derived<> platform independant.
1953 * sigc++/adaptors/lambda/macros/base.h.m4: Make lambda_core<> ctors
1954 explicit. Remove an unused ctor from lambda_core<T_type, true>.
1956 2004-02-14 Martin Schulze <teebaum@cvs.gnome.org>
1958 * sigc++/functors/slot_base.h, sigc++/functors/macros/slot.h.m4:
1959 Move some documentation to slot_base.h.
1960 * sigc++/signal_base.h, sigc++/macros/signal.h.m4:
1961 Move some documentation to signal_base.h.
1964 * sigc++/functors/macros/slot.h.m4: Add numbered slot# templates.
1965 Make unnumbered slot templates inherit from slot#.
1968 * sigc++/functors/macros/mem_fun.h.m4: Allow for methods of the object's
1969 base types to be passed into sigc::mem_fun(). (Used to be the case in
1972 2004-02-13 Murray Cumming <murrayc@usa.net>
1974 * sigc++/functors/slot_base.[h|cc], sigc++/trackable.[h|cc]: Create
1975 and use a typedef for the destroy_notify callback functions, to avoid
1976 confusion function pointer declaration syntax in the API.
1978 2004-02-13 Murray Cumming <murrayc@murrayc.com>
1980 * Moved implementation to .cc files:
1981 * sigc++/functors/: Added slot_base.[h|cc] which contains non-template
1982 code that was previsouly in the generated functors/slot.h and
1983 non-generated slot.cc files. All non-inline implementation is now in
1985 * sigc++/functors/macros/slot.m4: Removed the code that has been moved
1986 to slot_base.[h|cc].
1987 * sigc++/: Added signal_base.[h|cc] which contains non-template code
1988 that was previously in the generated signal.h and non-generated
1989 signal.cc file. All non-inline implementation is now in the .cc file.
1990 * sigc++/macros/signal.m4: Removed the code that ahs been moved to
1992 * sigc++/connector.[h|cc]: method implementation moved to the .cc file.
1996 2004-02-13 Martin Schulze <teebaum@cvs.gnome.org>
1998 * configure.ac: Bump version number to 1.9.14.
1999 * NEWS: Add ChangeLog summary for version 1.9.14.
2001 2004-02-09 Murray Cumming <murrayc@usa.net>
2003 * sigc++/functors/macros/slot.h.m4: slot_base: Added operator bool(), needed to
2004 check for a slot that is created with the default constructor. This was
2005 present in libsigc++ 1.2 also.
2007 2004-02-06 Murray Cumming <murrayc@usa.net>
2009 * Makefile.am: Build the docs directory, by adding it to SUBDIRS.
2010 * docs/Doxyfile.in: Updated to be more glibmm-like.
2011 * Added some @deprecated doxygen bits.
2012 * sigc++/macros/signal.h.m4: Call base constructor from signal_base
2013 constructor - this is an error-as-warning when building gtkmm.
2017 2003-11-30 Martin Schulze <teebaum@cvs.gnome.org>
2019 * configure.ac: Bump version number to 1.9.13.
2020 * NEWS: Add ChangeLog summary for version 1.9.13.
2021 * Makefile.am, MSVC_Net2003/Makefile.am, configure.ac:
2022 Distribute MS .Net project files.
2023 * sigc++/adaptors/macros/[bind,hide].h.m4: Correct and add
2024 documentation. Make hide_functor ctor explicit.
2026 2003-11-11 Martin Schulze <teebaum@cvs.gnome.org>
2028 * sigc++/adaptors/macros/[bind,hide].h.m4: Change to zero-based
2029 argument index in numbered bind() and hide() overload
2030 (Agreement on the mailing list).
2031 Support binding up to CALL_SIZE arguments with one bind adaptor.
2032 (Requested by joey yandle and others).
2033 Only support binding of multiple arguments in unnumberd overloads
2034 to keep the API simple (Requested by Murray Cumming).
2035 * tests/test_[bind,hide,functor_trait].cc, sigc++/bind.h:
2036 Reflect API changes in compatibility module and test cases.
2038 2003-11-10 Martin Schulze <teebaum@cvs.gnome.org>
2040 * sigc++/adaptors/macros/[bind,hide].h.m4: Add unnumbered
2041 bind() and hide() overloads to make specifying the argument
2042 position optional (Proposed by Jeff Franks).
2043 * tests/test_[bind,hide].cc: Test unnumbered bind() and hide().
2044 * sigc++/adaptors/macros/adaptor_trait.h.m4:
2045 Change "#ifdef MSVC" to "#ifdef _MSC_VER" (Roel Vanhout).
2047 2003-11-09 Martin Schulze <teebaum@cvs.gnome.org>
2049 * sigc++/functors/macros/slot.h.m4: Change functor type in
2050 typed_slot_rep to adaptor_trait::adaptor_type<T_functor>
2051 and use explicit function template instantiation in
2052 internal::slot_call::call_it(). Avoids copying of arguments
2053 in call_it() and enables binding of object instances
2054 to class methods through bind() (Reported by Jeff Franks).
2055 * tests/test_bind.cc: Test binding object instances to
2056 class methods through bind().
2057 * sigc++/adaptors/adaptors.h: Include retype[_result].h.
2058 * sigc++/adaptors/macros/adaptor_trait.h.m4:
2059 - Add documentation.
2060 - Mark some c-tors as explicit.
2061 - Remove ununsed operator T_functor&() from adaptor_functor.
2062 * sigc++/adaptors/macros/deduce_result_type.h.m4:
2063 Rewrite parts of the documentation.
2064 * sigc++/adaptors/macros/bind.h.m4: Add documentation.
2065 * sigc++/functors/macros/mem_fun.h.m4: Remove unnecessary
2066 explicit markers. Minor fixes to documentation.
2067 * sigc++/functors/macros/functor_trait.h.m4:
2068 Minor fixes to documentation.
2072 2003-11-04 Martin Schulze <teebaum@cvs.gnome.org>
2074 * configure.ac: Bump version number to 1.9.12.
2075 * NEWS: Add ChangeLog summary for version 1.9.12.
2077 2003-11-03 Martin Schulze <teebaum@cvs.gnome.org>
2079 * sigc++/macros/signal.h.m4: Document accumulators.
2080 Move slot_iterator_buf into namespace internal. Since
2081 accumulators have the iterator type as a template argument
2082 there is no need to expose this very internal type.
2083 * sigc++/functors/macros/*.m4: Regroup documentation.
2084 Documentation of the core parts of the library should be
2087 2003-11-02 Martin Schulze <teebaum@cvs.gnome.org>
2089 * Improve documentation of the core parts of the library.
2090 * tests/test_ptr_fun.cc: Test ptr_fun() with static
2093 2003-11-02 Martin Schulze <teebaum@cvs.gnome.org>
2095 * Move all .m4 files into new subdirectories
2096 sigc++/[...]/macros. Install the .m4 files on
2097 "make install" (Reported by Ron Steinke).
2099 2003-11-01 Martin Schulze <teebaum@cvs.gnome.org>
2101 * sigc++/[class,method,object]_slot.h.m4: Include
2102 sigc++/functors/mem_fun.h (Reported by Ron Steinke).
2104 2003-11-01 Martin Schulze <teebaum@cvs.gnome.org>
2106 * sigc++/adaptors/lambda/operator.h.m4: Add negation
2107 operator I have completely overlooked until now.
2108 * sigc++/tests/test_lambda.cc: Test negation operator.
2110 2003-11-01 Martin Schulze <teebaum@cvs.gnome.org>
2112 * sigc++/[class_slot,method_slot,object_slot,hide].h.m4,
2113 sigc++/signal.h.m4, sigc++/functors/mem_fun.h.m4:
2114 - Use a shorter notation for ..._mem_function variants.
2115 - Change order of mem_funcotr<>'s template arguments to
2116 match std::mem_fun_t and to be more consistent with adaptors.
2117 - Use ::sigc::slot's implicit ctor in compatibility module.
2118 * sigc++/adaptors/lambda/operator.h.m4: Change some
2119 lambda action names to match action names in std.
2122 * sigc++/adaptors/retype.h.m4: New file adding
2124 * sigc++/Makefile.am: Build and distribute new file.
2125 * tests/test_retype.cc: New file testing adaptor retype.
2126 * MSVC_Net2003/tests/test_retype/test_reytype.vcproj,
2127 tests/Makefile.am: Build and distribute new test case.
2129 2003-11-01 Martin Schulze <teebaum@cvs.gnome.org>
2131 * MSVC_Net2003: New directory containing project
2132 files for Visual Studio .Net 2003.
2133 Credits to Roel Vanhout <roel@riks.nl>!
2135 2003-11-01 Martin Schulze <teebaum@cvs.gnome.org>
2137 * sigc++/retype.h.m4: Use LIBSIGC_TEMPLATE_PREFIX
2138 in explicit function template instantiations.
2139 * sigc++/type_traits.h: Add template specialization
2140 for arrays (T_type[N]) to disable non-working member
2141 type_trait<T_type[N]>::instance().
2142 * sigc++/visit_each.h: Remove more disturbing
2143 limit_derived_target<>::operator() overloads.
2144 (Should have noticed earlier that they are unnecessary.)
2145 * sigc++/adaptors/deduce_result_type.h.m4,
2146 sigc++/adaptors/lambda/operator.h.m4,
2147 sigc++/functors/functor_trait.h.m4,
2148 tests/test_[bind,compose,exception_catch,hide,lambda].cc:
2149 Completely removed support for typeof(). We don't need
2150 it any more and it is completely non-standard!
2152 2003-10-30 Cedric Gustin <cedric.gustin@swing.be>
2154 * configure.ac: Added test of win32 platform. Commented
2155 out AM_DISABLE_SHARED (DLLs are shared libraries).
2156 * sigc++/Makefile.am: added a few LDFLAGS for win32
2159 2003-10-30 Martin Schulze <teebaum@cvs.gnome.org>
2161 * sigc++/signal.h.m4: Add SigC::Signal#<>::slot().
2162 * sigc++/slot.h.m4: Comment out make_slot() work-around.
2163 * sigc++/adaptors/bind.h.m4: Remove unnecessary brackets
2164 in template argument lists. They are confusing MSVC.
2165 * sigc++/adaptors/*.h.m4, sigc++/adaptors/lambda/*.h.m4:
2166 Use LIBSIGC_TEMPLATE_PREFIX in explicit function
2167 template instantiations.
2168 * sigc++/tests/test_*.cc:
2169 - Include <string> where std::string is used.
2170 - Use double instead of float.
2172 2003-10-27 Martin Schulze <teebaum@cvs.gnome.org>
2174 * sigc++/retype.h.m4: Cleanup.
2175 * TODO: Bring it up to date.
2179 2003-10-26 Martin Schulze <teebaum@cvs.gnome.org>
2181 * configure.ac: Bump version number to 1.9.11.
2182 * NEWS: Add ChangeLog summary for version 1.9.11.
2184 2003-10-26 Martin Schulze <teebaum@cvs.gnome.org>
2186 Compatiblity module:
2187 * sigc++/signal.h.m4: Move definition of compatiblity
2188 classes SigC::SignalN to here.
2189 * sigc++/connection.h:
2190 - Add connection::connected().
2191 - Add compatibility typedef SigC::Connection.
2192 * sigc++/bind.h, sigc++/bind_return.h,
2193 sigc++/class_slot.h.m4, sigc++/hide.h.m4,
2194 sigc++/method_slot.h.m4, sigc++/object.h,
2195 sigc++/object_slot.h.m4, sigc++/retype.h.m4,
2196 sigc++/retype_return.h sigc++/slot.h.m4,
2197 sigc++/compatibility.h:
2198 New files to complete compatibility module.
2199 Split content of compatibility.h.m4 among the new files.
2200 * sigc++/compatibility.h.m4: Removed.
2201 * Makefile.am: Build and distribute new files.
2202 * tests/test_compatibility.cc: Test new stuff.
2205 * sigc++/functors/slot.h.m4: Fix copy constructor and
2206 operator=() of slot template.
2207 * sigc++/adaptors/bind.h.m4: Fix deduce_result_type
2208 template specializations. bind<0>() probably compiles
2211 2003-10-26 Martin Schulze <teebaum@cvs.gnome.org>
2214 * sigc++/functors/slot.{cc,h.m4}:
2215 - Fix notification process: don't defer detaching of a
2216 slot from all referred trackables during signal emission!
2217 - Size optimization: replace virtual functions from
2218 struct typed_slot_rep with function pointers in slot_rep
2219 (reduces size of a typical typed_slot_rep instantiation
2221 * tests/test_slot.cc: Test sigc::slot more thoroughly.
2222 * sigc++/functors/mem_fun.h.m4: Fix visit_each().
2223 * sigc++/adaptos/bind_return.h.m4: Add support for
2225 * tests/test_bind_return.cc: Use sigc::ref().
2226 * sigc++/signal.h.m4: Avoid compiler warning about
2227 uninitialized variable r_ in emit().
2228 * sigc++/visit_each.h: Cleanup.
2231 * sigc++/adpators/lambda/operators.h.m4: Add
2232 lambda actions sigc::{reinterpret,static,dynamic}_cast_
2233 to support explicit parameter conversion.
2234 * tests/test_lambda.cc: Test sigc::static_cast_.
2235 * sigc++/adaptors/retype_return.h.m4: New file adding
2236 adaptor retype_return (and hide_return).
2237 * sigc++/Makefile.am: Build and distribute new file.
2238 * tests/test_retype_return.cc: New file testing
2239 adaptor retype_return (and hide_return).
2240 * tests/Makefile.am: Build and distribute new test case.
2242 2003-10-25 Martin Schulze <teebaum@cvs.gnome.org>
2244 * sigc++/visit_each.h: Remove disturbing
2245 limit_derived_target<>::operator() overloads.
2246 * sigc++/adaptors/bind.h.m4: Add support for sigc::ref().
2247 * tests/test_bind.cc: Test sigc::ref().
2248 * sigc++/adaptors/lambda/{operator,group,base}.h.m4:
2249 - Move support for sigc::ref() from lambda_core<> into
2250 lambda operator and lambda group creator functions.
2251 - Add missing visit_each() overload for lambda<> template.
2252 * tests/test_lambda.cc: Test auto-disconnection.
2253 TODO: Fix a strange bug that leads to "Bus error"
2254 during auto-disconnection.
2258 2003-10-23 Martin Schulze <teebaum@cvs.gnome.org>
2260 * configure.ac: Bump version number to 1.9.10.
2261 * NEWS: Add ChangeLog summary for version 1.9.10.
2263 2003-10-23 Martin Schulze <teebaum@cvs.gnome.org>
2265 * sigc++/functors/{functor_trait,slot}.h.m4:
2266 Move definition of struct nil into functor_trait.h.
2268 2003-10-23 Martin Schulze <teebaum@cvs.gnome.org>
2270 * configure.ac: Disable typeof() compiler checks.
2271 * sigc++/adaptors/bind.h.m4: Remove unnecessary
2272 deduce_result_type<> template specializations.
2274 2003-10-20 Martin Schulze <teebaum@cvs.gnome.org>
2276 * sigc++/adaptors/compose.h.m4:
2277 Correct order of typedefs for good. (Patch from Jeff Franks.)
2281 2003-10-20 Martin Schulze <teebaum@cvs.gnome.org>
2283 * sigc++/connection.h: Add constructor that takes
2284 a sigc::slot_base& to support 3rd-party slot lists
2285 like they are used in glibmm/gtkmm.
2286 * sigc++/functors/slot.h.m4: Make sigc::slot::call_type public.
2287 (Fixes compile problems reported by Jeff Franks.)
2288 * sig++/type_traits.h: Don't use long long in
2289 sigc::is_base_and_derived.
2290 (Fixes compile problems reported by Jeff Franks.)
2291 * sigc++/adaptors/{bind,compose,hide,exception_catch}.h.m4:
2292 Correct order of typedefs. (Repoted by Jeff Franks.)
2293 * configure.ac: Bump version number to 1.9.9.
2294 * NEWS: Add ChangeLog summary for version 1.9.9.
2298 2003-10-19 Martin Schulze <teebaum@cvs.gnome.org>
2300 * sigc++/functors/slot.h.m4: Define doxygen group functors.
2301 * configure.ac: Bump version number to 1.9.8.
2302 * NEWS: Add ChangeLog summary for version 1.9.8.
2304 2003-10-19 Martin Schulze <teebaum@cvs.gnome.org>
2306 * NEWS: Add announces of versions 1.9.6 and 1.9.7.
2307 * sigc++/compatibility.h.m4: New file. Defines namespace SigC.
2308 namespace SigC should be API compatible to libsigc++-1.2.
2309 * sigc++/Makefile.am: Build compatibility.h.
2310 * tests/test_compatibility.cc, tests/Makefile.am:
2311 Add test case for compatibility module.
2312 * docs/index.html: Change group names.
2313 * sigc++/sigc++.h: Include connection.h.
2314 * sigc++/connection.{cc,h}:
2315 - Rename dependency to destroy_notify_callback.
2316 - Change parameter name in set_slot() from d to data.
2317 - Fix operator=(): Add "return *this;"
2318 - Get rid of namespace functor.
2319 - Corrections in documentation.
2320 * sigc++/signal.{cc,h.m4}:
2321 - Add reference counter to signal_impl. Replaces "bool destroy_".
2322 - Move signal_base, slot_iterator[_buf], slot_list out of
2323 namespace internal. They are part of the public API.
2324 - Add convenience function signal#::make_slot().
2325 - Get rid of namespace functor.
2326 - Corrections in documentation.
2327 * sigc++/trackable.{cc,h}:
2328 - Rename dependency to destroy_notify_callback.
2329 - Rename trackable::clear() to trackable::notify_callbacks().
2330 - Corrections in documentation.
2331 * sigc++/type_traits.h: Add documentation.
2332 * sigc++/visit_each.h:
2333 - Get rid of namespace functor.
2334 - Add documentation.
2335 * sigc++/adaptors[/lambda]/*: Get rid of namespace functor.
2336 * sigc++/functors/{functor_trait.h,ptr_fun.h.m4,mem_fun.h.m4}:
2337 - Get rid of namespace functor.
2338 - Corrections in documentation / add documentation.
2339 * sigc++/functors/slot.{cc,h.m4}:
2340 - Move slot_base out of namespace internal. It's public API.
2341 - Get rid of one-letter-parameter-names.
2342 - Get rid of namespace functor.
2343 - Corrections in documentation.
2344 * tests/*.cc: Get rid of "using namespace ...".
2346 2003-09-10 Martin Schulze <teebaum@cvs.gnome.org>
2348 * sigc++/adaptors/lambda/{base,operators}.h.m4:
2349 Add subscript ([]) and assign (=) operator. I think there are now
2350 enough operators available to make any future power user happy.
2351 The only one missing is the comma operator and if we added it
2352 the logical consequence would be to also add if(), switch(), do(),
2353 etc. lambda expressions which are really out of place in libsigc++.
2354 * sigc++/type_traits.h: Fix is_base_and_derived<> for const types.
2355 * tests/test_lambda.cc: Test new operators.
2359 2003-09-05 Martin Schulze <teebaum@cvs.gnome.org>
2361 * configure.ac: Bump version number to 1.9.7.
2363 2003-09-03 Martin Schulze <teebaum@cvs.gnome.org>
2365 * sigc++/adaptors/lambda/operator.h.m4:
2366 - Restructure so that the size of the generated source file stays
2367 reasonable for 34 operators: There are only two lambda templates
2368 lambda_operator and lambda_operator_unary. The action is an additional
2369 template parameter. A small template lambda_action[_unary] is specialized
2371 - Add most operators that boost::lambda supports. Missing operators are
2372 "=", "[]", "," and support for pointer arithmetic. I don't know if it's
2373 worth adding these. In libsigc++, the purpose of lambda operators is to
2374 provide some extra functionality for the group adaptor.
2375 * tests/test_lambda.cc:
2376 Test pre-increment, address and dereference operator.
2378 2003-08-31 Martin Schulze <teebaum@cvs.gnome.org>
2380 * sigc++/reference_wrapper.h, sigc++/type_traits.h, sigc++/Makefile.am:
2381 New file reference_wrapper.h provides ref() to specify that adaptors/lambdas
2382 should take a reference to the object passed into ref() instead of a copy.
2383 * tests/test_lambda.cc:
2384 - Test group() with mem_fun().
2385 - Use ref() where lambdas should store references to objects.
2386 - Test var() and constant().
2387 * sigc++/adaptors/lambda/base.h.m4:
2388 - Support ref() in return type deduction.
2389 - Add var() and constant() which create lambdas for usage with lambda operators.
2390 * sigc++/adaptors/lambda/operator.h.m4:
2391 - Fix return type deduction.
2392 - Remove operator{+,-,*,...} overloads added on 2003-08-29. ref() is way cleaner.
2393 * sigc++/adaptors/lambda/group.h.m4,
2394 sigc++/adaptors/bind.h.m4, sigc++/adaptors/compose.h.m4,
2395 sigc++/adaptors/exception_catch.h.m4, sigc++/adaptors/hide.h.m4:
2396 Fix return type deduction.
2398 2003-08-29 Martin Schulze <teebaum@cvs.gnome.org>
2400 * tests/test_lambda.cc: Add more tests.
2401 * sigc++/adaptors/lambda/select.h.m4, sigc++/adaptors/lambda/lambda.cc.m4:
2402 Make _1, _2, ... constant.
2403 * sigc++/adaptors/lambda/operator.h.m4:
2404 Add operator{+,-,*,...} overloads to distinguish between const and non-const objects.
2405 Store references to non-const objects rather than copies.
2406 This allows expressions like e.g. std::cout << _1.
2407 * sigc++/adaptors/lambda/base.h.m4, sigc++/adaptors/lambda/group.h.m4:
2408 Remove void specializations. Functors returning void are tested and work fine.
2410 2003-08-27 Martin Schulze <teebaum@cvs.gnome.org>
2412 * tests/test_callof.cc, tests/test_deduce_result_type.cc:
2413 Rename, correct and improve this test case.
2414 * tests/Makefile.am: Build and run test_deduce_result_type
2415 instead of test_callof.
2417 2003-08-27 Martin Schulze <teebaum@cvs.gnome.org>
2421 2003-08-27 Martin Schulze <teebaum@cvs.gnome.org>
2423 * sigc++/adaptors/hide.h.m4: Remove usage of callof_ignore_arg<>.
2424 * sigc++/callof.h.m4, sigc++/adaptors/deduce_result_type.h.m4,
2425 sigc++/functors/functor_trait.h.m4:
2426 Remove the first and move deduce_result_type templates from
2427 functor_trait.h.m4 into new file deduce_result_type.h.m4.
2428 * sigc++/Makefile.am, sigc++/sigc++.h, sigc++/adaptors/adaptor_trait.h.m4:
2429 Build and include sigc++/adaptors/deduce_result_type.h instead of callof.h.
2430 * sigc++/functors/slot.h.m4: Document struct nil.
2432 2003-08-24 Martin Schulze <teebaum@cvs.gnome.org>
2434 * sigc++/functors/functor_trait.h.m4: Simplify usage of convenience
2435 macro SIGC_FUNCTORS_HAVE_RESULT_TYPE:
2436 namespace sigc{ namespace functor{ SIGC_FUNCTORS_HAVE_RESULT_TYPE }}
2438 2003-08-24 Martin Schulze <teebaum@cvs.gnome.org>
2440 * sigc++/functors/functor_trait.h,m4, sigc++/adaptors[/lambda]/*.h.m4:
2441 Merge adaptor return type deduction and typeof() into
2442 sigc::functor::deduce_result_type. Use it for all adaptors.
2443 * tests/test_compose.cc: Only test multi-type get-functor if
2444 typeof() if supported.
2446 2003-08-24 Martin Schulze <teebaum@cvs.gnome.org>
2448 * sigc++/adaptors[/lambda]/*.h.m4:
2449 - Remove unnecessary void specializations. In fact, only the one
2450 for sigc::functor::exception_catch<> is needed and I don't really
2451 understand why. For the lambda stuff the void specializatoins are
2452 just commented out at the moment.
2453 - Make typeof() optional. Surprisingly, I got the lambda stuff working
2454 without typeof()! The test suite doesn't catch all cases yet, so maybe
2455 some thing are still not working.
2456 TODO: Implement configure check.
2457 * tests/test_bind.cc, tests/test_compose.cc tests/test_exception_catch.cc,
2458 tests/test_hide.cc, tests/test_lambda.cc:
2459 Only test multiple functor return types if typeof() is supported.
2461 2003-08-06 Martin Schulze <teebaum@cvs.gnome.org>
2463 * sigc++/trackable.{cc,h}: Add function trackable::clear().
2465 2003-06-24 Andreas Rottmann <rottmann@users.sourceforge.net>
2467 * TODO: Minor tweaks.
2469 2003-06-23 Andreas Rottmann <rottmann@users.sourceforge.net>
2471 * docs/reference/Doxyfile.in: Use these variables.
2472 * docs/reference/Makefile.am (html/index.html): Provide doxygen
2473 with SRCDIR and TOP_SRCDIR environment variables.
2475 * sigc++/functors/slot.h.m4: Make slot::call_type typedef public;
2476 this fixes a g++ 3.3 error in signal.h.
2478 * sigc++/signal.h.m4: Make the signal::accumulated class public;
2479 this fixes a g++ 3.3 error in test_accumulated.cc.
2481 2003-06-15 Martin Schulze <teebaum@cvs.gnome.org>
2483 * sigc++/functor/slot.h.m4: Correct typing error in docs.
2484 * sigc++/functor/ptr_fun.h.m4: Document the whole thing.
2486 2003-05-31 Murray Cumming <murrayc@usa.net>
2488 * Reference documentation: Rearranged the groups to make it all
2489 a bit more like the libsigc++ 1.2 reference documentation.
2490 Corrected some spelling and grammar too.
2491 This needs a lot of work. The text is very hard to read and it's
2492 generally not appropriate for a user of the code who doesn't
2493 care about the internals. But it's not impossible - our examples
2494 should show us what we need to say in the documentation.
2495 We probably need some more groups for the extra stuff, like we do
2498 2003-05-29 Martin Schulze <teebaum@cvs.gnome.org>
2500 * sigc++/signal.h.m4: Fix documentation.
2501 * sigc++/connection.h, sigc++/functor/slot.h.m4:
2502 Document the whole thing.
2504 2003-05-29 Martin Schulze <teebaum@cvs.gnome.org>
2506 * sigc++/signal.h.m4:
2507 - Remove bogus operator() from unnumbered signal<> and
2508 signal<>::accumulated templates.
2509 - Document the whole thing.
2511 * docs/index.html: Fix some links.
2513 2003-04-06 Martin Schulze <MHL.Schulze@t-online.de>
2515 * TODO, configure.ac, Makefile.am, docs/*:
2516 Add Doxygen framework.
2518 2003-04-06 Martin Schulze <MHL.Schulze@t-online.de>
2520 * sigc++/callof.h.m4, sigc++/adaptors/*, tests/test_callof.cc:
2521 Move sigc::callof<> to sigc::functor::internal::callof<>.
2523 * sigc++/functors/mem_fun.h.m4, tests/test_mem_fun.cc:
2524 Add new types [bound_][const_]volatile_mem_functor, visit_each()
2525 and mem_fun() overloads for volatile qualifier.
2526 Add ctor overloads in bound_*mem_functor and mem_fun() overloads
2527 that take reference instead of pointer.
2529 2003-03-26 Martin Schulze <MHL.Schulze@t-online.de>
2531 * Change "closure" to "slot" throughout sigc++2 (file names,
2532 class names, member variables, documentation, etc.).
2534 2003-03-26 Martin Schulze <MHL.Schulze@t-online.de>
2536 * TODO: Rewrite to reflect recent changes as well as recent discussions.
2538 2003-03-24 Martin Schulze <MHL.Schulze@t-online.de>
2540 * sigc++/adaptors/bind_return.h.m4: Make the adaptor's data member
2541 public so that visit_each() can access it.
2543 * sigc++/adaptors/lambda/*.h.m4: More fixes. Add a note about
2544 malfunctioning typeof() (probably compiler bug in gcc-3.2).
2546 * tests/*.cc: Test references. Fix compose equivalent in test_lambda.
2548 2003-03-24 Martin Schulze <MHL.Schulze@t-online.de>
2550 * sigc++/Makefile.am, sigc++/functors/functor_trait.h[.m4],
2551 sigc++/adaptors/adaptor_trait.h.m4: Move detection of function
2552 and member method pointers' return types from adaptor_trait into
2553 functor_trait. (We'll use functor_trait rather than adaptor_trait for
2554 our lambda stuff.) functor_trait.h needs to be generated from .m4 now.
2556 * sigc++/functors/functor_trait.h.m4: Add convenience macros:
2557 - SIGC_FUNCTORS_HAVE_RESULT_TYPE indicates that the existance of
2558 T_functor::result_type should be assumed for all unknown functors.
2559 - SIGC_FUNCTOR_TRAIT(T_functor, T_result) explicitly specifies the
2560 result type of a functor.
2561 ("typename functor_trait<T_functor>::result_type") is used to
2562 determine the return type of our adaptors' operator()() overloads.
2564 * sigc++/adaptors/[lambda/]*.h.m4: Various fixes in visit_each() and
2565 operator()() overloads to make these operator()() overloads usable.
2566 Most of them were just commented out before. Some adaptor types also
2567 have void specializations, now.
2569 * sigc++/adaptors/lambda/group.h.m4: Change syntax from
2570 "[some_functor] % grp([args])" to "group([some_functor], [args])"
2571 like we agreed on the ml some time ago.
2573 * sigc++/tests/test_[all adaptors].cc: Test stuff that didn't work
2576 2003-03-22 Murray Cumming <murrayc@usa.net>
2578 * Added pgk-config file, from a mystery person in bug #108857
2580 2003-03-22 Martin Schulze <MHL.Schulze@t-online.de>
2582 * tests/test_bind.cc: Test and show how to use functor_trait
2583 for user defined or 3rd-party functors so that a
2584 bind<0>([functor],[arg1])() call with no arguments can return a value.
2586 2003-03-20 Martin Schulze <MHL.Schulze@t-online.de>
2588 * sigc++/callof.h.m4: Add explanations. Comment in / create templates
2589 callof_safe[#]. Unfortunately they don't work for functors with overloaded
2590 operator() so we don't use it for now. At least everything is documented.
2592 * sigc++/functors/functor_trait.h, sigc++/functors/*.h.m4: Add back
2593 functor_base compiler hint. We're using it now in adaptor_functor<>.
2595 * sigc++/adaptors/{adaptor_trait,bind}.h.m4: Make operator() overloads
2596 with no arguments return the result of the functor invocation.
2597 Fix multiple bind<0>().
2598 * tests/test_bind.cc: Test the stuff that's working now.
2600 2003-03-16 Murray Cumming <murrayc@usa.net>
2602 * Added sigc++/sigc++.h, like in libsigc++ 1.2
2603 * examples: Added member_method example, which uses a class method
2604 and which demonstrates disconnection.
2608 2003-03-11 Andreas Rottmann <rottmann@users.sourceforge.net>
2610 * sigc++/Makefile.am: Use substitution references instead of
2611 $(patsubst). Is shorter and fixes the strange-dirs-in-dist-tarball
2614 2003-03-09 Martin Schulze <MHL.Schulze@t-online.de>
2616 * sigc++/connection.h: Add block() capability.
2618 2003-03-09 Martin Schulze <MHL.Schulze@t-online.de>
2620 * sigc++/signal.{cc,h.m4}: Add flag signal_impl::destroy_
2621 and function signal_impl::destroy(). Use them to defer
2622 the destruction of the signal_impl object during signal
2625 * tests/test_disconnect.cc: Add tests for the connection
2626 class and for deleting signals during emission.
2628 2003-03-09 Martin Schulze <MHL.Schulze@t-online.de>
2630 * sigc++/connection.{cc,h}, sigc++/Makefile.am:
2631 - New files that add a connection class. Objects of this
2632 class are constructed from closure list iterators and can
2633 be used to disconnect the refered closure. As opposed to
2634 iterators they stay valid beyond the lifetime of the closure.
2636 2003-03-09 Martin Schulze <MHL.Schulze@t-online.de>
2638 * sigc++/functors/closure.{cc,h.m4}, sigc++/signal.cc:
2639 - Rename closure_{base,rep}::[set_]dependency_ -> [set_]parent_.
2640 - Make closure_rep inherit trackable. This allows for
2641 connection objects that stay valid beyond the life time
2642 of the refered closure.
2643 - Make some one-line-functions inline again.
2645 2003-03-08 Martin Schulze <MHL.Schulze@t-online.de>
2647 * sigc++/trackable.cc: BUGFIX in trackable_dep_list::clear()
2649 2003-03-08 Andreas Rottmann <rottmann@users.sourceforge.net>
2651 * sigc++/Makefile.am: Rewritten so we can build lambda cleanly.
2652 * sigc++/Makefile.am_fragment: Removed.
2654 * sigc++/functors/Makfile.am: Removed.
2655 * sigc++/adaptors/Makefile.am: Removed.
2656 * sigc++/adaptors/lambda/Makefile.am: Removed.
2657 * configure.ac (AC_OUTPUT): Remove the above Makefiles.
2659 * tests/Makefile.am: Re-included lambda test.
2661 2003-03-07 Martin Schulze <MHL.Schulze@t-online.de>
2663 * sigc++/signal.{cc,h.m4}:
2664 - signal_emit#<>: New templates replacing signal#<>::caller.
2665 The purpose of these templates is implementing the emit
2666 function and optimizing signal emission for the case that
2667 no accumulator is used via template specializations.
2668 - default_accumulator<>: Removed. The default for T_accumulator
2669 in signal#<> now is nil. An example how to use accumulators
2670 is available in tests/test_accumulator.cc.
2671 - signal_{base,impl}: Move the implementation of signal_base's
2672 interface to signal_impl. An object of this class is
2673 dynamically allocated when first connecting a closure to
2674 the signal. This drastically reduces the size of empty signals
2675 and allows for future addition of a reference counter to make
2676 it safe to delete a signal during emission.
2677 - Directly work on closure_rep during signal emission. This
2678 seems to be quicker than using the closure templates.
2679 - Document the classes. Restructure the header file a bit.
2681 * sigc++/functors/closure.h.m4: Make closure_base::rep_ data
2682 member public, so that signal emission can directly work on it.
2684 * tests/test_size.cc: Add an entry for signal_impl.
2686 2003-03-07 Martin Schulze <MHL.Schulze@t-online.de>
2688 * sigc++/functors/closure.{cc,h.m4}:
2689 - closure_base: BUGFIXES in ~closure_base() and operator=().
2690 - Mark some functions with the inline keyword. This seems to
2691 help gcc 3.2 to optimize signal emission and (dis)connection.
2692 - Document the classes. Restructure the header file a bit.
2694 2003-03-07 Martin Schulze <MHL.Schulze@t-online.de>
2696 * sigc++/trackable.{cc,h}: Make trackable allocate a
2697 trackable_dep_list object dynamically when adding the first
2698 dependency. (This reduces the size of objects, that are not
2699 refered by a closure by 4 bytes (50%) and increases the size
2700 of objects that are refered by a closure by 4 bytes (50%)
2701 on a 32 bit architecture => This reduces total memory use
2702 when >50% of the trackables are not refered by a closure.)
2703 Document the classes.
2705 2003-03-05 Martin Schulze <MHL.Schulze@t-online.de>
2707 * tests/Makefile.am, tests/test_size.cc, tests/test_accumulated.cc:
2708 Add two test cases. test_size is showing the size of public and
2709 internal structures. (Which apart from empty signals are smaller
2710 than the sizes of the equivalent libsigc++-1.2 structures.)
2711 test_accumulated is a test for the template signal<>::accumulated<>
2712 at the same time showing the use of accumulators in libsigc++2.
2714 * Offtopic: My note about binary sizes from 2003-02-10 is wrong.
2715 Stripped libsigc++2 test binaries are about 8-10k in size.
2717 2003-03-05 Martin Schulze <MHL.Schulze@t-online.de>
2719 * sigc++/visit_each.h: BUGFIX in template specialization
2720 limit_derive_target<T_Target*,T_action>::with_type<false,T_type>:
2721 Add non-const overloads for static void execute_() avoiding
2722 compile time errors.
2724 2003-02-16 Martin Schulze <MHL.Schulze@t-online.de>
2726 * tests/Makefile.am, tests/test_disconnect.cc:
2727 Add testcase with a mixed connection & disconnection sequence.
2729 2003-02-16 Martin Schulze <MHL.Schulze@t-online.de>
2731 * sigc++/signal.cc: Bugfix in signal_base::insert():
2732 Set notification function in the newly created copy of
2733 slot_ rather than in slot_ itself.
2735 2003-02-10 Martin Schulze <MHL.Schulze@t-online.de>
2737 * sigc++/signal.h.m4: Comment in typedefs for iterator types in
2738 the signal#<> class template. Make signal#<>::connect() return an
2739 iterator for convenience.
2740 (Note that the first change increases the binary size of
2741 tests/test_signal from 201k to 204k, the second change to 206k.)
2743 2003-01-23 Murray Cumming <murrayc@usa.net>
2745 * sigc++/adaptors/lambda is disable temporarily (not built and
2746 not distributed) because it gets built before its parent
2747 directory, but #includes generated sources in the parent directory.
2749 2003-01-22 Murray Cumming <murrayc@usa.net>
2751 * Added Andreas Rottman's example.
2753 2003-01-22 Murray Cumming <murrayc@usa.net>
2755 * Applied Andreas Rottman's make dist fixes.
2757 2003-01-14 Murray Cumming <murrayc@usa.net>
2759 * Added whitespace to make the code more readable.