Imported Upstream version 2.4.1
[platform/upstream/libsigc++.git] / ChangeLog
1 2015-02-28  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
2
3         2.4.1
4
5 2015-02-28  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
6
7         Docs: Update for Doxygen 1.8.9
8
9         * docs/reference/Doxyfile.in: Update for Doxygen 1.8.9.
10
11 2014-10-23  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
12
13         Tests: Improve test_disconnect_during_emit
14
15         * tests/test_disconnect_during_emit.cc: Test that the slot is really
16         disconnected during signal emission.
17
18 2014-10-23  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
19
20         slot_base: Let the assignment operator destroy the slot
21
22         * sigc++/functors/slot_base.cc: slot_base's assignment operator shall
23         destroy the old slot_rep even if the assigned slot is empty. Bug #738602.
24
25 2014-09-15  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
26
27         2.4.0
28
29 2014-09-15  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
30
31         Docs: Use doxygen-extra.css
32
33         * configure.ac: Require mm-common 0.9.7.
34         * docs/.gitignore: Ignore doxygen-extra.css.
35         * docs/reference/Doxyfile.in: Use doxygen-extra.css instead of doxygen.css.
36
37 2014-09-11  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
38
39         doap: Add <description>
40
41 2014-08-12  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
42
43         test_lambda: Fix for MS Visual C++ 2013
44
45         * tests/test_lambda.cc: Don't rely on implicit conversion from std::ostream
46         to bool. Instead, hide a problematic slot return type with sigc::hide_return().
47         Bug #734368.
48
49 2014-08-08  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
50
51         Add an include in limit_reference.h
52
53         * sigc++/macros/limit_reference.h.m4: limit_reference.h must include
54         visit_each.h, with the primary definition of template struct visitor.
55         https://mail.gnome.org/archives/libsigc-list/2014-August/msg00001.html
56
57 2014-08-01  Andre Klapper  <a9016009@gmx.de>
58
59         doap: add <programming-language>
60
61 2014-08-01  Olav Vitters  <olav@vitters.nl>
62
63         doap: link tarball name and git module
64
65 2014-07-31  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
66
67         2.3.2
68
69 2014-07-31  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
70
71         Remove .gitattributes
72
73         * .gitattributes: Instructed git to use a custom merge function for
74         merging ChangeLog. Might have been useful, but it's not any more.
75
76 2014-07-30  Olav Vitters  <olav@vitters.nl>
77
78         doap category core
79
80 2014-07-29  Ryan Beasley  <rbeasley@vmware.com>
81
82         Tests: Enable C++11 lambda expressions with MS Visual Studio 2012 and later
83
84         * tests/test_cpp11_lambda.cc:
85         * tests/test_track_obj.cc: Compile C++11 lambda expressions if
86         _MSC_VER >= 1700. Bug #733752.
87
88 2014-07-28  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
89
90         Documentation: Emphasize that signals are ref counted
91
92         * sigc++/signal_base.h: Emphasize that a sigc::signal holds a pointer to
93         a ref counted signal_impl. Bug #611941.
94
95 2014-07-27  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
96
97         Add test_visit_each to MSVC_Net2010
98
99         * MSVC_Net2010/filelist.am: Add new project files.
100         * MSVC_Net2010/libsigc++2.sln: Add new project.
101         * MSVC_Net2010/tests/test_visit_each/: New test case. Bug #724496.
102
103 2014-07-27  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
104
105         Tests: Add test_visit_each
106
107         * tests/.gitignore:
108         * tests/Makefile.am: Add test_visit_each.
109         * tests/test_visit_each.cc: New file. Bug #724496.
110
111 2014-07-27  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
112
113         Replace visit_each() overloads by struct visitor<>
114
115         Note: This patch breaks API for some users, but it does not break ABI.
116         Only users who have added their own visit_each() overloads are affected by
117         the API break. Their programs will still compile, but there will be run-time
118         errors, if they rely on auto-disconnection of slots.
119         Updated instructions for users who implement their own adaptors are found in
120         the description of sigc::adapts<>.
121
122         * sigc++/adaptors/bound_argument.h:
123         * sigc++/adaptors/macros/adaptor_trait.h.m4:
124         * sigc++/adaptors/macros/bind.h.m4:
125         * sigc++/adaptors/macros/bind_return.h.m4:
126         * sigc++/adaptors/macros/compose.h.m4:
127         * sigc++/adaptors/macros/exception_catch.h.m4:
128         * sigc++/adaptors/macros/hide.h.m4:
129         * sigc++/adaptors/macros/retype.h.m4:
130         * sigc++/adaptors/macros/retype_return.h.m4:
131         * sigc++/adaptors/macros/track_obj.h.m4:
132         * sigc++/adaptors/lambda/macros/base.h.m4:
133         * sigc++/adaptors/lambda/macros/group.h.m4:
134         * sigc++/adaptors/lambda/macros/operator.h.m4:
135         * sigc++/functors/macros/mem_fun.h.m4:
136         * sigc++/macros/limit_reference.h.m4:
137         * sigc++/visit_each.h: Replace overloads of visit_each<>() by
138         specializations of struct visitor<> with a specialized member function
139         do_visit_each<>(). Qualify all calls to visit_each() with sigc:: to avoid
140         argument-dependent lookup.
141         * sigc++/functors/macros/slot.h.m4: Qualify the calls to visit_each_type()
142         with sigc:: to avoid argument-dependent lookup.
143         * tests/test_functor_trait.cc: Fix the expected result now when the test
144         really works.
145         Thanks to Ryan Beasley <rbeasley@vmware.com>, bug #724496.
146
147 2014-07-25  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
148
149         signal_impl::notify(): Don't delete signal_impl during erase()
150
151         * sigc++/signal_base.cc: signal_impl::notify() and sweep(): Don't delete
152         signal_impl while its slot list is being manipulated. Without this fix,
153         tests/test_bind_refptr crashes in MS Visual C++ in debug mode.
154         The behaviour without the fix is risky, and shall be avoided. Bug #564005.
155
156 2014-07-24  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
157
158         Update the signal_impl::notify() documentation
159
160         * sigc++/signal_base.h: Update the signal_impl::notify() documentation.
161         It should have been updated when notify() was updated. Bug #167714.
162
163 2014-07-24  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
164
165         Add a maintainer in the DOAP file
166
167 2014-07-18  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
168
169         Update MSVC_Net2010
170
171         * MSVC_Net2010/filelist.am: Add new project files.
172         * MSVC_Net2010/libsigc++2.sln: Add new projects.
173         * MSVC_Net2010/libsigc++2.vcxproj.filters:
174         * MSVC_Net2010/libsigc++2.vcxproj: Update the list of header files.
175         * MSVC_Net2010/tests/test_*/test_*.vcxproj.filters:
176         * MSVC_Net2010/tests/test_*/test_*.vcxproj: Add testutilities.[h|cc].
177         * MSVC_Net2010/tests/test_accum_iter/:
178         * MSVC_Net2010/tests/test_bind_ref/:
179         * MSVC_Net2010/tests/test_bind_refptr/:
180         * MSVC_Net2010/tests/test_copy_invalid_slot/:
181         * MSVC_Net2010/tests/test_cpp11_lambda/:
182         * MSVC_Net2010/tests/test_custom/:
183         * MSVC_Net2010/tests/test_lambda/:
184         * MSVC_Net2010/tests/test_limit_reference/:
185         * MSVC_Net2010/tests/test_slot_disconnect/:
186         * MSVC_Net2010/tests/test_track_obj/: New test case projects. Bug #724496.
187
188 2014-07-14  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
189
190         Fix 'make check' with clang++ and --enable-warnings=fatal
191
192         * tests/test_cpp11_lambda.cc:
193         * tests/test_deduce_result_type.cc:
194         * tests/test_track_obj.cc: Don't define functions which are not used.
195         The clang++ compiler considers unused functions an error, when libsigc++ is
196         configured with --enable-warnings=fatal. Bug #724496.
197
198 2013-10-28  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
199
200         Documentation: Talk less about std::function
201
202         * sigc++/functors/macros/slot.h.m4:
203         * sigc++/functors/slot_base.h: Remove the examples with std::function.
204         Add an example with a C++11 lambda expression.
205         https://mail.gnome.org/archives/libsigc-list/2013-October/msg00003.html
206
207 2013-10-27  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
208
209         Update .gitignore files
210
211         * build/.gitignore:
212         * tests/.gitignore: Ignore files generated by automake 1.13 and 'make check'.
213
214 2013-10-26  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
215
216         Documentation: Mention std::function and std::bind() in more comments
217
218         * sigc++/functors/macros/functor_trait.h.m4: Mention that
219         SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE does not support functors
220         with overloaded operator()().
221         * sigc++/adaptors/macros/track_obj.h.m4:
222         * sigc++/functors/macros/slot.h.m4:
223         * sigc++/functors/slot_base.h:
224         * sigc++/signal_base.h: Mention std::function as an alternative to
225         sigc::slot.
226         * sigc++/macros/signal.h.m4: connect(): Describe why the result of
227         std::bind() can't be connected directly to a signal.
228
229 2013-10-26  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
230
231         Fix test_cpp11_lambda for gcc 4.8
232
233         * tests/test_cpp11_lambda.cc: Remove an unneccesary std::ref().
234         Show that std::bind() can be assigned to a slot, if it's combined with
235         std::function.
236
237 2013-07-30  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
238
239         signal_base, signal_impl: Speed up disconnection of slots.
240
241         * sigc++/signal_base.cc: Tell signal_impl::notify() which slot is being
242         disconnected. Execution time is then usually O(1) instead of O(n), where n
243         is the size of the slot list. Disconnect all connected slots when a signal is
244         deleted. Disconnect slots before they are erased from a signal's slot list.
245         Bug #167714.
246
247 2013-07-03  José Alburquerque  <jaalburquerque@gmail.com>
248
249         Move to a generated ChangeLog.
250
251 2013-07-02  José Alburquerque  <jaalburquerque@gmail.com>
252
253         Auto-generate the ChangeLog from the git log for 'make dist'.
254
255         * Makefile.am: Include the dist-changelog.am file copied in build/
256         from mm-common so that the ChangeLog is automatically generated from
257         the git commit messages on 'make dist'.
258
259 2013-05-01  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
260
261         Don't use __file__ in the FIREWALL m4 macro.
262
263         * sigc++/adaptors/lambda/macros/group.h.m4:
264         * sigc++/adaptors/macros/*.h.m4:
265         * sigc++/functors/macros/*.h.m4:
266         * sigc++/macros/class_slot.h.m4:
267         * sigc++/macros/hide.h.m4:
268         * sigc++/macros/limit_reference.h.m4:
269         * sigc++/macros/method_slot.h.m4:
270         * sigc++/macros/retype.h.m4:
271         * sigc++/macros/slot.h.m4: Replace __FIREWALL__ with _FIREWALL(filename).
272         * sigc++/macros/template.macros.m4: Replace __FIREWALL__ with _FIREWALL,
273         taking a parameter. Don't use __file__ to generate the name of the C++
274         preprocessor macro. __file__ may expand to an absolute path, containing
275         almost all sorts of special characters and being excessively long.
276         Bug #699168.
277
278 2013-04-11  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
279
280         Use DOXYGEN_SHOULD_SKIP_THIS consistently.
281
282         * docs/reference/Doxyfile.in: EXTRACT_ALL=YES, like in most mm packages.
283         * sigc++/sigc++.h: Mention that the reference manual contains only some of
284         the template specializations.
285         * sigc++/adaptors/bound_argument.h:
286         * sigc++/adaptors/lambda/macros/base.h.m4:
287         * sigc++/adaptors/lambda/macros/group.h.m4:
288         * sigc++/adaptors/macros/adaptor_trait.h.m4:
289         * sigc++/adaptors/macros/bind.h.m4:
290         * sigc++/adaptors/macros/bind_return.h.m4:
291         * sigc++/adaptors/macros/compose.h.m4:
292         * sigc++/adaptors/macros/deduce_result_type.h.m4:
293         * sigc++/adaptors/macros/exception_catch.h.m4:
294         * sigc++/adaptors/macros/hide.h.m4:
295         * sigc++/adaptors/macros/retype.h.m4:
296         * sigc++/adaptors/macros/retype_return.h.m4:
297         * sigc++/adaptors/macros/track_obj.h.m4:
298         * sigc++/functors/macros/functor_trait.h.m4:
299         * sigc++/functors/macros/mem_fun.h.m4:
300         * sigc++/macros/limit_reference.h.m4:
301         * sigc++/type_traits.h:
302         * sigc++/visit_each.h: Use DOXYGEN_SHOULD_SKIP_THIS to mark what Doxygen
303         shall not extract.
304
305 2013-03-20  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
306
307         Suppress erroneous links in documentation.
308
309         * sigc++/adaptors/lambda/macros/base.h.m4:
310         * sigc++/adaptors/lambda/macros/group.h.m4:
311         * sigc++/adaptors/lambda/macros/select.h.m4: Doxygen links std::bind to
312         sigc::bind. Suppress these links. No link is better than the wrong link.
313
314 2013-03-19  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
315
316         Deprecate libsigc++ lambdas, sigc::group(), sigc::var().
317
318         * configure.ac: Add MM_ARG_DISABLE_DEPRECATED_API(SIGCXX).
319         * sigc++/adaptors/lambda/macros/base.h.m4:
320         * sigc++/adaptors/lambda/macros/group.h.m4:
321         * sigc++/adaptors/lambda/macros/lambda.cc.m4:
322         * sigc++/adaptors/lambda/macros/operator.h.m4:
323         * sigc++/adaptors/lambda/macros/select.h.m4: Deprecate everything.
324         * sigc++/macros/template.macros.m4: Add deprecation macros.
325         * sigc++config.h.in: Add #undef SIGCXX_DISABLE_DEPRECATED.
326         * tests/test_lambda.cc: Skip test if SIGCXX_DISABLE_DEPRECATED is defined.
327         Bug #672555.
328
329 2013-02-26  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
330
331         Add track_obj() and test_track_obj.
332
333         * sigc++/.gitignore: Add adaptors/track_obj.h.
334         * sigc++/adaptors/adaptors.h: Add sigc++/adaptors/track_obj.h.
335         * sigc++/adaptors/lambda/macros/group.h.m4:
336         * sigc++/adaptors/macros/adaptor_trait.h.m4: Mention track_obj() in the
337         documentation.
338         * sigc++/adaptors/macros/track_obj.h.m4: New file.
339         * sigc++/filelist.am: Add track_obj.h.m4 and track_obj.h.
340         * tests/.gitignore:
341         * tests/Makefile.am: Add test_track_obj.
342         * tests/test_cpp11_lambda.cc: Use track_obj() to test auto-disconnection.
343         * tests/test_track_obj.cc: New test case.
344         Bug #672555.
345
346 2013-01-07  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
347
348         Documentation: Fix many warnings from Doxygen.
349
350         * configure.ac: Require mm-common 0.9.6 or later.
351         * docs/reference/Doxyfile.in: Don't warn for undocumented classes and structs.
352         * sigc++/adaptors/macros/bind.h.m4:
353         * sigc++/adaptors/macros/bind_return.h.m4:
354         * sigc++/adaptors/macros/compose.h.m4:
355         * sigc++/adaptors/macros/hide.h.m4:
356         * sigc++/connection.h:
357         * sigc++/macros/limit_reference.h.m4: Make all parameter names in @param
358         commands equal to the corresponding names in the function declarations.
359         * sigc++/signal_base.h: Remove an extraneous period that confuses Doxygen.
360         * sigc++/type_traits.h: Add a missing @code/@endcode pair.
361
362 2012-10-18  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
363
364         Test cases: Report pass/fail with exit status.
365
366         * tests/testutilities.[h|cc]: New files. Code common to all test cases.
367         * tests/*.cc: Use class TestUtilities. Don't print anything
368         if the test passes. Return EXIT_FAILURE if the test fails.
369         * tests/Makefile.am: Add testutilities.[h|cc] to all test cases.
370         Bug #684956.
371
372 2012-10-18  Murray Cumming  <murrayc@murrayc.com>
373
374         2.3.1
375
376 2012-10-18  Murray Cumming  <murrayc@murrayc.com>
377
378         Update the Doxyfile.in syntax.
379
380         * docs/reference/Doxyfile.in: By running doxygen -u
381         on it.
382
383 2012-10-17  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
384
385         Add some missing newin{}.
386
387         * docs/reference/Doxyfile.in: Add ALIASES newin.
388         * sigc++/functors/macros/functor_trait.h.m4: Add newin{2,2,11} to
389         SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE.
390         * sigc++/signal_base.h: Add newin{2,4} to signal_impl::blocked(), block() and
391         signal_base::blocked(), block(), unblock(). Bug #153780.
392
393 2012-10-12  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
394
395         signal_base: Add blocked(), block(), unblock().
396
397         * sigc++/signal_base.[h|cc]: Add signal_impl::blocked(), block() and
398         signal_base::blocked(), block(), unblock(). Bug #153780.
399
400 2012-09-23  Murray Cumming  <murrayc@murrayc.com>
401
402         2.2.11
403
404 2012-09-20  Andris Pavenis  <andris.pavenis@iki.fi>
405
406         Fix comma operator in lambda expressions.
407
408         * sigc++/adaptors/lambda/macros/operator.h.m4: Add lambda_action<>
409         specialization for comma operator (operator,()).
410         * tests/test_cpp11_lambda.cc:
411         * tests/test_lambda.cc: Add a test case for the comma operator. Bug #342911.
412
413 2012-09-19  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
414
415         Add SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE.
416
417         * sigc++/adaptors/lambda/macros/base.h.m4:
418         * sigc++/adaptors/lambda/macros/group.h.m4:
419         * sigc++/functors/macros/functor_trait.h.m4:
420         * tests/test_cpp11_lambda.cc: Replace the preprocessor macro
421         SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH(C_keyword) with
422         SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE. Bug #672555.
423
424 2012-09-10  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
425
426         Correct a bug number in ChangeLog.
427
428 2012-09-10  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
429
430         Use std::size_t and std::ptrdiff_t.
431
432         * sigc++/macros/signal.h.m4: Use std::size_t and std::ptrdiff_t instead
433         of ::size_t and ::ptrdiff_t. Only the std versions are required to be
434         declared in <cstddef>.
435         * sigc++/signal_base.h: Use std::size_t instead of ::size_t. (I did not change
436         MSVC++-only code in this file and other files.)
437
438 2012-09-07  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
439
440         Fix 'make check' with gcc 4.7.
441
442         * sigc++/adaptors/lambda/macros/base.h.m4: Define sigc::unwrap_lambda_value()
443         before it's used in sigc::lambda::operator[]() and operator=().
444         * sigc++/adaptors/lambda/macros/group.h.m4: Fix the C++11 examples in the
445         documentation as in test_cpp11_lambda.cc.
446         * tests/test_cpp11_lambda.cc: Only variables with automatic storage duration
447         shall be captured in C++11 lambda expressions.
448
449 2012-08-28  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
450
451         Update .gitignore and tests/.gitignore
452
453         * .gitignore: Add *~ (gedit's backup files).
454         * tests/.gitignore: Add missing executable test files.
455
456 2012-08-28  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
457
458         Add SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH for C++11 lambda expressions.
459
460         * sigc++/functors/macros/functor_trait.h.m4: Add the preprocessor macro
461         SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH(C_keyword), which makes it possible to
462         assign C++11 lambda expressions with any return type to slots.
463         Thanks to Chow Loong Jin, who posted similar code on libsigc-list.
464         * sigc++/adaptors/lambda/macros/base.h.m4:
465         * sigc++/adaptors/lambda/macros/group.h.m4: Add information on C++11 lambda
466         expressions to the documentation of lambda expressions and sigc::group().
467         * tests/Makefile.am: Add test_cpp11_lambda.cc.
468         * tests/test_cpp11_lambda.cc: New test case, showing that most uses of
469         libsigc++'s lambda expressions can be replaced by standard C++11 lambda
470         expressions. Bug #672555.
471
472 2012-03-19  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
473
474         Enable test_lambda in 'make check'.
475
476         * tests/Makefile.am: Enable test_lambda in 'make check'.
477         * tests/test_lambda.cc: Comment out the tests with sigc::ref() in lambda
478         functions' parameter lists. See Bug #669128.
479
480 2012-02-29  Andre Klapper  <ak-47@gmx.net>
481
482         Add missing bug-database entry to DOAP file
483
484 2011-09-22  Krzesimir Nowak  <qdlacz@gmail.com>
485
486         Don't use obsolete macros.
487
488         * autogen.sh: Warn about everything during autoreconf.
489         * build/cxx.m4:
490         * build/cxx_std.m4: Replaced AC_TRY_COMPILE with AC_COMPILE_IFELSE.
491         * configure.ac: Use LT_INIT.
492
493 2011-07-25  Murray Cumming  <murrayc@murrayc.com>
494
495         2.2.10
496
497 2011-07-21  Thomas Rydzynski  <qsorix@rydznet.pl>
498
499         Mention visit_each() in the documentation of sigc::adapts.
500
501         * sigc++/adaptors/macros/adaptor_trait.h.m4: Mention that a user-supplied
502         adaptor must be accompanied by a specialization of template function
503         visit_each(). Correct some minor errors in the example of a user-supplied
504         adaptor. Bug #486373.
505
506 2011-07-20  Murray Cumming  <murrayc@murrayc.com>
507
508         Missing changes from the previous commit.
509
510 2011-07-19  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
511
512         Add a test case for the previous commit.
513
514         * tests/Makefile.am:
515         * tests/test_bind_refptr.cc: A version of this test is also in glibmm.
516         Note that this includes a copy/paste of RefPtr.
517         See Bug #564005#14
518
519 2011-07-19  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
520
521         slot_rep: Avoid access to deleted object in notify().
522
523         * sigc++/functors/slot_base.cc: slot_rep::notify() calls disconnect() before
524         destroy(). If disconnect() has deleted the slot_rep object, destroy() is not
525         called. Bug #564005.
526
527 2011-05-24  Olav Vitters  <olav@vitters.nl>
528
529         Use tar-ustar instead of tar-pax to ensure OpenBSD compatibility
530
531 2011-03-08  Murray Cumming  <murrayc@murrayc.com>
532
533         2.2.9
534
535 2011-02-22  Kjell Ahlstedt  <kjell.ahlstedt@bredband.net>
536
537         trackable: Avoid calling the same callback function twice
538
539         * sigc++/trackable.cc: Invalidate a callback function entry in
540         trackable_callback_list::remove_callback() when the list is being cleared.
541         Bug 589202.
542
543 2011-02-04  Kalev Lember  <kalev@smartlink.ee>
544
545         Fix the build with GCC 4.6
546
547         * sigc++/signal_base.h: Include <cstddef> for size_t.
548
549 2010-10-12  David King  <davidk@openismus.com>
550
551         Update .gitignore and tests/.gitignore
552
553 2010-10-12  David King  <davidk@openismus.com>
554
555         Documentation changes
556
557         * *.h.m4: Minor changes to documentation to fix up code example
558         formatting, by removing the additional two spaces of indentation.
559         Additionally, fix some spelling and grammar mistakes and typos.
560
561 2010-09-26  Armin Burgmeier  <armin@arbur.net>
562
563         Add support for 64 bit to MSVC project files
564
565 2010-09-27  Armin Burgmeier  <armin@arbur.net>
566
567         * MSVC_Net2005/libsigc++2.sln:
568         * MSVC_Net2005/libsigc++2.vcproj:
569         * MSVC_Net2005/tests/test_accumulated/test_accumulated.vcproj:
570         * MSVC_Net2005/tests/test_bind/test_bind.vcproj:
571         * MSVC_Net2005/tests/test_bind_return/test_bind_return.vcproj:
572         * MSVC_Net2005/tests/test_compose/test_compose.vcproj:
573         * MSVC_Net2005/tests/test_deduce_result_type/test_deduce_result_type.vcproj:
574         * MSVC_Net2005/tests/test_disconnect/test_disconnect.vcproj:
575         * MSVC_Net2005/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcproj:
576         * MSVC_Net2005/tests/test_exception_catch/test_exception_catch.vcproj:
577         * MSVC_Net2005/tests/test_functor_trait/test_functor_trait.vcproj:
578         * MSVC_Net2005/tests/test_hide/test_hide.vcproj:
579         * MSVC_Net2005/tests/test_mem_fun/test_mem_fun.vcproj:
580         * MSVC_Net2005/tests/test_ptr_fun/test_ptr_fun.vcproj:
581         * MSVC_Net2005/tests/test_retype/test_retype.vcproj:
582         * MSVC_Net2005/tests/test_retype_return/test_retype_return.vcproj:
583         * MSVC_Net2005/tests/test_signal/test_signal.vcproj:
584         * MSVC_Net2005/tests/test_size/test_size.vcproj:
585         * MSVC_Net2005/tests/test_slot/test_slot.vcproj:
586         * MSVC_Net2005/tests/test_trackable/test_trackable.vcproj:
587         * MSVC_Net2008/libsigc++2.sln:
588         * MSVC_Net2008/libsigc++2.vcproj:
589         * MSVC_Net2008/tests/test_accumulated/test_accumulated.vcproj:
590         * MSVC_Net2008/tests/test_bind/test_bind.vcproj:
591         * MSVC_Net2008/tests/test_bind_return/test_bind_return.vcproj:
592         * MSVC_Net2008/tests/test_compose/test_compose.vcproj:
593         * MSVC_Net2008/tests/test_deduce_result_type/test_deduce_result_type.vcproj:
594         * MSVC_Net2008/tests/test_disconnect/test_disconnect.vcproj:
595         * MSVC_Net2008/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcproj:
596         * MSVC_Net2008/tests/test_exception_catch/test_exception_catch.vcproj:
597         * MSVC_Net2008/tests/test_functor_trait/test_functor_trait.vcproj:
598         * MSVC_Net2008/tests/test_hide/test_hide.vcproj:
599         * MSVC_Net2008/tests/test_mem_fun/test_mem_fun.vcproj:
600         * MSVC_Net2008/tests/test_ptr_fun/test_ptr_fun.vcproj:
601         * MSVC_Net2008/tests/test_retype/test_retype.vcproj:
602         * MSVC_Net2008/tests/test_retype_return/test_retype_return.vcproj:
603         * MSVC_Net2008/tests/test_signal/test_signal.vcproj:
604         * MSVC_Net2008/tests/test_size/test_size.vcproj:
605         * MSVC_Net2008/tests/test_slot/test_slot.vcproj:
606         * MSVC_Net2008/tests/test_trackable/test_trackable.vcproj:
607         * MSVC_Net2010/libsigc++2.vcxproj:
608         * MSVC_Net2010/tests/test_accumulated/test_accumulated.vcxproj:
609         * MSVC_Net2010/tests/test_bind/test_bind.vcxproj:
610         * MSVC_Net2010/tests/test_bind_return/test_bind_return.vcxproj:
611         * MSVC_Net2010/tests/test_compose/test_compose.vcxproj:
612         * MSVC_Net2010/tests/test_deduce_result_type/test_deduce_result_type.vcxproj:
613         * MSVC_Net2010/tests/test_disconnect/test_disconnect.vcxproj:
614         * MSVC_Net2010/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcxproj:
615
616 2010-09-26  Armin Burgmeier  <armin@arbur.net>
617
618         Add test_accumulated to the MSVC projects
619
620 2010-09-27  Armin Burgmeier  <armin@arbur.net>
621
622         * MSVC_Net2005/libsigc++2.sln:
623         * MSVC_Net2005/tests/test_accumulated/test_accumulated.vcproj:
624         * MSVC_Net2008/libsigc++2.sln:
625         * MSVC_Net2008/tests/test_accumulated/test_accumulated.vcproj: Add
626         test_accumulated to the MSVC projects.
627
628 2010-09-20  Armin Burgmeier  <armin@arbur.net>
629
630         Added MSVC 2010 project files
631
632 2010-09-19  Armin Burgmeier  <armin@arbur.net>
633
634         * MSVC_Net2010/filelist.am:
635         * MSVC_Net2010/libsigc++2.sln:
636         * MSVC_Net2010/libsigc++2.vcxproj:
637         * MSVC_Net2010/libsigc++2.vcxproj.filters:
638         * MSVC_Net2010/sigc.rc.in:
639         * MSVC_Net2010/tests/test_accumulated/test_accumulated.vcxproj:
640         * MSVC_Net2010/tests/test_accumulated/test_accumulated.vcxproj.filters:
641         * MSVC_Net2010/tests/test_bind/test_bind.vcxproj:
642         * MSVC_Net2010/tests/test_bind/test_bind.vcxproj.filters:
643         * MSVC_Net2010/tests/test_bind_return/test_bind_return.vcxproj:
644         * MSVC_Net2010/tests/test_bind_return/test_bind_return.vcxproj.filters:
645         * MSVC_Net2010/tests/test_compose/test_compose.vcxproj:
646         * MSVC_Net2010/tests/test_compose/test_compose.vcxproj.filters:
647         * MSVC_Net2010/tests/test_deduce_result_type/test_deduce_result_type.vcxproj:
648         * MSVC_Net2010/tests/test_deduce_result_type/test_deduce_result_type.vcxproj.filters:
649         * MSVC_Net2010/tests/test_disconnect/test_disconnect.vcxproj:
650         * MSVC_Net2010/tests/test_disconnect/test_disconnect.vcxproj.filters:
651         * MSVC_Net2010/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcxproj:
652         * MSVC_Net2010/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcxproj.filters:
653         * MSVC_Net2010/tests/test_exception_catch/test_exception_catch.vcxproj:
654         * MSVC_Net2010/tests/test_exception_catch/test_exception_catch.vcxproj.filters:
655         * MSVC_Net2010/tests/test_functor_trait/test_functor_trait.vcxproj:
656         * MSVC_Net2010/tests/test_functor_trait/test_functor_trait.vcxproj.filters:
657         * MSVC_Net2010/tests/test_hide/test_hide.vcxproj:
658         * MSVC_Net2010/tests/test_hide/test_hide.vcxproj.filters:
659         * MSVC_Net2010/tests/test_mem_fun/test_mem_fun.vcxproj:
660         * MSVC_Net2010/tests/test_mem_fun/test_mem_fun.vcxproj.filters:
661         * MSVC_Net2010/tests/test_ptr_fun/test_ptr_fun.vcxproj:
662         * MSVC_Net2010/tests/test_ptr_fun/test_ptr_fun.vcxproj.filters:
663         * MSVC_Net2010/tests/test_retype/test_retype.vcxproj:
664         * MSVC_Net2010/tests/test_retype/test_retype.vcxproj.filters:
665         * MSVC_Net2010/tests/test_retype_return/test_retype_return.vcxproj:
666         * MSVC_Net2010/tests/test_retype_return/test_retype_return.vcxproj.filters:
667         * MSVC_Net2010/tests/test_signal/test_signal.vcxproj:
668         * MSVC_Net2010/tests/test_signal/test_signal.vcxproj.filters:
669         * MSVC_Net2010/tests/test_size/test_size.vcxproj:
670         * MSVC_Net2010/tests/test_size/test_size.vcxproj.filters:
671         * MSVC_Net2010/tests/test_slot/test_slot.vcxproj:
672         * MSVC_Net2010/tests/test_slot/test_slot.vcxproj.filters:
673         * MSVC_Net2010/tests/test_trackable/test_trackable.vcxproj:
674         * MSVC_Net2010/tests/test_trackable/test_trackable.vcxproj.filters:
675
676         * Makefile.am:
677         * configure.ac: Added project files for Visual Studio 2010.
678
679 2010-06-05  David King  <davidk@openismus.com>
680
681         Small website updates
682
683         * docs/index.html: Remove broken namespace links.
684         * docs/website/doc.shtml: Link to library.gnome.org tutorial and API
685         reference.
686
687 2010-06-04  Murray Cumming  <murrayc@murrayc.com>
688
689         2.2.8
690
691 2010-06-04  Murray Cumming  <murrayc@murrayc.com>
692
693         Manual: Add an id=index attribute in case that helps library.gnome.org.
694
695         * docs/manual/libsigc_manual.xml: Add it to the <book> tag.
696
697 2010-05-04  Murray Cumming  <murrayc@murrayc.com>
698
699         2.2.7
700
701 2010-05-04  Murray Cumming  <murrayc@murrayc.com>
702
703         Documentation improvements.
704
705         * docs/manual/libsigc_manual.xml: Remove Marshallers section because
706         it is apparently outdated and there is no example code to test it.
707         This fixes bug #417924 (Michael Ekstrand)
708         Also changed LibSigC++ to libsigc++ for consistency.
709         * sigc++/sigc++.h: Main page text: Rearranged slightly.
710
711 2010-04-27  David King  <davidk@openismus.com>
712
713         Improvements to main page documentation
714
715         * sigc++/sigc++.h: Minor improvements.
716
717 2010-04-23  David King  <davidk@openismus.com>
718
719         Add main page to Doxygen documentation
720
721         * docs/Makefile.am: Parse sigc++/sigc++.h for documentation.
722         * sigc++/sigc++.h: Add main page to Doxygen documentation.
723
724 2010-04-23  David King  <davidk@openismus.com>
725
726         Fix the functors Doxygen group in the m4 files
727
728         * sigc++/functors/macros/functor_trait.h.m4:
729         * sigc++/functors/macros/mem_fun.h.m4:
730         * sigc++/functors/macros/ptr_fun.h.m4: Rename functors to
731         sigcfunctors.
732
733 2010-04-16  Murray Cumming  <murrayc@murrayc.com>
734
735         2.2.6
736
737 2010-04-16  Murray Cumming  <murrayc@murrayc.com>
738
739         Docs: Fix the functors group and the link from the overview.
740
741         * docs/website/doc.shtml: Revert this to point to the overview page at
742         docs/indeex.html, which I have manually uploaded to the website, until
743         we add this overview to the doxygen-generated documentation itself.
744         * sigc++/functors/slot_base.h:
745         * sigc++/visit_each.h: Rename the functors doxygen group to sigcfunctors,
746         because doxygen seems to confuse it with the one in libstdc++.
747         * docs/index.html: Update the links.
748
749 2010-04-16  Murray Cumming  <murrayc@murrayc.com>
750
751         Website: Fix the Makefile so upload works with sourceforge again.
752
753 2010-04-06  Murray Cumming  <murrayc@murrayc.com>
754
755         Website: Update the reference API link.
756
757         * docs/website/doc.shtml: Update the reference API link to use
758         library.gnome.org. We should make sure that the tutorial docbook is there
759         too.
760         * docs/website/devel.shtml: Remove CVS-specific instructions, quickly
761         mentioning the git module instead.
762         However, the Makefile must be updated to cope with sourceforge's changes.
763         I was not able to upload this yet.
764
765 2010-03-29  Murray Cumming  <murrayc@murrayc.com>
766
767         2.2.5
768
769 2010-01-06  Daniel Elstner  <daniel.kitta@gmail.com>
770
771         Use non-blurry font for dot graph labels
772
773         * docs/reference/Doxyfile.in (SHOW_INCLUDE_FILES): Enable.
774         (SHOW_USED_FILES): Disable.
775         (DOT_FONTNAME): Change from FreeSans to Sans, as the hinting for the
776         former appears to be rather bad.
777         (TEMPLATE_RELATIONS): Disable to reduce noise.
778
779 2009-12-29  Murray Cumming  <murrayc@murrayc.com>
780
781         Accumulators: Allow return types that are different to the signal's.
782
783         * sigc++/macros/signal.h.m4: signal_emit*: Correct the slot_iterator_buf_type
784         and slot_reverse_iterator_buf_type typedefs to allow accumulators with
785         return types that are different to the signal's return type.
786         * tests/Makefile.am: Reenable test_accumulated, so we can test the fix.
787         It should be manually disabled if building on AIX (if the AIX problem cannot
788         be fixed properly).
789         * tests/test_accumulated.cc: Add an accumulator with a return type that is
790         different to the signal's return type. In this case it's a vector listing
791         all results.
792         Bug #586436.
793
794 2009-12-27  Daniel Elstner  <daniel.kitta@gmail.com>
795
796         Disable collaboration graphs in documentation
797
798         * docs/reference/Doxyfile.in (CLASS_DIAGRAMS): Enable.  Contrary to
799         what the Doxygen documentation says, no dot class inheritance graphs
800         will be generated if both CLASS_DIAGRAMS and COLLABORATION_GRAPH are
801         set to NO.
802         (COLLABORATION_GRAPH), (GROUP_GRAPHS): Turn off additional graphs to
803         reduce the noise.
804
805 2009-10-26  Armin Burgmeier  <armin@arbur.net>
806
807         Fix build with MSVC
808
809 2009-10-26  Armin Burgmeier  <armin@arbur.net>
810
811         * sigc++config.h: Move the first five definitions to the !SIGC_MSC
812         ifdef block, so MSVC does not see them and only uses the definitions
813         from the SIGC_MSC block. This fixes the build with MSVC.
814
815 2009-09-19  Daniel Elstner  <daniel.kitta@gmail.com>
816
817         Support Automake silent rules
818
819         * configure.ac: Call the AM_SILENT_RULES macro if it is defined.
820         * docs/doc-manual.am, sigc++/Makefile.am: Prefix the commands of
821         custom rules with $(AM_V_GEN) or $(AM_V_at) in order to support
822         the silent rules feature of Automake.
823
824 2009-09-18  Michael Hasselmann  <michaelh@openismus.com>
825
826         Documentation cleanup: sigc::hide() always only hides one signal argument
827
828         * sigc++/adaptors/macros/hide.h.m4: The documentation stated that sigc::hide()
829         could discard multiple signal arguments when in fact the whole API only allows
830         control over one (dummy) signal argument at a time. The  "multiple argument
831         hiding" example lives in it own section now to make it clearer you have to nest
832         sigc::hide() for that.
833
834 2009-09-13  Daniel Elstner  <daniel.kitta@gmail.com>
835
836         Enable verbose output of autoreconf
837
838         * autogen.sh: Pass --verbose option to autoreconf.
839
840 2009-09-07  Daniel Elstner  <danielk@openismus.com>
841
842         Delete obsolete MAINTAINERS file
843
844 2009-09-02  Daniel Elstner  <danielk@openismus.com>
845
846         Bump version to 2.2.4.2 and update NEWS
847
848         * configure.ac (AC_INIT): Increment version number to 2.2.4.2.
849         (MM_PREREQ): Require mm-common 0.7.2.
850         * NEWS: Write news entry for libsigc++ 2.2.4.2.
851
852 2009-09-02  Daniel Elstner  <danielk@openismus.com>
853
854         Document namespace sigc briefly
855
856         * sigc++/signal_base.h (sigc): Prepend documentation comment to
857         provide a brief description of namespace sigc, so that Doxygen
858         will recognize the namespace as documented.
859
860 2009-08-31  Daniel Elstner  <danielk@openismus.com>
861
862         Update Doxygen configuration for Doxygen 1.6.1
863
864         * docs/reference/Doxyfile.in: Update configuration template using
865         Doxygen 1.6.1.
866         (SORT_MEMBERS_CTORS_1ST): Enable.
867
868 2009-08-31  Daniel Elstner  <danielk@openismus.com>
869
870         Protect space after comma in M4 output
871
872         * sigc++/macros/template.macros.m4 (_LOOP_SEP): Triple-quote the
873         list separator in this hairy construct, since the macro definition
874         itself is not quoted at all and the space after the comma got lost
875         in the output.  This, in turn, produced overlong lines in the HTML
876         reference documentation.
877
878 2009-08-28  Daniel Elstner  <danielk@openismus.com>
879
880         Update news entry for libsigc++ 2.2.4.1 release
881
882         * NEWS: Update top entry for release 2.2.4.1 of libsigc++.
883         (2.2.4): Correct spelling of Frédéric Péters' name.
884
885 2009-08-27  Daniel Elstner  <danielk@openismus.com>
886
887         Use shared mm-common Doxygen style sheet
888
889         * configure.ac (MM_PREREQ): Require mm-common 0.7.
890         * docs/Makefile.am (dist_noinst_DATA): List doxygen.css.
891         * docs/reference/Doxyfile.in (HTML_STYLESHEET): Assign path
892         to the shared doxygen.css provided by mm-common.
893
894 2009-08-27  Daniel Elstner  <danielk@openismus.com>
895
896         Remove header and footer HTML fragments
897
898         * docs/reference/libsigc_{header,footer}.html_fragment: Delete
899         files.  These custom fragments were an unnecessary maintenance
900         hassle.  Also, the files were out of date with respect to the
901         encoding and CSS classes used by Doxygen.
902         * docs/reference/Doxyfile.in (HTML_HEADER), (HTML_FOOTER): Set
903         to the empty string.
904         (PROJECT_NAME): Substitute @PACKAGE_NAME@.
905         (PROJECT_NUMBER): Substitute @PACKAGE_VERSION@.  It does look
906         nicer in the generated HTML pages, and is probably also less
907         confusing.
908         (SORT_GROUP_NAMES): Enable for predictability.
909
910 2009-08-27  Daniel Elstner  <danielk@openismus.com>
911
912         Change version of upcoming release to 2.2.4.1
913
914         * configure.ac (AC_INIT): Adjust version number to 2.2.4.1.
915         * NEWS: Correct version of top news entry to 2.2.4.1.
916
917 2009-08-26  Daniel Elstner  <danielk@openismus.com>
918
919         Bump version to 2.2.5 and update NEWS
920
921         * configure.ac (AC_INIT): Increment version number to 2.2.5.
922         * NEWS: Write news entry for libsigc++ 2.2.5.
923
924 2009-08-26  Daniel Elstner  <danielk@openismus.com>
925
926         Reenable hierarchy graphs for each class
927
928         * docs/reference/Doxyfile.in (COLLABORATION_GRAPH): Set option
929         to YES to enable the per-class inheritance graphs.
930
931 2009-08-25  Daniel Elstner  <danielk@openismus.com>
932
933         Have Automake check NEWS and use bzip2
934
935         * configure.ac (AM_INIT_AUTOMAKE): Add options check-news and
936         dist-bzip2.
937
938 2009-08-25  Daniel Elstner  <danielk@openismus.com>
939
940         Update NEWS for libsigc++ 2.2.4 release
941
942 2009-08-25  Daniel Elstner  <danielk@openismus.com>
943
944         Bump version to 2.2.4 and require mm-common 0.6.1
945
946         * configure.ac (AC_INIT): Increase version number to 2.2.4.
947         (MM_PREREQ): Require mm-common 0.6.1 for the updated default
948         location of the reference documentation.
949
950 2009-08-25  Daniel Elstner  <danielk@openismus.com>
951
952         Change documentation host to library.gnome.org
953
954         * README, docs/manual/libsigc_manual.xml: Adjust links to the
955         reference documentation in the text.
956         * docs/Makefile.am (pubdocbase), (htmlrefpub): Remove override
957         and use the updated mm-common default values.
958         * sigc++{,-uninstalled}.pc.in (htmlrefpub): Adjust link.
959
960 2009-08-24  Daniel Elstner  <danielk@openismus.com>
961
962         Add id="content" element to documentation index
963
964         * docs/reference/libsigc_header.html_fragment: Start <div> element
965         with attribute id="content" to match the other C++ binding modules.
966         * docs/reference/libsigc_footer.html_fragment: Close <div> element.
967
968 2009-08-20  Daniel Elstner  <danielk@openismus.com>
969
970         Use new version component substitutions
971
972         * MSVC_Net200[58]/sigc.rc.in: Replace the no longer defined
973         @FP_*_VERSION@ substitutions by the new @SIGCXX_*_VERSION@
974         substitutions for the version number components.  These are
975         defined by MM_INIT_MODULE() from mm-common.
976
977 2009-08-20  Daniel Elstner  <danielk@openismus.com>
978
979         Substitute API version in filenames dynamically
980
981         * sigc++.pc.in: Rename file from sigc++-2.0.pc.in.
982         * sigc++-uninstalled.pc.in: Rename file from
983         sigc++-2.0-uninstalled.pc.in.
984         * MSVC_Net200[58]/sigc.rc.in: Rename files from sigc-2.0.rc.in
985         and use @SIGCXX_API_VERSION@ substitution for the API version.
986         Also replace @VERSION@ with @PACKAGE_VERSION@.
987         * MSVC_Net200[58]/libsigc++2.{sln,vcproj}: Remove version from
988         the project name and filenames.
989         * MSVC_Net200[58]/filelist.am: Remove version from filenames.
990         * configure.ac (AC_CONFIG_FILES): Insert ${SIGCXX_MODULE_NAME}
991         into output filenames and remove the version from the input
992         filenames.
993         * Makefile.am: Use $(SIGCXX_MODULE_NAME) in pkg-config file
994         names instead of hard-coding the API version.
995         * sigc++/Makefile.am (lib_LTLIBRARIES): Instead of hard-coding
996         the libtool archive name, substitute @SIGCXX_API_VERSION@ into
997         it, as well as into the derived variable names.
998
999 2009-08-17  Daniel Elstner  <danielk@openismus.com>
1000
1001         Set libtool version information
1002
1003         * sigc++/Makefile.am (libsigc_2_0_la_LDFLAGS): Add libtool option
1004         -version-info 0:0:0 to specify the version information explicitly.
1005
1006 2009-08-16  Daniel Elstner  <daniel.kitta@gmail.com>
1007
1008         Remove unused parameter names for correctness
1009
1010         * tests/test_copy_invalid_slot.cc, tests/test_custom.cc,
1011         tests/test_deduce_result_type.cc, tests/test_functor_trait.cc,
1012         tests/test_limit_reference.cc: Remove the names of unused function
1013         parameters from the prototype, in order to get libsigc++ to build
1014         with fatal compiler warnings.
1015
1016 2009-08-16  Daniel Elstner  <daniel.kitta@gmail.com>
1017
1018         Rename scripts/ to build/ for consistency
1019
1020         * build/: Rename directory from scripts/ for consistency with most
1021         of the other modules that switched to the new build infrastructure.
1022         * Makefile.am (ACLOCAL_AMFLAGS): Adjust M4 include directory.
1023         * README: Adjust a reference to scripts/ in the text.
1024         * configure.ac (AC_CONFIG_AUX_DIR): Copy auxiliary files to build/.
1025         (AC_CONFIG_MACRO_DIR): Place Autoconf M4 files into build/.
1026         * docs/Makefile.am: Include $(top_srcdir)/build/doc-reference.am.
1027
1028 2009-08-16  Daniel Elstner  <danielk@openismus.com>
1029
1030         Copy log entry into legacy ChangeLog file
1031
1032 2009-08-16  Daniel Elstner  <danielk@openismus.com>
1033
1034         Update for latest mm-common 0.4
1035
1036         * configure.ac (MM_PREREQ): Require mm-common 0.4.
1037         (MM_INIT_MODULE): Omit now optional version number argument.
1038         (MM_CONFIG_DOCTOOL_DIR): Copy the documentation utilities into docs/
1039         instead of scripts/.
1040         * Makefile.am (dist_noinst_DATA): Remove documentation utilities.
1041         * sigc++-2.0.pc.in (htmlrefpub): Append trailing slash.
1042         * sigc++-2.0-uninstalled.pc.in (htmlrefpub): ditto,
1043         * docs/Makefile.am (htmlrefpub): ditto.
1044         (doc_input): Perform a VPATH search for each input file, to correctly
1045         handle the case of rebuilding the documentation of a tarball release
1046         which includes the generated sources.
1047         (dist_noinst_DATA): List documentation utilities.
1048
1049 2009-08-11  Daniel Elstner  <danielk@openismus.com>
1050
1051         Do not recurse into MSVC subdirectories
1052
1053         * MSVC_Net200[58]/filelist.am: New Automake include files, defining
1054         the lists of files to ship from the MSVC project directories.
1055         * MSVC_Net200[58]/Makefile.am: Delete recursive Makefile.am files.
1056         * Makefile.am: Include MSVC_Net200[58]/filelist.am.
1057         (dist_noinst_DATA): Distribute MSVC project files.
1058         (SUBDIRS): Do not recurse into the MSVC_Net200[58] subdirectories.
1059         * configure.ac (AC_CONFIG_FILES): Remove the output files
1060         MSVC_Net200[58]/Makefile.am from the list.
1061         (AC_CONFIG_COMMANDS): Copy sigc++config.h into the MSVC project
1062         directories at the end of config.status.
1063
1064 2009-08-11  Daniel Elstner  <danielk@openismus.com>
1065
1066         Remove now superfluous doctool overrides
1067
1068         * docs/Makefile.am: Remove overrides for the documentation
1069         utilities, since MM_CONFIG_DOCTOOL_DIR() already takes care
1070         of setting MMDOCTOOLDIR to the local directory.
1071         * sigc++-2.0.pc.in (datadir): Substitute value, just in case.
1072
1073 2009-08-10  Daniel Elstner  <danielk@openismus.com>
1074
1075         List mm-common files in scripts/.gitignore
1076
1077 2009-08-10  Daniel Elstner  <danielk@openismus.com>
1078
1079         Have mm-common-prepare install the doc utils
1080
1081         * configure.ac: Call MM_CONFIG_DOCTOOL_DIR([scripts]) to set
1082         up the destination directory for mm-common-prepare to copy
1083         the documentation utilities to.
1084         * scripts/doc-install.pl: Delete file.
1085         * scripts/doc-postprocess.pl: ditto,
1086         * scripts/tagfile-to-devhelp2.xsl: ditto.
1087
1088 2009-08-09  Daniel Elstner  <danielk@openismus.com>
1089
1090         Refresh doc-install and doc-postprocess copies
1091
1092         * scripts/doc-install.pl, scripts/doc-postprocess.pl: Copy
1093         latest versions from the mm-common module.
1094         * docs/Makefile.am (doc_install), (doc_postprocess): Include
1095         $(PERL) interpreter command in front of the script name.
1096
1097 2009-08-08  Daniel Elstner  <danielk@openismus.com>
1098
1099         Disable extraction of undocumented identifiers
1100
1101         * docs/reference/Doxyfile.in (EXTRACT_ALL): Change setting to
1102         NO, and adapt a number of related options accordingly.  The
1103         result is a net loss of about 300 generated .html files.  The
1104         roughly 450 files which remain now are still an insanely high
1105         number, though.
1106         (PREDEFINED): Predefine the Autoconf configuration defines to
1107         nudge Doxygen towards documenting the canonical code paths.
1108
1109 2009-08-07  Daniel Elstner  <danielk@openismus.com>
1110
1111         Use #error explicitly instead of broken code
1112
1113         * sigc++config.h.in: Do use the #error preprocessor directive,
1114         instead of an errornous piece of code.  This code does not need
1115         the same level of obfuscation as an Autoconf feature test.
1116
1117 2009-08-07  Daniel Elstner  <danielk@openismus.com>
1118
1119         Change bug report URL to point to Bugzilla
1120
1121         * configure.ac (AC_INIT): Change the bug-report argument to the
1122         URL for filing a new libsigc++ bug on bugzilla.gnome.org.  Also
1123         name the website URL as fifth argument.  It will simply be ignored
1124         if the installed Autoconf does not support this new feature.
1125
1126 2009-08-07  Daniel Elstner  <danielk@openismus.com>
1127
1128         Do not enable -pedantic mode by default
1129
1130         * configure.ac (MM_ARG_ENABLE_WARNINGS): Remove -pedantic from the
1131         list of compiler flags to use at warning level "min" (the default).
1132
1133 2009-08-07  Daniel Elstner  <danielk@openismus.com>
1134
1135         Correct M4 forbidden tokens pattern
1136
1137         * configure.ac (m4_pattern_forbid): Take into account that the
1138         pattern is applied to tokens, not lines.  Also catch unexpanded
1139         calls to underscore-prefixed private macros.
1140
1141 2009-08-06  Daniel Elstner  <danielk@openismus.com>
1142
1143         Transition to new mm-common build infrastructure
1144
1145         * autogen.sh: Replace with a minimal script that simply executes
1146         mm-common-prepare, autoreconf and configure.
1147         * configure.ac: Get rid of an enormous amount of old cruft.  Use
1148         macros from the new mm-common module to set up Doxygen for building
1149         the documentation.  Add option to enable more compiler warnings.
1150         * sigc++-2.0-uninstalled.pc.in: New pkg-config data file to allow
1151         linking to an uninstalled libsigc++.
1152         * sigc++-2.0.pc.in: Modernize.  Provide the location of the
1153         installed reference documentation and the Doxygen tag file.
1154         * sigc++config.h.in: Modernize and update for new build
1155         infrastructure.
1156         * Makefile.am, */Makefile.am: Modernize and adapt to the new C++
1157         binding build infrastructure in the mm-common module.
1158         * sigc++/filelist.am: New Automake include file.  Defines lists
1159         of C++ and M4 source files.
1160         * docs/Makefile.am: Rewrite using doc-reference.am from the
1161         mm-common module.
1162         * docs/doc-manual.am: New Automake include file for building the
1163         libsigc++ Docbook manual.
1164         * docs/images/Makefile.am: Remove file.
1165         * docs/manual/Makefile.am: ditto,
1166         * docs/reference/Makefile.am: ditto.
1167         * docs/Makefile_web.am_fragment: Remove for now, to be taken care
1168         of later.
1169         * docs/reference/Doxyfile.in: Modernize and adapt to new build
1170         infrastructure.
1171         * docs/reference/beautify_docs.pl: Remove and use the more recent
1172         scripts/doc-postprocess.pl instead.
1173         * libsigc++-2.0.spec.in: Remove, to be resurrected only if someone
1174         complains.
1175         * scripts/Makefile.am: Remove file.  Distribute the files from the
1176         toplevel Makefile.am instead.
1177         * scripts/cxx_std.m4: Add missing third argument to AC_DEFINE().
1178         * scripts/doc-install.pl: New file, copied from mm-common.
1179         * scripts/doc-postprocess.pl: ditto,
1180         * scripts/tagfile-to-devhelp2.xsl: ditto.
1181
1182 2009-06-24  Daniel Elstner  <danielk@openismus.com>
1183
1184         Add Description of a Project (DOAP) file
1185
1186 2008-11-13  Murray Cumming  <murrayc@murrayc.com>
1187
1188         Correct the download link so it shows all versions, not just 2.0.
1189
1190 2008-11-13  Murray Cumming  <murrayc@murrayc.com>
1191
1192         * docs/website/stable.shtml: Correct the download link so it shows all 
1193         versions, not just 2.0.
1194
1195         svn path=/trunk/; revision=302
1196
1197 2008-10-15  Murray Cumming  <murrayc@src.gnome.org>
1198
1199         Increased version
1200
1201         svn path=/trunk/; revision=301
1202
1203 2008-10-08  Armin Burgmeier  <armin@arbur.net>
1204
1205         Changed output name to match the new naming convention.
1206
1207 2008-10-08  Armin Burgmeier  <armin@arbur.net>
1208
1209         * MSVN_Net2005/libsigc++2.vcproj: Changed output name to match the new
1210         naming convention.
1211
1212         * MSVC_Net2008/: Added MSVC 2008 project files. These are basically
1213         the same as for MSVC 2005, but converted to MSVC 2008 projects.
1214
1215         * configure.ac:
1216         * Makefile.am: Added the new files to the build.
1217
1218         svn path=/trunk/; revision=300
1219
1220 2008-08-08  Armin Burgmeier  <armin@arbur.net>
1221
1222         Enable the disconnect_during_emit test by default.
1223
1224 2008-08-08  Armin Burgmeier  <armin@arbur.net>
1225
1226         * MSVC_Net2005/libsigc++2.sln: Enable the disconnect_during_emit test
1227         by default.
1228
1229         * MSVC_Net2005/libsigc++2.vcproj: Renamed the generated debug database
1230         file to sigc-2.0d.pdb (the default), to stay consistent with the *mm
1231         wrapper libraries.
1232
1233         svn path=/trunk/; revision=299
1234
1235 2008-08-08  Armin Burgmeier  <armin@arbur.net>
1236
1237         Moved from MSVC_Net2003.
1238
1239 2008-08-08  Armin Burgmeier  <armin@arbur.net>
1240
1241         * MSVC_Net2005/: Moved from MSVC_Net2003.
1242
1243         * MSVC_Net2005/libsigc++2.sln:
1244         * MSVC_Net2005/libsigc++2.vcproj:
1245         * MSVC_Net2005/tests/*/*.vcproj: Converted the Visual Studio 2003
1246         project files to 2005 ones.
1247
1248         * MSVC_Net2005/Makefile.am:
1249         * Makefile.am:
1250         * configure.ac: Adapted build files accordingly.
1251
1252         svn path=/trunk/; revision=298
1253
1254 2008-04-06  Cedric Gustin  <cedric.gustin@gmail.com>
1255
1256         Removed ATL/MFC header files dependency as afxres.h is not part of the
1257
1258         2008-04-06 Cedric Gustin <cedric.gustin@gmail.com>
1259
1260         * MSVC_Net2003/sigc-2.0.rc.in: Removed ATL/MFC header files 
1261         dependency as afxres.h is not part of the Microsoft Platform
1262         SDK provided with Visual C++ Express 2008.
1263         Bug #503933.
1264
1265         svn path=/trunk/; revision=297
1266
1267 2008-03-10  Murray Cumming  <murrayc@src.gnome.org>
1268
1269         Increased version
1270
1271         svn path=/trunk/; revision=296
1272
1273 2008-02-28  Murray Cumming  <murrayc@src.gnome.org>
1274
1275         Increased version
1276
1277         svn path=/trunk/; revision=295
1278
1279 2008-02-28  Elaine Xiong  <elaine.xiong@sun.com>
1280
1281         Add ifdefs around uses of reverse_iterator to really fix the build with
1282
1283 2008-02-28  Elaine Xiong  <elaine.xiong@sun.com>
1284
1285         * sigc++/macros/signal.h.m4:
1286         * tests/test_accum_iter.cc: Add ifdefs around uses of 
1287         reverse_iterator to really fix the build with recent 
1288         versions of Sun CC.
1289         Bug #302098.
1290
1291         svn path=/trunk/; revision=294
1292
1293 2008-02-22  Murray Cumming  <murrayc@src.gnome.org>
1294
1295         Increased version
1296
1297         svn path=/trunk/; revision=293
1298
1299 2008-01-01  Ryan Hill  <dirtyepic@gentoo>
1300
1301         Include the cstdlib and cstring headers to fix the build with the gcc 4.3
1302
1303 2008-01-01  Ryan Hill  <dirtyepic@gentoo.>
1304
1305         * tests/test_copy_invalid_slot.cc: Include the cstdlib 
1306         and cstring headers to fix the build with the gcc 4.3 
1307         pre-release. Bug #454882.
1308
1309         svn path=/trunk/; revision=292
1310
1311 2007-12-09  Murray Cumming  <murrayc@murrayc.com>
1312
1313         Added some includes to fix the build in some environments, such as when
1314
1315 2007-08-31  Murray Cumming  <murrayc@murrayc.com>
1316
1317         * tests/test_copy_invalid_slot.cc: Added some includes to 
1318         fix the build in some environments, such as when using Sun CC.
1319         Thanks to Vladimir Marek in bug #469872.
1320
1321         svn path=/trunk/; revision=291
1322
1323 2007-09-10  Murray Cumming  <murrayc@src.gnome.org>
1324
1325         Mark version in ChangeLog
1326
1327         svn path=/trunk/; revision=290
1328
1329 2007-09-10  Murray Cumming  <murrayc@src.gnome.org>
1330
1331         Added MAINTAINERS file
1332
1333         svn path=/trunk/; revision=288
1334
1335 2007-08-14  Murray Cumming  <murrayc@src.gnome.org>
1336
1337         Increase version
1338
1339         svn path=/trunk/; revision=286
1340
1341 2007-08-14  Murray Cumming  <murrayc@murrayc.com>
1342
1343         Removed this header.
1344
1345 2007-08-14  Murray Cumming  <murrayc@murrayc.com>
1346
1347         * sigc++/Makefile.am:
1348         * sigc++/compatibility.h: Removed this header.
1349         * sigc++/bind.h:
1350         * sigc++/bind_return.h:
1351         * sigc++/connection.h:
1352         * sigc++/macros/class_slot.h.m4:
1353         * sigc++/macros/hide.h.m4:
1354         * sigc++/macros/method_slot.h.m4:
1355         * sigc++/macros/object_slot.h.m4:
1356         * sigc++/macros/retype.h.m4:
1357         * sigc++/macros/signal.h.m4:
1358         * sigc++/macros/slot.h.m4:
1359         * sigc++/object.h:
1360         * sigc++/retype_return.h: Removed deprecated 
1361         compatibility API, to probably fix the build with 
1362         some compilers, such as some versions of the Sun Forte C++ 
1363         CC compiler. This API has been deprecated April 2004, and 
1364         is not widely used, so it seems safe to do this now.
1365
1366         * tests/Makefile.am:
1367         * tests/test_compatibility.cc: Removed this test.
1368
1369         svn path=/trunk/; revision=285
1370
1371 2007-07-28  Michael Elkstrand  <michael@elehack.net>
1372
1373         slot_iterator_buf, slot_reverse_iterator_buf: Added typedefs for
1374
1375 2007-07-28  Michael Elkstrand  <michael@elehack.net>
1376
1377         * sigc++/macros/signal.h.m4: slot_iterator_buf, 
1378         slot_reverse_iterator_buf: Added typedefs for 
1379         value_type, reference, and pointer, so that these 
1380         iterators are more like standard C++ iterators, so they can 
1381         be used with standard C++ algorithms.  
1382         * tests/Makefile.am:
1383         * tests/test_accum_iter.cc: Added a test for this.
1384         Bug #417926.
1385
1386         svn path=/trunk/; revision=284
1387
1388 2006-11-14  Daniel Elstner  <daniel@src.gnome.org>
1389
1390         Wholly replace this script with a critter from one of my personal
1391
1392         * autogen.sh: Wholly replace this script with a critter from one
1393         of my personal projects, with slight modifications.  This one does
1394         some sophisticated stuff like probing version numbers of available
1395         automake and aclocal executables, in order to choose the right one
1396         accordingly.  All this is necessary to make the build system work
1397         robustly in custom environments such as Maemo where automake-1.9
1398         doesn't come preinstalled.
1399
1400 2006-06-20  Murray Cumming  <murrayc@murrayc.com>
1401
1402         Revert the previous changes, because none is used in the exported symbol
1403
1404 2006-06-20  Murray Cumming  <murrayc@murrayc.com>
1405
1406         * sigc++/adaptors/macros/bind.h.m4:
1407         * sigc++/adaptors/macros/retype.h.m4:
1408         * sigc++/functors/macros/functor_trait.h.m4:
1409         * sigc++/functors/macros/slot.h.m4:
1410         * sigc++/macros/retype.h.m4:
1411         * sigc++/macros/signal.h.m4: Revert the previous changes, because none is
1412         used in the exported symbol names from gtkmm, so this would break the ABI
1413         of gtkmm.
1414
1415 2006-06-06  Régis Duchesne  <hpreg@vmware.com>
1416
1417         Renamed 'nil' to 'none' to allow an Objective-C++ compiler to compile the
1418
1419         2006-05-26  Régis Duchesne <hpreg@vmware.com>
1420
1421         * sigc++/adaptors/macros/bind.h.m4:
1422         * sigc++/adaptors/macros/retype.h.m4:
1423         * sigc++/functors/macros/functor_trait.h.m4:
1424         * sigc++/functors/macros/slot.h.m4:
1425         * sigc++/macros/retype.h.m4:
1426         * sigc++/macros/signal.h.m4:
1427         Renamed 'nil' to 'none' to allow an Objective-C++ compiler to compile
1428         the library header files.
1429
1430 2005-12-21  Murray Cumming  <murrayc@murrayc.com>
1431
1432         Make remaining reverse_iterator_buf operator--() methods return by
1433
1434 2005-12-21  Murray Cumming  <murrayc@murrayc.com>
1435
1436         * sigc++/macros/signal.h.m4: Make remaining
1437         reverse_iterator_buf operator--() methods
1438         return by reference, like the operator++() methods.
1439         Bug #304402 from John Profic.
1440
1441 2005-12-20  Murray Cumming  <murrayc@murrayc.com>
1442
1443         Make all operator--() methods return by reference, like the operator++()
1444
1445 2005-12-20  Murray Cumming  <murrayc@murrayc.com>
1446
1447         * sigc++/macros/signal.h.m4: Make all operator--() methods
1448         return by reference, like the operator++() methods.
1449         Bug #304402 from John Profic.
1450
1451 2005-12-14  John Profic  <profic@kursknet.ru>
1452
1453         Fix compilation problem in the last patch.
1454
1455         2005-12-14  John Profic <profic@kursknet.ru>
1456
1457         * sigc++/macros/signal.h.m4: Fix compilation problem in
1458         the last patch.
1459
1460 2005-12-14  John Profic  <profic@kursknet.ru>
1461
1462         Added emit_reverse().
1463
1464         2005-12-14  John Profic <profic@kursknet.ru>
1465
1466         * sigc++/macros/signal.h.m4: Added emit_reverse().
1467
1468 2005-12-14  Murray Cumming  <murrayc@src.gnome.org>
1469
1470         mark branch in ChangeLog
1471
1472 2005-12-01  Murray Cumming  <murrayc@murrayc.com>
1473
1474         slot_base::disconnect(): Set call_ to 0, to invalidate the slot, even if
1475
1476         2005-12-01  Murray Cumming <murrayc@murrayc.com>
1477
1478         * sigc++/functors/slot_base.cc:
1479         slot_base::disconnect(): Set call_ to 0,
1480         to invalidate the slot, even if parent_ is 0.
1481         I think parent_ is, for instance, a signal, but
1482         disconnect should still work on a slot that is not
1483         connected to a signal, because a slot can be invoked
1484         directly.
1485         Fixes bug #311057 from James Lin.
1486
1487 2005-12-01  Murray Cumming  <murrayc@murrayc.com>
1488
1489         Added test case from bug #311057.
1490
1491         2005-12-01  Murray Cumming <murrayc@murrayc.com>
1492
1493         * tests/Makefile.am:
1494         * tests/test_slot_disconnect.cc: Added test
1495         case from bug #311057.
1496
1497 2005-11-16  Philipp Berndt  <philipp.berndt@gmx.net>
1498
1499         Make member exception_catch_functor<T_functor, T_catcher, void>::catcher_
1500
1501 2005-11-16  Philipp Berndt  <philipp.berndt@gmx.net>
1502
1503         * sigc++/adaptors/macros/exception_catch.h.m4: Make member
1504         exception_catch_functor<T_functor, T_catcher, void>::catcher_
1505         public so that it can be accessed by visit_each()
1506         (bug fixed for generalization on 2004-11-06)
1507         ~
1508
1509 2005-08-17  Murray Cumming  <murrayc@src.gnome.org>
1510
1511         Increased version. Forgot to commit this a few days ago.
1512
1513 2005-08-01  Neal E. Coombes  <nealc@trdlnk.com>
1514
1515         Updated the documentation for temp_slot_list as requested in bug #303896.
1516
1517 2005-08-01  Neal E. Coombes  <nealc@trdlnk.com>
1518
1519         * sigc++/signal_base.h: Updated the documentation for temp_slot_list
1520         as requested in bug #303896.
1521
1522 2005-08-01  Murray Cumming  <murrayc@murrayc.com>
1523
1524         Added missing ) in call to sun_forte_workaround(), fixing build on SUN
1525
1526 2005-07-13  Murray Cumming  <murrayc@murrayc.com>
1527
1528         * sigc++/adaptors/hide.h.m4: Added missing
1529         ) in call to sun_forte_workaround(), fixing
1530         build on SUN Forte 5.5. Bug #312020.
1531
1532 2005-08-01  Bruno Martinez  <brunom@fing.edu.uy>
1533
1534         Renamed ::sigc::is_base_and_derived::internal to
1535
1536         2005-08-19  Bruno Martinez <brunom@fing.edu.uy>
1537
1538         * sigc++/type_traits.h: Renamed
1539         ::sigc::is_base_and_derived::internal to
1540         ::sigc::is_base_and_derived::internal_class
1541         in order to avoid conflict with
1542         namespace internal.
1543
1544 2005-07-13  Murray Cumming  <murrayc@src.gnome.org>
1545
1546         fix typo.
1547
1548 2005-07-13  Murray Cumming  <murrayc@murrayc.com>
1549
1550         Correct mentions of 1.2 stuff instead of 2.0. Patch in bug #310213 from
1551
1552 2005-07-13  Murray Cumming  <murrayc@murrayc.com>
1553
1554         * docs/manual/libsigc_manual.xml: Correct mentions of
1555         1.2 stuff instead of 2.0. Patch in bug #310213 from
1556         pebble.org.uk.
1557
1558 2005-07-13  Murray Cumming  <murrayc@murrayc.com>
1559
1560         Fixed typo found by Antonio Coralles.
1561
1562 2005-07-13  Murray Cumming  <murrayc@murrayc.com>
1563
1564         * docs/manual/libsigc_manual.xml: Fixed typo
1565         found by Antonio Coralles.
1566
1567 2005-07-09  Murray Cumming  <murrayc@murrayc.com>
1568
1569         Did the same (see last commit) for slot_const_iterator and
1570
1571 2005-07-09  Murray Cumming  <murrayc@murrayc.com>
1572
1573         * sigc++/macros/signal.h.m4: Did the same (see
1574         last commit) for slot_const_iterator and
1575         slot_iterator_buf.
1576
1577 2005-07-09  Murray Cumming  <murrayc@murrayc.com>
1578
1579         slot_iterator: operator--() now returns value, not reference, like
1580
1581 2005-07-09  Murray Cumming  <murrayc@murrayc.com>
1582
1583         * sigc++/macros/signal.h.m4: slot_iterator:
1584         operator--() now returns value, not reference, like
1585         operator++() already did. This caused crashes when
1586         using --no-inline with g++. Bug #308651 by
1587         Michael Andres.
1588
1589 2005-07-04  Murray Cumming  <murrayc@src.gnome.org>
1590
1591         Increased version
1592
1593 2005-07-04  Philip Langdale  <plangdale@vmware.com>
1594
1595         Add a setter typedef to compose*_functor and use it instead of the
1596
1597 2005-07-04  Philip Langdale  <plangdale@vmware.com>
1598
1599         * sigc++/adaptors/macros/compose.h.m4: Add a setter typedef to
1600         compose*_functor and use it instead of the (incorrect) getter
1601         typedef in the compose* specialization of visit_each<>().
1602         This corrects the lifetime management of slots created with
1603         compose(). Bug #308433.
1604
1605 2005-06-13  Marek Rouchal  <marek.rouchal@infineon.com>
1606
1607         Specify int return type for main(), to be more ISO C++ compliant. Bug
1608
1609 2005-06-13  Marek Rouchal  <marek.rouchal@infineon.com>
1610
1611         * tests/test_deduce_result_type.cc: Specify int return type
1612         for main(), to be more ISO C++ compliant. Bug #307478.
1613
1614 2005-06-13  Andris Pavenis  <pavenis@latnet.lv>
1615
1616         sigc++/adaptors/lambda/macros/select.h.m4 Specify only a type (not a
1617
1618         2005-06-11  Andris Pavenis <pavenis@latnet.lv>
1619
1620         * sigc++/adaptors/lambda/macros/base.h.m4:
1621         * sigc++/adaptors/lambda/macros/select.h.m4
1622         * sigc++/adaptors/macros/hide.h.m4: Specify only a type (not a
1623         parameter name) for unused member function parameters
1624
1625 2005-06-12  Paul Pogonyshev  <pogonyshev@gmx.net>
1626
1627         Add test for whether the compiler allows referencing to member functions
1628
1629 2005-06-12  Paul Pogonyshev  <pogonyshev@gmx.net>
1630
1631         * configure.ac:
1632         * scripts/cxx.m4:
1633         * sigc++config.h.in: Add test for whether the compiler allows
1634         referencing to member functions of the class/structure being
1635         declared from a definition of a static member variable.
1636         Supposedly a generic solution for GCC 3.2 compilation problems.
1637
1638         * sigc++/type_traits.h: Define SIGC_WRAP_IS_BASE_CLASS_ based on
1639         results of the above test.
1640         (struct is_base_and_derived): Wrap up is_base_class_() functions
1641         in an internal class if SIGC_WRAP_IS_BASE_CLASS_ is defined.
1642
1643 2005-06-10  Murray Cumming  <murrayc@murrayc.com>
1644
1645         Use CALL_SIZE instead of hard-coded 7s and 6s.
1646
1647 2005-06-10  Murray Cumming  <murrayc@murrayc.com>
1648
1649         * sigc++/adaptors/macros/bind.h.m4:
1650         * sigc++/functors/macros/slot.h.m4:
1651         * sigc++/macros/signal.h.m4: Use CALL_SIZE instead of
1652         hard-coded 7s and 6s.
1653
1654 2005-06-10  Murray Cumming  <murrayc@src.gnome.org>
1655
1656         Increased version
1657
1658 2005-06-10  Murray Cumming  <murrayc@murrayc.com>
1659
1660         Make the limit_derived_target::with_type inner class an outer class, to
1661
1662 2005-06-10  Murray Cumming  <murrayc@murrayc.com>
1663
1664         * sigc++/visit_each.h: Make the
1665         limit_derived_target::with_type inner class an outer class,
1666         to satisfy the SUN CC 5.7 compiler, though I think it is a
1667         compiler bug. Bug #302098 has the test case.
1668
1669 2005-06-10  Murray Cumming  <murrayc@murrayc.com>
1670
1671         Make the limit_derived_target::with_type inner class an outer class, to
1672
1673 2005-06-10  Murray Cumming  <murrayc@murrayc.com>
1674
1675         * sigc++/visit_each.h: Make the
1676         limit_derived_target::with_type inner class an outer class,
1677         to satisfy the SUN CC 5.7 compiler, though I think it is a
1678         compiler bug. Bug #302098 has the test case.
1679
1680 2005-06-09  Murray Cumming  <murrayc@src.gnome.org>
1681
1682         Increased version
1683
1684 2005-06-07  Murray Cumming  <murrayc@src.gnome.org>
1685
1686         Removed missing call to missing macro from configure.in
1687
1688 2005-06-07  Murray Cumming  <murrayc@murrayc.com>
1689
1690         Specify the actual class when using test_int(), instead of the derived
1691
1692         2005-06-07  Murray Cumming <murrayc@murrayc.com>
1693
1694         * tests/test_compatibility.cc: Specify the actual class when
1695         using test_int(), instead of the derived class, to fix the build
1696         on SUN Forte CC 5.5. Patch from Friedemann Kleint in
1697         Bug #305647
1698
1699 2005-06-07  Murray Cumming  <murrayc@murrayc.com>
1700
1701         signal_emit::emit(): Use scope to ensure a certain order of destruction of
1702
1703         2005-06-07  Murray Cumming <murrayc@murrayc.com>
1704
1705         * sigc++/macros/signal.h.m4: signal_emit::emit(): Use scope to
1706         ensure a certain order of destruction of the member variables, to
1707         avoid a leak on MSVC++. Patch by Andreas Ames in Bug #306249.
1708
1709 2005-06-07  Murray Cumming  <murrayc@murrayc.com>
1710
1711         Added comments about commenting-out SIGC_TYPEDEF_REDEFINE_ALLOWED when
1712
1713         2005-06-07  Murray Cumming <murrayc@murrayc.com>
1714
1715         * sigc++/macros/signal.h.m4: Added comments about commenting-out
1716         SIGC_TYPEDEF_REDEFINE_ALLOWED when using SUN Forte CC 5.7,
1717         because I can not seem to create a test for it.
1718
1719 2005-06-07  Murray Cumming  <murrayc@murrayc.com>
1720
1721         Added check for the non-standard SUN Forte reverse_iterator<>, and used
1722
1723         2005-06-07  Murray Cumming <murrayc@murrayc.com>
1724
1725         * configure.ac:
1726         * scripts/cxx_std.m4:
1727         * sigc++/macros/signal.h.m4:
1728         * sigc++config.h.in: Added check for
1729         the non-standard SUN Forte reverse_iterator<>,
1730         and used it. This is based on the same stuff in
1731         gtkmm.
1732
1733 2005-06-07  Murray Cumming  <murrayc@murrayc.com>
1734
1735         limit_derived_target(): Just some whitespace changes.
1736
1737         2005-06-07  Murray Cumming <murrayc@murrayc.com>
1738
1739         * sigc++/visit_each.h: limit_derived_target(): Just some whitespace
1740         changes.
1741
1742 2005-06-07  Murray Cumming  <murrayc@murrayc.com>
1743
1744         limit_derived_target(): Just some whitespace changes.
1745
1746         2005-06-07  Murray Cumming <murrayc@murrayc.com>
1747
1748         * sigc++/visit_each.h: limit_derived_target(): Just some whitespace
1749         changes.
1750
1751 2005-06-04  Neal E. Coombes  <nealc@trdlnk.com>
1752
1753         Modified temp_slot_list to be a temporary view into a slot list. Instead
1754
1755 2005-05-16  Neal E. Coombes  <nealc@trdlnk.com>
1756
1757         * sigc++/signal_base.h:  Modified temp_slot_list to be a temporary view
1758         into a slot list.  Instead of emptying the original it now simply tacks
1759         a placeholder to the end of the original.  It then uses this as it's
1760         'end' iterator.  This should allow for conscious recursiveness, as well
1761         as inserting a slot to any position in the slot list during emittion.
1762         See bug #303896.
1763
1764 2005-06-04  Friedemann Kleint  <kleint@bifab.de>
1765
1766         visit_each() template specializations: Mention the bool
1767
1768         2005-06-04  Friedemann Kleint <kleint@bifab.de>
1769
1770         * sigc++/macros/limit_reference.h.m4:
1771         visit_each() template specializations:
1772         Mention the bool I_derives_trackable
1773         template type, to fix the build on Solaris
1774         Forte 5.5.
1775
1776 2005-05-10  Murray Cumming  <murrayc@src.gnome.org>
1777
1778         Increased version
1779
1780 2005-05-10  Murray Cumming  <murrayc@src.gnome.org>
1781
1782         Added missing include
1783
1784 2005-05-10  Régis Duchesne  <hpreg@vmware.com>
1785
1786         New class that just stores a reference, and makes sure that if the
1787
1788         2005-05-06  Régis Duchesne <hpreg@vmware.com>
1789
1790         * sigc++/macros/limit_reference.h.m4 (added):
1791         * sigc++/Makefile.am:
1792         New class that just stores a reference, and makes sure that if the
1793         reference derives from trackable, then the trackable reference will be
1794         used instead of the derived reference in visit_each().
1795         * sigc++/functors/macros/mem_fun.h.m4: Better fix for bug #169225 by
1796         Régis Duchesne and Christian Hammond, based on the new limit_reference
1797         class.
1798         * sigc++/adaptors/bound_argument.h (added): New class (built upon the
1799         new limit_reference class) that handles all 3 kinds of bound arguments:
1800         by value, by reference, and by constant reference. References are
1801         unwrapped in the bound_argument's constructor.
1802         * sigc++/adaptors/macros/bind.h.m4: Fix for bug #302327 by Régis
1803         Duchesne. Bound arguments now need to know whether they are passed by
1804         reference or not. So bind() now builds bind_functor instances using
1805         'reference_wrapper<Foo>' types, instead of 'Foo &' types. The
1806         bind_functor code is modified to compensate.
1807         * sigc++/adaptors/macros/bind_return.h.m4: Similar fix for a similar
1808         bug (unfiled) with bound return arguments.
1809         * sigc++/reference_wrapper.h:
1810         * sigc++/type_traits.h:
1811         The reference_wrapper class is only used in bound_argument.h. Put
1812         correct but unused code under #if 0.
1813         * sigc++/adaptors/lambda/base.h: This file needs reference_wrapper.h,
1814         but was incorrectly relying on type_traits.h to include it.
1815         * tests/Makefile.am:
1816         * tests/test_virtualbase_delete.cc (deleted):
1817         * tests/test_virtualbase_delete_ref_param.cc (deleted):
1818         * tests/test_limit_reference.cc (added):
1819         Replaced test_virtualbase_delete*.cc with a simpler
1820         test_limit_reference.cc which checks for all 3 aspects of the same bug
1821         in one file.
1822         * tests/test_bind_ref.cc: Slots must use 'Foo &' types. We were lucky
1823         this broken usage worked before this change. The change in
1824         type_traits.h made this bug obvious, by preventing the code to compile.
1825         * tests/test_bind_return.cc: After my change, bind() and bind_return()
1826         must use 'reference_wrapper<Foo>' types.
1827         * tests/test_custom.cc: Made this test a no-op (so it does not perturb
1828         'make check' on released versions of the library) and made it a
1829         template ready to be modified by hackers.
1830
1831 2005-05-04  Murray Cumming  <murrayc@src.gnome.org>
1832
1833         Added missing file
1834
1835 2005-05-01  Murray Cumming  <murrayc@src.gnome.org>
1836
1837         Added test case
1838
1839 2005-05-01  Murray Cumming  <murrayc@murrayc.com>
1840
1841         slot_base::slot_base(src): If the source slot_base has a null rep->call_,
1842
1843         2005-05-01  Murray Cumming <murrayc@murrayc.com>
1844
1845         * sigc++/functors/slot_base.cc:
1846         slot_base::slot_base(src): If the source
1847         slot_base has a null rep->call_, meaning that the
1848         slot is invalid, just return a default-constructed
1849         slot, to prevent the crash shown in
1850         tests/tests_copy_invalid_slot.cc. Bug #302515 by
1851         Régis Duchesne.
1852
1853 2005-05-01  Murray Cumming  <murrayc@src.gnome.org>
1854
1855         Added test
1856
1857 2005-05-01  Murray Cumming  <murrayc@murrayc.com>
1858
1859         bound_*<>: Add a new is_base_and_derived<sigc::trackable> parameter to the
1860
1861         2005-05-01  Murray Cumming <murrayc@murrayc.com>
1862
1863         * sigc++/functors/macros/mem_fun.h.m4: bound_*<>:
1864         Add a new is_base_and_derived<sigc::trackable>
1865         parameter to the template and thereby provide a
1866         specialization for T_Obj types that derive from
1867         sigc::trackable. This prevents a crash when casting
1868         from the derived type to sigc::trackable after the
1869         derived destructor has run. This cast can sometimes
1870         fail when using multiple inheritance, at least with
1871         g++. Bug #169225 by Régis Duchesne and Christian
1872         Hammond.
1873         * sigc++/type_traits.h: Add documenation for
1874         the internal is_base_and_derived<> template, which
1875         allows us to specialize other templates for certain
1876         template types.
1877
1878 2005-04-28  Murray Cumming  <murrayc@murrayc.com>
1879
1880         Added comments for users of g++ 3.2.
1881
1882         2005-04-28  Murray Cumming <murrayc@murrayc.com>
1883
1884         * sigc++/type_traits.h: Added comments for users of
1885         g++ 3.2.
1886
1887 2005-04-28  Murray Cumming  <murrayc@murrayc.com>
1888
1889         Added simplified test case from bug #169225. We have a patch to make this
1890
1891         2005-04-28  Murray Cumming <murrayc@murrayc.com>
1892
1893         * tests/Makefile.am:
1894         * tests/test_virtualbase_delete.cc: Added
1895         simplified test case from bug #169225. We have a patch
1896         to make this succeed but I am not ready to commit it
1897         just yet.
1898
1899 2005-04-27  Murray Cumming  <murrayc@murrayc.com>
1900
1901         Added a place to put extra test code, so I don't have to keep installing
1902
1903         2005-04-27  Murray Cumming <murrayc@murrayc.com>
1904
1905         * tests/Makefile.am:
1906         * tests/test_custom.cc:
1907         Added a place to put extra test code, so I don't have
1908         to keep installing my crazy libsigc++ versions.
1909
1910 2005-04-27  Murray Cumming  <murrayc@murrayc.com>
1911
1912         Revert back to the non-explicit template call, because we can not specify
1913
1914         2005-04-27  Murray Cumming <murrayc@murrayc.com>
1915
1916         * sigc++/visit_each.h: Revert back to the non-explicit
1917         template call, because we can not specify the
1918         template specialization so easily, because the
1919         specializations have different numbers of types.
1920         * tests/Makefile/am:
1921         * tests/test_bind_ref.cc: Add a simple test only for
1922         sigc::ref disconnection.
1923
1924 2005-04-26  Murray Cumming  <murrayc@murrayc.com>
1925
1926         Use the explicit template specialization, needed for Tru64 and AIX
1927
1928         2005-04-26  Murray Cumming <murrayc@murrayc.com>
1929
1930         * sigc++/visit_each.h: Use the explicit template
1931         specialization, needed for Tru64 and AIX compilers.
1932         This causes a crash in some uses of sigc::ref()
1933         (when using g++ 3.3.4 or 3.3.5 , but not with 3.4) but
1934         seems to fix a crash in some uses of multiple inheritance
1935         (bug #169225).
1936         * tests/test_bind.cc: Comment out the crashing (not with
1937         g++ 3.4) use of sigc::ref() with an explanatory comment.
1938
1939 2005-04-25  Murray Cumming  <murrayc@src.gnome.org>
1940
1941         tiny comment change
1942
1943 2005-03-31  Murray Cumming  <murrayc@src.gnome.org>
1944
1945         Increased version
1946
1947 2005-03-18  Murray Cumming  <murrayc@murrayc.com>
1948
1949         Updated the list of supported compilers.
1950
1951         2005-03-18  Murray Cumming <murrayc@murrayc.com>
1952
1953         * index.shtml: Updated the list of supported
1954         compilers.
1955
1956 2005-03-18  Murray Cumming  <murrayc@murrayc.com>
1957
1958         Remove links to the sourceforge download page, because we do not use it.
1959
1960         2005-03-18  Murray Cumming <murrayc@murrayc.com>
1961
1962         * fragments/footer.html_fragment:
1963         * fragments/html_declaration.html_fragment:
1964         * link.shtml: Remove links to the sourceforge
1965         download page, because we do not use it.
1966         * notes.shtml: Removed this. It is not linked
1967         from anywhere anyway.
1968
1969 2005-03-09  Cedric Gustin  <cedric.gustin@swing.be>
1970
1971         Fixed typo in today's date.
1972
1973         2005-03-09  Cedric Gustin <cedric.gustin@swing.be>
1974
1975         * ChangeLog: Fixed typo in today's date.
1976
1977 2005-03-09  Cedric Gustin  <cedric.gustin@swing.be>
1978
1979         Moved MSVC_Net2003 directory to SUBDIRS. Added blank.cpp to EXTRA_DIST.
1980
1981         2005-01-24  Cedric Gustin <cedric.gustin@swing.be>
1982
1983         * Makefile.am: Moved MSVC_Net2003 directory to SUBDIRS.
1984         * MSVC_Net2003/Makefile.am: Added blank.cpp to EXTRA_DIST.
1985         * MSVC_Net2003/libsigc++2_msvcNet2003.sln: Removed
1986         test_accumulated and test_lambda projects as the tests are
1987         disabled in the standard, configure-based build.
1988         * MSVC_Net2003/MSVC_Net2003/libsigc++2_msvcNet2003.vcproj:
1989         Generate a PDB file in the Debug target.
1990
1991 2005-03-04  Murray Cumming  <murrayc@murrayc.com>
1992
1993         Mention actual supported compilers. Removed broken examples links. Change
1994
1995 2005-03-05  Murray Cumming  <murrayc@murrayc.com>
1996
1997         * docs/website/stable.html: Mention actual supported compilers.
1998         * docs/website/docs.html: Removed broken examples links. Change
1999         reference link to the reference overview page.
2000
2001 2005-02-23  Murray Cumming  <murrayc@murrayc.com>
2002
2003         Make slot_base::operator=() public, to fix the build with SUN Forte C++
2004
2005 2005-02-23  Murray Cumming  <murrayc@murrayc.com>
2006
2007         * sigc++/functors/slot_base.h: Make slot_base::operator=() public, to
2008         fix the build with SUN Forte C++ 5.5 and Tru64.
2009
2010 2005-02-22  Murray Cumming  <murrayc@src.gnome.org>
2011
2012         Increased version
2013
2014 2005-02-20  Murray Cumming  <murrayc@murrayc.com>
2015
2016         #included <new> to avoid an unresolved symbol error with the Tru64
2017
2018 2005-02-20  Murray Cumming  <murrayc@murrayc.com>
2019
2020         * tests/test_slot.cc, test_disconnect.cc: #included <new> to avoid
2021         an unresolved symbol error with the Tru64 compiler. Solutio found by
2022         Tim Mooney in bug #161503.
2023
2024 2005-02-20  Murray Cumming  <murrayc@murrayc.com>
2025
2026         #included <new> to avoid an unresolved symbol error with the Tru64
2027
2028 2005-02-20  Murray Cumming  <murrayc@murrayc.com>
2029
2030         * tests/test_slot.cc, test_disconnect.cc: #included <new> to avoid
2031         an unresolved symbol error with the Tru64 compiler. Solutio found by
2032         Tim Mooney in bug #161503.
2033
2034 2005-02-20  Martin Schulze  <mschulze@cvs.gnome.org>
2035
2036         Add some documentation.
2037
2038 2005-02-20  Martin Schulze  <mschulze@cvs.gnome.org>
2039
2040         * sigc++/signal_base.h: Add some documentation.
2041
2042 2005-02-20  Martin Schulze  <mschulze@cvs.gnome.org>
2043
2044         Reset deferred_ flag to false in signal_impl::sweep() (Neal E. Coombes).
2045
2046 2005-02-20  Martin Schulze  <mschulze@cvs.gnome.org>
2047
2048         * sigc++/signal_base.cc: Reset deferred_ flag to false in
2049         signal_impl::sweep() (Neal E. Coombes). Partly fixes bug
2050         #167714.
2051
2052 2005-02-11  Martin Schulze  <mschulze@cvs.gnome.org>
2053
2054         Set the correct group in post-html.
2055
2056 2005-02-11  Martin Schulze  <mschulze@cvs.gnome.org>
2057
2058         * docs/manual/Makefile.am: Set the correct group in post-html.
2059
2060 2005-02-11  Murray Cumming  <murrayc@murrayc.com>
2061
2062         Fix typo in url for reference docs. Found by James Lin.
2063
2064 2005-02-11  Murray Cumming  <murrayc@murrayc.com>
2065
2066         * docs/website/doc.shtml: Fix typo in url for reference docs. Found by
2067         James Lin.
2068
2069 2005-02-11  Murray Cumming  <murrayc@src.gnome.org>
2070
2071         reverted stuff I did not mean to commit
2072
2073 2005-02-11  Murray Cumming  <murrayc@murrayc.com>
2074
2075         Fix typo in url for reference docs. Found by James Lin.
2076
2077 2005-02-11  Murray Cumming  <murrayc@murrayc.com>
2078
2079         * docs/website/doc.shtml: Fix typo in url for reference docs. Found by
2080         James Lin.
2081
2082 2005-02-06  Murray Cumming  <murrayc@murrayc.com>
2083
2084         temp_slot_list::begin(), end(): Actually return the iterators.
2085
2086 2005-02-06  Murray Cumming  <murrayc@murrayc.com>
2087
2088         * sigc++/signal_base.h: temp_slot_list::begin(), end(): Actually
2089         return the iterators.
2090
2091 2005-02-04  Neal E. Coombes  <nealc@trdlnk.com>
2092
2093         Add temp_slot_list struct to facilitate allowing new connections to a
2094
2095         2005-02-03  Neal E. Coombes <nealc@trdlnk.com>
2096
2097         * sigc++/signal_base.h: Add temp_slot_list struct to facilitate
2098         allowing new connections to a signal during an emittion without
2099         affecting that emittion.
2100         * sigc++/macros/signal.h.m4: Use the new struct temp_slot_list
2101         to
2102         prevent connections made during an emittion from being called in
2103         the
2104         same emittion (which has the potential of causing things like
2105         infinite loops).  This guarantees an emittion will be finite, as
2106         well
2107         as maintaining any order of emittion guarantees that may have
2108         already
2109         been in place.
2110
2111 2005-02-02  Murray Cumming  <murrayc@src.gnome.org>
2112
2113         Updated NEWS
2114
2115 2005-02-02  Murray Cumming  <murrayc@src.gnome.org>
2116
2117         Increase version
2118
2119 2005-02-02  Murray Cumming  <murrayc@src.gnome.org>
2120
2121         Reenabled tests
2122
2123 2005-02-01  Murray Cumming  <murrayc@murrayc.com>
2124
2125         Add sigc::var<>() documentation, from Roger Ferrer Ibáñez in bug
2126
2127 2005-02-01  Murray Cumming  <murrayc@murrayc.com>
2128
2129         * sigc++/adapators/macros/base.h.m4: Add sigc::var<>() documentation,
2130         from Roger Ferrer Ibáñez in bug #149483.
2131
2132 2005-02-01  Murray Cumming  <murrayc@murrayc.com>
2133
2134         In the template specializations of visit_each(): As before, specify the
2135
2136 2005-02-01  Murray Cumming  <murrayc@murrayc.com>
2137
2138         * sigc++/adaptors/macros/compose.h.m4: In the template specializations
2139         of visit_each(): As before, specify the specific other template
2140         specializations of visit_each that we use. Needed by AIX.
2141         * tests/Makefile.am: Reenabled most tests, because AIX can now
2142         build them.
2143
2144 2005-02-01  Murray Cumming  <murrayc@murrayc.com>
2145
2146         [murrayc@localhost libsigc++2]$ more ChangeLog 2005-02-01  Murray Cumming  <murrayc@murrayc.com>
2147
2148         * sigc++/visit_each.h: visit_each_type(): Specify the specific
2149         template specialization of visit_each<>() to use. The AIX compiler,
2150         and possibly the Tru64 compiler, need this extra hint.
2151
2152 2005-02-01  Murray Cumming  <murrayc@murrayc.com>
2153
2154         Define bind_functor::operator() inline because the AIX compiler/linker
2155
2156 2005-02-01  Murray Cumming  <murrayc@murrayc.com>
2157
2158         * bind.h.m4: Define bind_functor::operator() inline because the AIX
2159         compiler/linker sometimes fails to find it when it is defined
2160         outside of the class.
2161
2162 2005-02-01  Murray Cumming  <murrayc@murrayc.com>
2163
2164         2.0.8:
2165
2166 2005-01-30  Murray Cumming  <murrayc@murrayc.com>
2167
2168         * sigc++/type_traits.h: is_base_and_derived: Added
2169         avoid_gcc3_warning_(), to avoid an incorrect warning when using
2170         g++ 3.3.5
2171
2172 2005-01-30  Murray Cumming  <murrayc@murrayc.com>
2173
2174         is_base_and_derived: Added avoid_gcc3_warning_(), to avoid an incorrect
2175
2176 2005-01-30  Murray Cumming  <murrayc@murrayc.com>
2177
2178         * sigc++/type_traits.h: is_base_and_derived: Added
2179         avoid_gcc3_warning_(), to avoid an incorrect warning when using
2180         g++ 3.3.5
2181
2182 2005-01-30  Liza Klerck  <liza@trdlnk.com>
2183
2184         Add a sigc:: namespace prefix to the nested use of visit_each(), to avoid
2185
2186 2005-01-28  Liza Klerck   <liza@trdlnk.com>
2187
2188         * sigc++/functors/macros/mem_fun.h.m4: Add a sigc:: namespace
2189         prefix to the nested use of visit_each(), to avoid ambiguity when
2190         using 2 versions of the libsigc++ API inside different namespace.
2191
2192 2005-01-27  Murray Cumming  <murrayc@murrayc.com>
2193
2194         Add a sigc:: namespace prefix to the nested use of visit_each(), to avoid
2195
2196 2005-01-27  Murray Cumming  <murrayc@murrayc.com>
2197
2198         * sigc++/adaptors/macros/adaptor_trait.h.m4: Add a sigc:: namespace
2199         prefix to the nested use of visit_each(), to avoid ambiguity when
2200         using 2 versions of the libsigc++ API inside different namespace,
2201         which is not very advisable anyway. Bug #165222 from
2202         liza at trdlnk.com.
2203
2204 2005-01-26  Murray Cumming  <murrayc@src.gnome.org>
2205
2206         Increased version
2207
2208 2005-01-25  Murray Cumming  <murrayc@src.gnome.org>
2209
2210         Updated NEWS
2211
2212 2005-01-24  Cedric Gustin  <cedric.gustin@swing.be>
2213
2214         Moved the SIGC_USING_STD macro definition out of the SIGC_CONFIGURE
2215
2216         2005-01-24  Cedric Gustin <cedric.gustin@swing.be>
2217
2218         * sigc++config.h.in : Moved the SIGC_USING_STD macro definition
2219         out of the SIGC_CONFIGURE section. We also need it for MSVC.
2220         * MSVC_Net2003/.cvsignore : Added .def and .aps files
2221         * MSVC_Net2003/Makefile.am: Rewrote rule for local copy of
2222         sigc++config.h (required for 'make distcheck').
2223         * MSVC_Net2003/libsigc++2_msvcNet2003.sln: Added test_retype and
2224         test_disconnect_during_emit tests.
2225         * MSVC_Net2003/tests/test_disconnect_during_emit/*,
2226         MSVC_Net2003/tests/test_retype/*: Initial commit.
2227
2228 2005-01-21  Murray Cumming  <murrayc@murrayc.com>
2229
2230         Disabled the test_accumulator, test_bind, and test_compose tests, and part
2231
2232 2005-01-21  Murray Cumming  <murrayc@murrayc.com>
2233
2234         * tests/: Disabled the test_accumulator, test_bind, and test_compose
2235         tests, and part of test_mem_fun because the AIX xlC compiler can not
2236         build them, but it can still do most things, including the examples.
2237         See the comments in tests/Makefile.am.
2238
2239 2005-01-21  Murray Cumming  <murrayc@murrayc.com>
2240
2241         non-member operator()(): Specify the extra nil arguments in the templated
2242
2243 2005-01-21  Murray Cumming  <murrayc@murrayc.com>
2244
2245         * sigc++/adaptors/bind.h.m4: non-member operator()(): Specify the
2246         extra nil arguments in the templated class name prefix. Oddly, the
2247         AIX xlC compiler says that the type of the first parameter does not
2248         match the template if you don't do this.
2249
2250 2005-01-21  Murray Cumming  <murrayc@murrayc.com>
2251
2252         is_base_and_derived struct: Move the is_base_class_() functions out of the
2253
2254 2005-01-21  Murray Cumming  <murrayc@murrayc.com>
2255
2256         * sigc++/type_traits.h: is_base_and_derived struct: Move the
2257         is_base_class_() functions out of the inner class, because the AIX
2258         xlC compiler does not like that - see the comments in the code.
2259         * sigc++/adaptors/bind.h.m4: Add the extra nil template types to
2260         the template specializations, as in slot and signal.
2261
2262 2005-01-21  Murray Cumming  <murrayc@murrayc.com>
2263
2264         slot and signal template specialization for various numbers of template
2265
2266 2005-01-21  Murray Cumming  <murrayc@murrayc.com>
2267
2268         * sigc++/functors/macros/slot.h.m4, sigc++/macros/signal.h.m4:
2269         slot and signal template specialization for
2270         various numbers of template args: In the class slot line, specify
2271         all the remaining template types as null, instead of expecting the
2272         compiler to guess them in itself. This partly fixes the build on
2273         AIX with the xlC compiler. Bug #164685.
2274
2275 2005-01-19  Murray Cumming  <murrayc@murrayc.com>
2276
2277         struct is_base_and_derived: Make the test inner struct a friend, so that
2278
2279 2005-01-19  Murray Cumming  <murrayc@murrayc.com>
2280
2281         * sigc++/type_traits: struct is_base_and_derived: Make the test inner
2282         struct a friend, so that it can use the big inner struct. This is
2283         required by the Tru64 compiler.
2284         * sigc++/adaptors/lambda/base.h: Put the unwrap_lambda_value()
2285         definitions at the top, because Tru64 (understandably) needs them to
2286         be declared before use.
2287
2288 2005-01-19  Murray Cumming  <murrayc@murrayc.com>
2289
2290         Added cxx_std.m4, with a test copied from glibmm/scripts/cxx_std.m4 to
2291
2292 2005-01-19  Murray Cumming  <murrayc@murrayc.com>
2293
2294         * scripts/: Added cxx_std.m4, with a test copied from
2295         glibmm/scripts/cxx_std.m4 to check if the compiler has the std::
2296         namespace.
2297         * sigcconfig.h: #undef the new #define and add SIGC_USING_STD(),
2298         like GLIBMM_USING_STD, to put stuff in the std:: namespace when it
2299         is not there already,
2300         * configure.in: Used the new test.
2301         * tests/*: Uses SIG_USING_STD() for every std:: thing that we use.
2302         This is needed by the Tru64 and HP-UX compilers when using their
2303         defaults.
2304
2305 2005-01-19  Murray Cumming  <murrayc@murrayc.com>
2306
2307         Added cxx_std.m4, with a test copied from glibmm/scripts/cxx_std.m4 to
2308
2309 2005-01-19  Murray Cumming  <murrayc@murrayc.com>
2310
2311         * scripts/: Added cxx_std.m4, with a test copied from
2312         glibmm/scripts/cxx_std.m4 to check if the compiler has the std::
2313         namespace.
2314         * sigcconfig.h: #undef the new #define and add SIGC_USING_STD(),
2315         like GLIBMM_USING_STD, to put stuff in the std:: namespace when it
2316         is not there already,
2317         * configure.in: Used the new test.
2318         * tests/*: Uses SIG_USING_STD() for every std:: thing that we use.
2319         This is needed by the Tru64 and HP-UX compilers when using their
2320         defaults.
2321
2322 2005-01-19  Murray Cumming  <murrayc@murrayc.com>
2323
2324         AC_INIT(): Provide the extra tarball name parameter, so that it does not
2325
2326 2005-01-19  Murray Cumming  <murrayc@murrayc.com>
2327
2328         * configure.in: AC_INIT(): Provide the extra tarball name parameter,
2329         so that it does not create a libsigc--- tarball.
2330
2331 2005-01-19  Murray Cumming  <murrayc@murrayc.com>
2332
2333         AC_INT(): Use libsigc++ instead of sigc++, attempting to get the correct
2334
2335 2005-01-19  Murray Cumming  <murrayc@murrayc.com>
2336
2337         * configure.in: AC_INT(): Use libsigc++ instead of sigc++, attempting
2338         to get the correct tarball name.
2339
2340 2005-01-18  Murray Cumming  <murrayc@murrayc.com>
2341
2342         Used the autoconf 2.93 and AM_INIT_AUTOMAKE() technique to specify ustar
2343
2344 2005-01-18  Murray Cumming  <murrayc@murrayc.com>
2345
2346         * configure.in: Used the autoconf 2.93 and AM_INIT_AUTOMAKE()
2347         technique to specify ustar format for the tarball, to prevent files
2348         with long file names from appearing at the top of the tarball.
2349         Based on the same fix in gtkmm 2.6.
2350
2351 2005-01-18  Murray Cumming  <murrayc@murrayc.com>
2352
2353         Specify the base class when using the rep_ member variable. This stops the
2354
2355 2005-01-18  Murray Cumming  <murrayc@murrayc.com>
2356
2357         * sigc++/functors/macros/slot_h.m4: Specify the base class when
2358         using the rep_ member variable. This stops the HP-UX aCC compiler
2359         from saying that a Nonstatic member  is referenced in a nested class,
2360         local class or static member initializer. Bug #150719.
2361
2362 2005-01-18  Murray Cumming  <murrayc@murrayc.com>
2363
2364         Bug #159597 - patch from e97_far at e.kth.se to replace C-style casts with
2365
2366 2005-01-18  Murray Cumming  <murrayc@murrayc.com>
2367
2368         * Bug #159597 - patch from e97_far at e.kth.se to replace C-style
2369         casts with reinterpret_cast<> and static_cast<> to avoid warnings.
2370
2371 2005-01-17  Murray Cumming  <murrayc@murrayc.com>
2372
2373         Specifying html/index.html instead of just the html directory as a target
2374
2375 2005-01-17  Murray Cumming  <murrayc@murrayc.com>
2376
2377         * docs/manual/Makefile.am: Specifying html/index.html instead of
2378         just the html directory as a target seems to fix distcheck problems.
2379         I can also now confirm that the install works on solaris, when using
2380         gmake, though not when using make.
2381
2382 2005-01-17  Murray Cumming  <murrayc@murrayc.com>
2383
2384         Add built files to DISTCLEANFILES to fix the distcheck. Specify in paths,
2385
2386 2005-01-17  Murray Cumming  <murrayc@murrayc.com>
2387
2388         * MSVC_Net2004/Makefile.am: Add built files to DISTCLEANFILES to fix
2389         the distcheck.
2390         * docs/reference/Makefile.am, manual/Makefile.am: Specify  in
2391         paths, to fix distcheck of the manual, and maybe fix install problems
2392         on Solaris.
2393
2394 2005-01-11  Murray Cumming  <murrayc@murrayc.com>
2395
2396         Updated the text about binary packages. Link to the 2.0 documentation
2397
2398 2005-01-11  Murray Cumming  <murrayc@murrayc.com>
2399
2400         * docs/website/stable.html: Updated the text about binary packages.
2401         * docs/website/docs.html: Link to the 2.0 documentation instead of the
2402         1.2 documentation.
2403
2404 2005-01-11  GregSchussman  <schussman@slac.stanford.edu>
2405
2406         Clean up punctuation, make definitions complete sentences, and add
2407
2408 2004-12-17  GregSchussman  <schussman@slac.stanford.edu>
2409
2410         * glossary.shtml: Clean up punctuation, make definitions complete
2411         sentences, and add clarifications for certain definitions according to
2412         what Murray Cumming's suggestions and answers to my questions.
2413         Bug #161580.
2414
2415 2005-01-11  Murray Cumming  <murrayc@murrayc.com>
2416
2417         Added manual, copied from the libsigc++-1.2 cvs module, and updated it for
2418
2419 2005-01-11  Murray Cumming  <murrayc@murrayc.com>
2420
2421         * docs/: Added manual, copied from the libsigc++-1.2 cvs module,
2422         and updated it for the new 2.0 API.
2423
2424 2005-01-11  Murray Cumming  <murrayc@murrayc.com>
2425
2426         Added website, copied from the libsigc++-1.2 cvs module. We will use it
2427
2428 2005-01-11  Murray Cumming  <murrayc@murrayc.com>
2429
2430         * docs/: Added website, copied from the libsigc++-1.2 cvs module.
2431         We will use it from here from now on.
2432
2433 2004-12-12  Cedric Gustin  <cedric.gustin@swing.be>
2434
2435         parse version tags at configure time (for sigc-2.0.rc). New resource file.
2436
2437         2004-12-11  Cedric Gustin <cedric.gustin@swing.be>
2438
2439         * configure.ac : parse version tags at configure time (for
2440         sigc-2.0.rc).
2441         * MSVC_Net2003/sigc-2.0.rc.in : New resource file.
2442         * MSVC_Net2003/Makefile.am: include sigc-2.0.rc in distribution.
2443
2444 2004-12-08  Cedric Gustin  <cedric.gustin@swing.be>
2445
2446         get sigc++config.h from $(top_builddir) instead of $(top_srcdir).
2447
2448         2004-12-08  Cedric Gustin <cedric.gustin@swing.be>
2449
2450         * MSVC_Net2003/Makefile.am: get sigc++config.h from $(top_builddir)
2451         instead of $(top_srcdir).
2452
2453 2004-12-08  Cedric Gustin  <cedric.gustin@swing.be>
2454
2455         copy sigc++config.h from $(top_srcdir) at build time. sigc++config.h
2456
2457         2004-12-08  Cedric Gustin <cedric.gustin@swing.be>
2458
2459         * MSVC_Net2003/Makefile.am: copy sigc++config.h from $(top_srcdir)
2460         at build time. sigc++config.h removed from CVS.
2461
2462 2004-12-08  Cedric Gustin  <cedric.gustin@swing.be>
2463
2464         Renamed libsigc++ target to sigc-2.0d.dll (Debug) and sigc-2.0.dll
2465
2466         2004-12-08  Cedric Gustin <cedric.gustin@swing.be>
2467
2468         * MSVC_Net2003/*/*.vcproj: Renamed libsigc++ target to
2469         sigc-2.0d.dll (Debug) and sigc-2.0.dll (Release). Added
2470         $(SolutionDir) and $(SolutionDir)\.. to "Additional Include
2471         Directories" in tests projects.
2472         * sigc++config.h.in: Rewrote dllexport/dllimport macros for
2473         MSVC, for better consistency with glibmm/gtkmm.
2474         * MSVC_Net2003/Makefile.am: copy sigc++config.h from $(top_srcdir)
2475         at build time.
2476
2477 2004-11-27  Murray Cumming  <murrayc@murrayc.com>
2478
2479         Revert the AC_PROG_LIBTOOL change, so that this builds with actually
2480
2481 2004-11-27  Murray Cumming  <murrayc@murrayc.com>
2482
2483         * configure.in: Revert the AC_PROG_LIBTOOL change, so that this builds
2484         with actually released libtool versions, and in jhbuild, so that it
2485         gets testing.
2486
2487 2004-11-06  Martin Schulze  <mschulze@cvs.gnome.org>
2488
2489         Make catcher_ member public so that it can be accessed by visit_each()
2490
2491 2004-11-06  Martin Schulze  <mschulze@cvs.gnome.org>
2492
2493         * sigc++/adaptors/macros/exception_catch.h.m4: Make catcher_
2494         member
2495         public so that it can be accessed by visit_each() (bug reported
2496         on
2497         ml by Philip Langdale <plangdale@vmware.com>).
2498
2499 2004-10-24  Martin Schulze  <mschulze@cvs.gnome.org>
2500
2501         Link with the "multithreaded DLL" runtime libraries and enable RTTI for
2502
2503 2004-10-24  Martin Schulze  <mschulze@cvs.gnome.org>
2504
2505         *
2506         MSVC_Net2003/*/*.vcproj: Link with the "multithreaded DLL"
2507         runtime
2508         libraries and enable RTTI for the MSVC build
2509         (patch from Timothy M. Shead <tshead@k-3d.com>).
2510         * MSVC_Net2003/*/.cvsignore: Hide generated build files from cvs
2511         (patch from Timothy M. Shead <tshead@k-3d.com>).
2512
2513 2004-10-12  Martin Schulze  <mschulze@src.gnome.org>
2514
2515         Update ChangeLog (add '2.0.6:').
2516
2517 2004-10-12  Martin Schulze  <mschulze@cvs.gnome.org>
2518
2519         Fix project files to compile out-of-the-box and add dummy file so that .cc
2520
2521 2004-10-12  Martin Schulze  <mschulze@cvs.gnome.org>
2522
2523         * MSVC_Net2003/*/*.vcproj, MSVC_Net2003/blank.cpp: Fix project
2524         files
2525         to compile out-of-the-box and add dummy file so that .cc files
2526         get
2527         recognized as c++ code files (patch from Timothy M. Shead).
2528
2529 2004-10-12  Martin Schulze  <mschulze@cvs.gnome.org>
2530
2531         If SIGC_NEW_DELETE_IN_LIBRARY_ONLY is defined, implement
2532
2533         2004-10-10  Martin Schulze <mschulze@cvs.gnome.org>
2534
2535         * sigc++/signal_base.{h,cc}, sigc++/functors/slot_base.{h,cc},
2536         sigc++/functors/macros/slot.h.m4: If
2537         SIGC_NEW_DELETE_IN_LIBRARY_ONLY
2538         is defined, implement signal_base::operator new/delete and
2539         slot_rep::operator new/delete (suggested by Timothy M. Shead).
2540         Remove old work-around from 2004-10-02 since it didn't work.
2541
2542 2004-10-07  Martin Schulze  <mschulze@cvs.gnome.org>
2543
2544         Update for libtool 1.5a (with support for Intel C++). Remove bogus
2545
2546         2004-10-07  Martin Schulze <mschulze@cvs.gnome.org>
2547
2548         * configure.ac: Update for libtool 1.5a (with support for Intel C++).
2549         * MSVC_Net2003/sigc++config.h: Remove bogus '#define'
2550         (reported by Timothy M. Shead <tshead@k-3d.com>).
2551
2552 2004-10-02  Martin Schulze  <mschulze@cvs.gnome.org>
2553
2554         Bump version number to 2.0.6. Add ChangeLog summary for version 2.0.6.
2555
2556         2004-10-02  Martin Schulze <mschulze@cvs.gnome.org>
2557
2558         * configure.ac: Bump version number to 2.0.6.
2559         * NEWS: Add ChangeLog summary for version 2.0.6.
2560
2561 2004-10-02  Martin Schulze  <mschulze@src.gnome.org>
2562
2563         Update tests/.cvsignore (Martin)
2564
2565 2004-10-02  Martin Schulze  <mschulze@cvs.gnome.org>
2566
2567         Rename (typed_)slot_rep::detach to (typed_)slot_rep::destroy. Call the
2568
2569         2004-10-02  Martin Schulze <mschulze@cvs.gnome.org>
2570
2571         * sigc++/functors/slot_base.{h,cc},
2572         sigc++/functors/macros/slot.h.m4:
2573         Rename (typed_)slot_rep::detach to (typed_)slot_rep::destroy.
2574         Call the dtor of the functor stored in typed_slot_rep from
2575         destroy().
2576         A cleaner solution would be to add an additional "virtual"
2577         function
2578         that calls 'delete' or a real virtual dtor. However, this would
2579         be
2580         less efficient and might break the ABI. (Fixes #152323.)
2581
2582 2004-10-02  Martin Schulze  <mschulze@cvs.gnome.org>
2583
2584         Define and use new macro SIGC_NEW_DELETE_IN_LIBRARY_ONLY to ABI-compatibly
2585
2586         2004-10-02  Martin Schulze <mschulze@cvs.gnome.org>
2587
2588         * sigc++config.h.in, MSVC_Net2003/sigc++config.h,
2589         sigc++/signal_base.cc, sigc++/functors/slot_base.{h,cc},
2590         sigc++/functors/macros/slot.h.m4: Define and use new macro
2591         SIGC_NEW_DELETE_IN_LIBRARY_ONLY to ABI-compatibly move
2592         all calls to new and delete into non-inline library code.
2593
2594 2004-09-26  Martin Schulze  <mschulze@cvs.gnome.org>
2595
2596         Add a missing template keyword in the definition of
2597
2598         2004-09-26  Martin Schulze <mschulze@cvs.gnome.org>
2599
2600         * sigc++/adaptors/lambda/macros/group.h.m4: Add a missing
2601         template keyword in the definition of deduce_result_type::type
2602         (hopefully fixes #152327).
2603
2604 2004-09-26  Martin Schulze  <mschulze@cvs.gnome.org>
2605
2606         Use correct bound_mem_functor variants for const (volatile) methods (fixes
2607
2608         2004-09-26  Martin Schulze <mschulze@cvs.gnome.org>
2609
2610         * sigc++/macros/object_slot.h.m4: Use correct bound_mem_functor
2611         variants for const (volatile) methods (fixes #148744).
2612
2613 2004-09-01  Martin Schulze  <mschulze@cvs.gnome.org>
2614
2615         Correct link to lambda module.
2616
2617         2004-09-01  Martin Schulze <mschulze@cvs.gnome.org>
2618
2619         * docs/index.html: Correct link to lambda module.
2620
2621 2004-09-01  Martin Schulze  <mschulze@src.gnome.org>
2622
2623         update .cvsignore
2624
2625 2004-09-01  Martin Schulze  <mschulze@cvs.gnome.org>
2626
2627         Update compatibility section.
2628
2629         2004-09-01  Martin Schulze <mschulze@cvs.gnome.org>
2630
2631         * README: Update compatibility section.
2632
2633 2004-09-01  Martin Schulze  <mschulze@cvs.gnome.org>
2634
2635         2.0.5:
2636
2637         2004-09-01  Martin Schulze <mschulze@cvs.gnome.org>
2638
2639         * MSVC_Net2003/Makefile.am: Add sigc++config.h to EXTRA_DIST.
2640         * configure.ac: Bump version number to 2.0.5.
2641         * NEWS: Add ChangeLog summary for version 2.0.5.
2642
2643 2004-08-21  Martin Schulze  <mschulze@cvs.gnome.org>
2644
2645         Use sigc::var("\n") instead of sigc::ref("\n"). Comment out the affected
2646
2647         2004-08-21  Martin Schulze <mschulze@cvs.gnome.org>
2648
2649         * tests/test_lambda.cc: Use sigc::var("\n") instead of
2650         sigc::ref("\n").
2651         Comment out the affected lines, nevertheless.
2652         Sun FORTE and Compaq C++ can handle neither sigc::ref("\n") nor
2653         sigc::var("\n"). I see more chances fixing sigc::var("\n").
2654         * sigc++/adaptors/lambda/macros/base.h.m4: Add a comment about a
2655         possible work around for sigc::var("\n") compiler problems.
2656         * tests/test_compatibility.cc: Remove a 'const' keyword that
2657         prevents
2658         the test case from compiling with the Sun FORTE.
2659         * tests/test_trackable.cc: Remove a 'virtual' keyword and an
2660         unused
2661         variable to avoid compiler warnings.
2662         * NEWS: Add ChangeLog summary for version 2.0.4.
2663
2664 2004-08-09  Murray Cumming  <murrayc@src.gnome.org>
2665
2666         tiny ChangeLog fix
2667
2668 2004-08-04  James Lin  <slimjimmy@mail.com>
2669
2670         Added SIGC_API qualifier to all externally-visible non-template
2671
2672         2004-08-03  James Lin <slimjimmy@mail.com>
2673
2674         * Added SIGC_API qualifier to all externally-visible
2675         non-template
2676         classes/structs.
2677         * Added #include <sigc++config.h> to the files that use
2678         SIGC_API.
2679         * Added empty SIGC_API definition to sigc++config.h.in for
2680         non-MSVC
2681         compilers.  I'm not sure if this is the right place to put this
2682         (probably not).
2683         * Added MSVC-specific sigc++config.h to the MSVC project
2684         directory.
2685         (The comment in it probably should be edited.)
2686         * Changed MSVC project settings to output a multi-threaded DLL,
2687         set
2688         the include paths to work (hopefully) out-of-the-box.  Disabled
2689         precompiled headers, since they just complicate things and
2690         shouldn't be necessary for such a relatively project.
2691
2692 2004-08-03  James Lin  <slimjimmy@mail.com>
2693
2694         Added SIGC_API qualifier to all externally-visible non-template
2695
2696         2004-08-03  James Lin <slimjimmy@mail.com>
2697
2698         * Added SIGC_API qualifier to all externally-visible
2699         non-template
2700         classes/structs.
2701         * Added #include <sigc++config.h> to the files that use
2702         SIGC_API.
2703         * Added empty SIGC_API definition to sigc++config.h.in for
2704         non-MSVC
2705         compilers.  I'm not sure if this is the right place to put this
2706         (probably not).
2707         * Added MSVC-specific sigc++config.h to the MSVC project
2708         directory.
2709         (The comment in it probably should be edited.)
2710         * Changed MSVC project settings to output a multi-threaded DLL,
2711         set
2712         the include paths to work (hopefully) out-of-the-box.  Disabled
2713         precompiled headers, since they just complicate things and
2714         shouldn't be necessary for such a relatively project.
2715
2716 2004-08-01  Martin Schulze  <mschulze@cvs.gnome.org>
2717
2718         Remove type_trait<>::instance() (was unimplemented and unused; caused
2719
2720         2004-08-01  Martin Schulze <mschulze@cvs.gnome.org>
2721
2722         * sigc++/type_traits.h: Remove type_trait<>::instance()
2723         (was unimplemented and unused; caused problems with the MSVC).
2724
2725 2004-07-23  Martin Schulze  <mschulze@cvs.gnome.org>
2726
2727         Fix typo concerning distribution of libsigc++-2.0.spec. Mention our
2728
2729         2004-07-23  Martin Schulze <mschulze@cvs.gnome.org>
2730
2731         * Makefile.am: Fix typo concerning distribution of
2732         libsigc++-2.0.spec.
2733         * AUTHORS: Mention our contributors for platforms Sun FORTE and
2734         Intel C++.
2735
2736 2004-07-15  Martin Schulze  <mschulze@cvs.gnome.org>
2737
2738         Don't call operator()() in sun_forte_workaround(); rather copy
2739
2740         2004-07-15  Martin Schulze <mschulze@cvs.gnome.org>
2741
2742         * *.h.m4: Don't call operator()() in sun_forte_workaround(); rather copy
2743         operator()(). Calling operator()() makes a copy of the arguments causing
2744         wrong results if an argument type is a reference. Hopefully fixes #147311.
2745
2746 2004-07-15  Martin Schulze  <mschulze@cvs.gnome.org>
2747
2748         Break "std::cout << [expr] << a << std::endl;" into "std::cout << [expr];
2749
2750         2004-07-15  Martin Schulze <mschulze@cvs.gnome.org>
2751
2752         * tests/test_lambda.cc: Break "std::cout << [expr] << a << std::endl;"
2753         into "std::cout << [expr]; std::cout << a << std::endl;".
2754         I hope this fixes #147313 where the right values for "[expr]" but wrong
2755         values for "a" were written to std::cout for some compiler with optimizations
2756         turned off.
2757
2758 2004-07-15  Martin Schulze  <mschulze@cvs.gnome.org>
2759
2760         Correct return type deduction of lambda expressions in
2761
2762         2004-07-15  Martin Schulze <mschulze@cvs.gnome.org>
2763
2764         * sigc++/adaptors/lambda/macros/operator.h.m4: Correct return type deduction
2765         of lambda expressions in lambda_operator*::operator()(). Might be related to
2766         bug #147313.
2767         * sigc++/adaptors/lambda/macros/group.h.m4: Use m4 macro _P_().
2768
2769 2004-07-15  Martin Schulze  <mschulze@cvs.gnome.org>
2770
2771         Add configure check SIGC_OPERATOR_OVERLOAD_AMBUGUITY for a SUN FORTE
2772
2773         2004-07-15  Martin Schulze <mschulze@cvs.gnome.org>
2774
2775         * scripts/cxx.m4, sigc++config.h.in, configure.ac,
2776         sigc++/adaptors/lambda/macros/operator.h.m4, tests/test_lambda.cc:
2777         Add configure check SIGC_OPERATOR_OVERLOAD_AMBUGUITY for a SUN FORTE
2778         compiler problem (bug #147391). Use it to decide whether the lambda
2779         action operators may be overloaded (not doing so restricts the API slightly).
2780         * sigc++/adaptors/lambda/macros/operator.h.m4: Add some doxygen comments
2781         and remove attic code.
2782         * sigc++/adaptors/lambda/macros/base.h.m4:
2783         Add templates unwrap_lambda_type and unwrap_lambda_value() to support
2784         the non-overloaded lambda action operators. Also add some doxygen comments
2785         and remove attic code.
2786         * sigc++/adaptors/lambda/macros/group.h.m4: Fix a bug that resulted in
2787         gargabe values being passed on to the functor contained in the group adaptor
2788         (partly fixes #147313).
2789
2790 2004-07-11  Martin Schulze  <mschulze@cvs.gnome.org>
2791
2792         Split SIGC_CXX_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD into
2793
2794         2004-07-11  Martin Schulze <mschulze@cvs.gnome.org>
2795
2796         * scripts/cxx.m4, sigc++config.h.in, configure.ac, *.h.m4:
2797         Split SIGC_CXX_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD
2798         into SIGC_CXX_GCC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD
2799         and SIGC_CXX_MSVC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD.
2800         Remove LIBSIGC_TEMPLATE_PREFIX. Add template keyword to
2801         SIGC_WORKAROUND_OPERATOR_PARENTHESES depending on the configure
2802         checks.
2803         Should fix the compiler problems with MSVC.
2804
2805 2004-07-11  Martin Schulze  <mschulze@cvs.gnome.org>
2806
2807         Use sigc::ptr_fun instead of std::ptr_fun. (fixes bug #144846)
2808
2809         2004-07-11  Martin Schulze <mschulze@cvs.gnome.org>
2810
2811         * examples/hello_world.cc: Use sigc::ptr_fun instead of
2812         std::ptr_fun.
2813         (fixes bug #144846)
2814
2815 2004-07-11  Eric Bourque  <ericb@computer.org>
2816
2817         new file patched generate spec file ignore generated file (Martin Schulze)
2818
2819         2004-07-11  Eric Bourque <ericb@computer.org>
2820
2821         * libsigc++-2.0.spec.in: new file
2822         * configure.ac : patched generate spec file
2823         * .cvsignore: ignore generated file (Martin Schulze)
2824         * Makefile.am: distribute spec file (Martin Schulze)
2825
2826 2004-07-11  Murray Cumming  <murrayc@murrayc.com>
2827
2828         Added some comments. operator=(): Check for self-asignment, though I do
2829
2830 2004-07-11  Murray Cumming  <murrayc@murrayc.com>
2831
2832         * sigc++/connection.cc: Added some comments.
2833         * sigc++/trackable.cc: operator=(): Check for self-asignment, though I
2834         do not know of any actual bug that this fixes. Added some comments.
2835         * sigc++/trackable.h Added some doxygen documentation.
2836
2837 2004-07-09  Murray Cumming  <murrayc@murrayc.com>
2838
2839         Added test_disconnect_during_emit.cc, to prove that this works.
2840
2841 2004-07-09  Murray Cumming  <murrayc@murrayc.com>
2842
2843         * tests/: Added test_disconnect_during_emit.cc, to prove that this
2844         works.
2845
2846 2004-07-08  Murray Cumming  <murrayc@murrayc.com>
2847
2848         foo::operator(int): return a value. The SUN Forte 5.5 compiler complains
2849
2850 2004-07-08  Murray Cumming  <murrayc@murrayc.com>
2851
2852         * sigc++/tests/test_retype_return.cc: foo::operator(int): return a
2853         value. The SUN Forte 5.5 compiler complains about this, as it should.
2854
2855 2004-07-08  Murray Cumming  <murrayc@murrayc.com>
2856
2857         class signal*: Rename the slot_list typedef to slot_list_type, because
2858
2859 2004-07-08  Murray Cumming  <murrayc@murrayc.com>
2860
2861         * sigc++/macros/signal.h.m4: class signal*: Rename the slot_list
2862         typedef to slot_list_type, because there is already a template class
2863         called slot_type. SUN Forte 5.5 seems to complain about this and I am
2864         not surprised. The old typdef is still there for backwards
2865         compatibility, except when building with SUN Forte.
2866
2867 2004-07-07  Murray Cumming  <murrayc@murrayc.com>
2868
2869         SIGC_CXX_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD(): Don't define the
2870
2871 2004-07-07  Murray Cumming  <murrayc@murrayc.com>
2872
2873         * scripts/cxx.m4: SIGC_CXX_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD():
2874         Don't define the SIGC_TEMPLATE_SPECIALIZATOIN_OPERATOR_OVERLOAD C
2875         macro at all if the test fails. This might fix the build on SUN Forte.
2876         * sigc++/functors/macros/mem_fun.h.m4: Default constructor: Initialize
2877         the func_ptr_ member variable. I have no evidence that this solves any
2878         problems, but it worried me.
2879         * sigc++/functors/slot_base.h: operator bool(): Correct documentation,
2880         to use @code instead of <code>
2881         * sigc++/macros/signal.h.m4: Remove the documentation for the
2882         parameters named first and last, because they do not exist.
2883
2884 2004-05-31  Martin Schulze  <mschulze@cvs.gnome.org>
2885
2886         Add '--force'-flag to the 'libtoolize'-command (bug #143425).
2887
2888 2004-05-31  Martin Schulze  <mschulze@cvs.gnome.org>
2889
2890         * autogen.sh: Add '--force'-flag to the 'libtoolize'-command (bug #143425).
2891
2892 2004-05-30  Martin Schulze  <mschulze@cvs.gnome.org>
2893
2894         Bump version number to 2.0.3. Add ChangeLog summary for version 2.0.3. Fix
2895
2896 2004-05-30  Martin Schulze  <mschulze@cvs.gnome.org>
2897
2898         * configure.ac: Bump version number to 2.0.3.
2899         * NEWS: Add ChangeLog summary for version 2.0.3.
2900         * sigc++/macros/signal.h.m4: Fix segfault on emission of unconnected sig
2901         nal.
2902         * tests/test_signal.cc, tests/test_accumulated.cc: Emit unconnected sign
2903         al.
2904         * sigc++/macros/object_slot.h.m4: Suppress compiler warning at
2905         dynamic_cast<>-test (tested by Christof Petig/Timothy M. Shead).
2906
2907 2004-05-23  Martin Schulze  <mschulze@cvs.gnome.org>
2908
2909         Bump version number to 2.0.2. Add ChangeLog summary for version 2.0.2.
2910
2911 2004-05-22  Martin Schulze  <mschulze@cvs.gnome.org>
2912
2913         * configure.ac: Bump version number to 2.0.2.
2914         * NEWS: Add ChangeLog summary for version 2.0.2.
2915
2916 2004-05-20  Martin Schulze  <mschulze@cvs.gnome.org>
2917
2918         If a custom accumulator is specified invoke it on signal emission even if
2919
2920 2004-05-20  Martin Schulze  <mschulze@cvs.gnome.org>
2921
2922         * sigc++/macros/signal.h.m4: If a custom accumulator is specified
2923         invoke it on signal emission even if the signal's slot list is empty.
2924         (This used to be the case in libsigc++-1.2 as pointed out by Timothy.)
2925
2926 2004-05-20  Martin Schulze  <mschulze@cvs.gnome.org>
2927
2928         Suppress compiler warning at dynamic_cast<>-test (suggested by Timothy M.
2929
2930 2004-05-20  Martin Schulze  <mschulze@cvs.gnome.org>
2931
2932         * sigc++/macros/object_slot.h.m4: Suppress compiler warning at
2933         dynamic_cast<>-test (suggested by Timothy M. Shead).
2934
2935 2004-05-01  Martin Schulze  <mschulze@cvs.gnome.org>
2936
2937         Updated for libsigc++-2.0.
2938
2939 2004-05-01  Martin Schulze  <mschulze@cvs.gnome.org>
2940
2941         * README: Updated for libsigc++-2.0.
2942
2943 2004-04-28  Martin Schulze  <mschulze@cvs.gnome.org>
2944
2945         Bump version number to 2.0.1. Add ChangeLog summary for version 2.0.1.
2946
2947 2004-04-27  Martin Schulze  <mschulze@cvs.gnome.org>
2948
2949         * configure.ac: Bump version number to 2.0.1.
2950         * NEWS: Add ChangeLog summary for version 2.0.1.
2951         * sigc++/adaptors/lambda/macros/base.h.m4: Fixed documentation.
2952         * sigc++/adaptors/macros/bind.h.m4: Hide work-arounds from doxygen.
2953         * scripts/cxx.m4, sigc++config.h.in, configure.ac,
2954         sigc++/adaptors/macros/bind.h.m4: Removed configure     check. It
2955         showed that the Apple gcc can also compile the sophisticated version
2956         of the work-around.
2957
2958 2004-04-26  Martin Schulze  <mschulze@cvs.gnome.org>
2959
2960         Modified test for SigC::Object inheritance so that it also works if
2961
2962 2004-04-26  Martin Schulze  <mschulze@cvs.gnome.org>
2963
2964         * sigc++/macros/object_slot.h.m4: Modified test for SigC::Object
2965         inheritance so that it also works if SigC::Object is virtual base.
2966         (Fixes bug 141094 reported by Jonathan Brandmeyer)
2967
2968 2004-04-26  Martin Schulze  <mschulze@cvs.gnome.org>
2969
2970         Updated the configure check. It would probably have succeeded on the
2971
2972 2004-04-26  Martin Schulze  <mschulze@cvs.gnome.org>
2973
2974         * scripts/cxx.m4: Updated the configure check. It would probably
2975         have succeeded on the Apple.
2976
2977 2004-04-26  Martin Schulze  <mschulze@cvs.gnome.org>
2978
2979         Add work-arounds for bind<-1>::deduce_result_type compilation error on
2980
2981 2004-04-26  Martin Schulze  <mschulze@cvs.gnome.org>
2982
2983         * sigc++/adaptors/macros/bind.h.m4: Add work-arounds for
2984         bind<-1>::deduce_result_type compilation error on Apple gcc 3.3.
2985         * scripts/cxx.m4, sigc++config.h.in, configure.ac: Add configure
2986         check for the compilation error above.
2987         * sigc++/adaptors/lambda/macros/operator.h.m4: Replace _A with
2988         _Aa. _A is a reserved keyword on Apple gcc 3.3 (Spundun Bhatt).
2989         (fixes bug #10444 reported by Spundun Bhatt)
2990
2991 2004-04-19  Martin Schulze  <mschulze@cvs.gnome.org>
2992
2993         Fixed serious bug in signal_base::impl(): Only reference a newly created
2994
2995 2004-04-19  Martin Schulze  <mschulze@cvs.gnome.org>
2996
2997         * sigc++/signal_base.cc: Fixed serious bug in signal_base::impl():
2998         Only reference a newly created object (initial reference).
2999         (This fixes bug #140269 reported by Andris.)
3000
3001 2004-04-19  Murray Cumming  <murrayc@murrayc.com>
3002
3003         Updated the operator() template check, because it failed with gcc 3.4
3004
3005 2004-04-19  Murray Cumming  <murrayc@murrayc.com>
3006
3007         * scripts/cxx.m4: Updated the operator() template check, because it
3008         failed with gcc 3.4 (from cvs). Apparently the template keyword can
3009         only be used from another template.
3010
3011 2004-04-12  Martin Schulze  <mschulze@cvs.gnome.org>
3012
3013         Bump version number to 2.0.0. Add ChangeLog summary for version 2.0.0.
3014
3015 2004-04-06  Martin Schulze  <mschulze@cvs.gnome.org>
3016
3017         * configure.ac: Bump version number to 2.0.0.
3018         * NEWS: Add ChangeLog summary for version 2.0.0.
3019         * TODO, AUTHORS: Bring up to date.
3020         * sigc++-2.0.pc.in, Makefile.am: 1.9 -> 2.0
3021         * Added more documentation.
3022
3023 2004-04-10  Murray Cumming  <murrayc@murrayc.com>
3024
3025         Implement blocked() to avoid undefined symbol linker error.
3026
3027 2004-04-10  Murray Cumming  <murrayc@murrayc.com>
3028
3029         * sigc++/connection.[h|cc]: Implement blocked() to avoid undefined
3030         symbol linker error.
3031
3032 2004-04-07  Murray Cumming  <murrayc@murrayc.com>
3033
3034         dist the scripts directory.
3035
3036 2004-04-08  Murray Cumming  <murrayc@murrayc.com>
3037
3038         * dist the scripts directory.
3039
3040 2004-04-06  Martin Schulze  <teebaum@cvs.gnome.org>
3041
3042         Bump version number to 1.9.16. Add ChangeLog summary for version 1.9.16.
3043
3044 2004-04-06  Martin Schulze  <teebaum@cvs.gnome.org>
3045
3046         * configure.ac: Bump version number to 1.9.16.
3047         * NEWS: Add ChangeLog summary for version 1.9.16.
3048
3049 2004-04-02  Murray Cumming  <murrayc@murrayc.com>
3050
3051         Make block() and unblock() always return a value, to fix compiler
3052
3053 2004-04-02  Murray Cumming  <murrayc@murrayc.com>
3054
3055         * sigc++/connection.cc: Make block() and unblock() always return a
3056         value, to fix compiler warnings. Patch from bug #138620 by
3057         Alexander Nedotsukov.
3058
3059 2004-04-02  Murray Cumming  <murrayc@murrayc.com>
3060
3061         * Fix the compile of examples/member_method.cc. Bug #131701 from
3062         Kirill Smelkov. I also made the examples build as part of the regular
3063         build.
3064
3065 2004-04-02  Murray Cumming  <murrayc@murrayc.com>
3066
3067         Remove every undef apart from the one we need, to avoid clashes, because
3068
3069 2004-04-02  Murray Cumming  <murrayc@murrayc.com>
3070
3071         * sigc++config.h.m4: Remove every undef apart from the one we need, to
3072         avoid clashes, because we #include this in a public header.
3073
3074 2004-03-25  Murray Cumming  <murrayc@murrayc.com>
3075
3076         Rename the template_keyword check to template_specialization, because the
3077
3078 2004-03-25  Murray Cumming  <murrayc@murrayc.com>
3079
3080         * scripts/cxx.m4, configure.in, sigc++config.h.in: Rename the
3081         template_keyword check to template_specialization, because the problem
3082         is with or without the keyword.
3083         * sigc++/adaptors/macros/adaptor_trait.h.m4: Define
3084         SIGC_WORKAROUND_OPERATOR_PARENTHESES, which calls either operator() or
3085         sun_forte_workaround() depending on the result of the compiler test.
3086         * many .m4 files: Add sun_forte_workaround methods that call the
3087         operator() methods. Put them in #ifdefs so that only SUN Forte C++
3088         sees them.
3089
3090 2004-03-21  Murray Cumming  <murrayc@murrayc.com>
3091
3092         Fix the sigc++config.h.in disting, to fix make distcheck.
3093
3094 2004-03-22  Murray Cumming  <murrayc@murrayc.com>
3095
3096         * Makefile.am, sigc++/Makfile.am: Fix the sigc++config.h.in disting,
3097         to fix make distcheck.
3098
3099 2004-03-21  Murray Cumming  <murrayc@murrayc.com>
3100
3101         Rename config.h.in to sigc++config.h.in so that gtkmm does not include
3102
3103 2004-03-21  Murray Cumming  <murrayc@murrayc.com>
3104
3105         * Rename config.h.in to sigc++config.h.in so that gtkmm does not
3106         include some other config.h at strange times - fixes a problem in
3107         the gtkmm demos. This should really be in the sigc++ directory, but
3108         that seems to add that as an include path, which causes the STL
3109         headers to include sigc++/signal.h instead of some STL signal.h header.
3110
3111 2004-03-20  Murray Cumming  <murrayc@murrayc.com>
3112
3113         Install the config.h platform-specific header. Report the include path for
3114
3115 2004-03-20  Murray Cumming  <murrayc@murrayc.com>
3116
3117         * Makefile.am: Install the config.h platform-specific header.
3118         * sigc++-2.0.pc.in: Report the include path for config.h
3119
3120 2004-03-19  Murray Cumming  <murrayc@murrayc.com>
3121
3122         Added config.h.in, using autoheader, from which config.h will be
3123
3124 2004-03-20  Murray Cumming  <murrayc@murrayc.com>
3125
3126         * Added config.h.in, using autoheader, from which config.h will be
3127         generated, so we can detect compiler features.
3128         * configure.ac: Added AC_CONFIG_HEADER(config.h) to generate config.h
3129         from config.h.in.
3130         * scripts/cxx.m4: Added this directory and file, with a
3131         SIGC_CXX_TEMPLATE_KEYWORD_OPERATOR_OVERLOAD macro that defines
3132         the SIGC_TEMPLATE_KEYWORD_OPERATOR_OVERLOAD C macro.
3133         * autogen.sh: Added -I scripts to the aclocal call, so that it finds
3134         the m4 macro for configure.ac.
3135         * sigc++/adapators/macros/adaptor_trait.h.m4: Include config.h and
3136         use SIGC_TEMPLATE_KEYOWRD_OPERATOR_OVERLOAD.
3137
3138 2004-03-17  Martin Schulze  <mschulze@cvs.gnome.org>
3139
3140         Don't test making functors from overloaded methods with partial template
3141
3142 2004-03-18  Martin Schulze  <mschulze@cvs.gnome.org>
3143
3144         * tests/test_mem_fun.cc, tests/test_ptr_fun.cc: Don't test
3145         making functors from overloaded methods with partial template
3146         specialization. Not portable among different compilers (SUN FORTE).
3147         * adaptors/macros/apdaptor_trait.h.m4: Only gcc seems to use the
3148         notation A.template operator()<...>(...) => adapt preprocessor check
3149         for #define LIBSIGC_TEMPLATE_PREFIX. TODO: replace with configure check.
3150
3151 2004-03-13  Murray Cumming  <murrayc@murrayc.com>
3152
3153         slot_iterator_buf::operator*(): Use blocked() and empty() instead of
3154
3155 2004-03-13  Murray Cumming  <murrayc@murrayc.com>
3156
3157         * g++ 3.4 (pre-release) build fixes:
3158         * sigc++/macros/signal.h.m4: slot_iterator_buf::operator*():
3159         Use blocked() and empty() instead of non-existant blocked_and_empty().
3160         * sigc++/functors/macros/mem_fun.h.m4: memfun_functor*::operator()():
3161         Use this->func_ptr_ instead of just func_ptr_.
3162         * sigc++/adaptors/macros/deduce_result_type.h.m4: Use
3163         T_functor::template deduce_result_type<> instead of just
3164         T_functor::deduce_result_type<>.
3165         * sigc++/adaptors/lambda/macros/base.h.m4, operator.h.m4, group.h.m4::
3166         Use template keyword again. operator[](): Use this->value_ instead of
3167         just value_.
3168         * sigc++/adaptors/lambda/macros/bind/m4: Use template keyword, and
3169         this-> again.
3170         * sigc++/adaptors/macros/compose.h.m4, hide.h.m4, bind_return.h.m4,
3171         exception_catch.h.m4:
3172         rettype.h.m4, rettype_return.h.m4: Use template keyword,and this-> again
3173
3174 2004-02-27  Martin Schulze  <teebaum@cvs.gnome.org>
3175
3176         Bump version number to 1.9.15. Add ChangeLog summary for version 1.9.15.
3177
3178 2004-02-27  Martin Schulze  <teebaum@cvs.gnome.org>
3179
3180         * configure.ac: Bump version number to 1.9.15.
3181         * NEWS: Add ChangeLog summary for version 1.9.15.
3182
3183 2004-02-27  Martin Schulze  <teebaum@cvs.gnome.org>
3184
3185         Make the unnumbered slot templates' copy ctors use the copy ctors of the
3186
3187 2004-02-27  Martin Schulze  <teebaum@cvs.gnome.org>
3188
3189         * sigc++/functors/macros/slot.h.m4: Make the unnumbered slot templates'
3190         copy ctors use the copy ctors of the base class. Fixes bug #24698.
3191         * tests/test_slot.cc: Test copy ctor (Bryan Forbes).
3192
3193 2004-02-27  Martin Schulze  <teebaum@cvs.gnome.org>
3194
3195         Bring it up-to-date (use sigc::ref). Make it work with the SUN Forte.
3196
3197 2004-02-27  Martin Schulze  <teebaum@cvs.gnome.org>
3198
3199         * tests/type_functor_trait.cc: Bring it up-to-date (use sigc::ref).
3200         Make it work with the SUN Forte.
3201
3202 2004-02-24  Martin Schulze  <teebaum@cvs.gnome.org>
3203
3204         Make is_base_and_derived<> work with the SUN Forte.
3205
3206 2004-02-24  Martin Schulze  <teebaum@cvs.gnome.org>
3207
3208         * sigc++/type_traits.h: Make is_base_and_derived<> work with the SUN Forte.
3209
3210 2004-02-19  Martin Schulze  <teebaum@cvs.gnome.org>
3211
3212         Make is_base_and_derived<> platform independant. Make lambda_core<> ctors
3213
3214 2004-02-19  Martin Schulze  <teebaum@cvs.gnome.org>
3215
3216         * sigc++/type_traits.h: Make is_base_and_derived<> platform independant.
3217         * sigc++/adaptors/lambda/macros/base.h.m4: Make lambda_core<> ctors
3218         explicit. Remove an unused ctor from lambda_core<T_type, true>.
3219
3220 2004-02-14  Martin Schulze  <teebaum@cvs.gnome.org>
3221
3222         Move some documentation to slot_base.h. Move some documentation to
3223
3224 2004-02-14  Martin Schulze  <teebaum@cvs.gnome.org>
3225
3226         * sigc++/functors/slot_base.h, sigc++/functors/macros/slot.h.m4:
3227         Move some documentation to slot_base.h.
3228         * sigc++/signal_base.h, sigc++/macros/signal.h.m4:
3229         Move some documentation to signal_base.h.
3230
3231         API addition:
3232         * sigc++/functors/macros/slot.h.m4: Add numbered slot# templates.
3233         Make unnumbered slot templates inherit from slot#.
3234
3235         API change:
3236         * sigc++/functors/macros/mem_fun.h.m4: Allow for methods of the object's
3237         base types to be passed into sigc::mem_fun(). (Used to be the case in
3238         libsigc++-1.2).
3239
3240 2004-02-13  Murray Cumming  <murrayc@usa.net>
3241
3242         Create and use a typedef for the destroy_notify callback functions, to
3243
3244 2004-02-13  Murray Cumming  <murrayc@usa.net>
3245
3246         * sigc++/functors/slot_base.[h|cc], sigc++/trackable.[h|cc]: Create
3247         and use a typedef for the destroy_notify callback functions, to avoid
3248         confusion function pointer declaration syntax in the API.
3249
3250 2004-02-13  Murray Cumming  <murrayc@murrayc.com>
3251
3252         * Moved implementation to .cc files:
3253         * sigc++/functors/: Added slot_base.[h|cc] which contains non-template
3254         code that was previsouly in the generated functors/slot.h and
3255         non-generated slot.cc files. All non-inline implementation is now in
3256         the .cc file.
3257         * sigc++/functors/macros/slot.m4: Removed the code that has been moved
3258         to slot_base.[h|cc].
3259         * sigc++/: Added signal_base.[h|cc] which contains non-template code
3260         that was previously in the generated signal.h and non-generated
3261         signal.cc file. All non-inline implementation is now in the .cc file.
3262         * sigc++/macros/signal.m4: Removed the code that ahs been moved to
3263         signal.cc
3264         * sigc++/connector.[h|cc]: method implementation moved to the .cc file.
3265
3266 2004-02-13  Martin Schulze  <teebaum@cvs.gnome.org>
3267
3268         Bump version number to 1.9.14. Add ChangeLog summary for version 1.9.14.
3269
3270 2004-02-13  Martin Schulze  <teebaum@cvs.gnome.org>
3271
3272         * configure.ac: Bump version number to 1.9.14.
3273         * NEWS: Add ChangeLog summary for version 1.9.14.
3274
3275 2004-02-10  Murray Cumming  <murrayc@usa.net>
3276
3277         slot_base: Added operator bool(), needed to check for a slot that is
3278
3279 2004-02-09  Murray Cumming  <murrayc@usa.net>
3280
3281         * sigc++/macros/slot.h.m4: slot_base: Added operator bool(), needed to
3282         check for a slot that is created with the default constructor. This was
3283         present in libsigc++ 1.2 also.
3284
3285 2004-02-06  Murray Cumming  <murrayc@usa.net>
3286
3287         Build the docs directory, by adding it to SUBDIRS. Updated to be more
3288
3289 2004-02-06  Murray Cumming  <murrayc@usa.net>
3290
3291         * Makefile.am: Build the docs directory, by adding it to SUBDIRS.
3292         * docs/Doxyfile.in: Updated to be more glibmm-like.
3293         * Added some @deprecated doxygen bits.
3294         * sigc++/macros/signal.h.m4: Call base constructor from signal_base
3295         constructor - this is an error-as-warning when building gtkmm.
3296
3297 2003-11-30  Martin Schulze  <teebaum@cvs.gnome.org>
3298
3299         Bump version number to 1.9.13. Add ChangeLog summary for version 1.9.13.
3300
3301 2003-11-30  Martin Schulze  <teebaum@cvs.gnome.org>
3302
3303         * configure.ac: Bump version number to 1.9.13.
3304         * NEWS: Add ChangeLog summary for version 1.9.13.
3305         * Makefile.am, MSVC_Net2003/Makefile.am, configure.ac:
3306         Distribute MS .Net project files.
3307         * sigc++/adaptors/macros/[bind,hide].h.m4: Correct and add
3308         documentation. Make hide_functor ctor explicit.
3309
3310 2003-11-30  Martin Schulze  <teebaum@cvs.gnome.org>
3311
3312         Bump version number to 1.9.13. Add ChangeLog summary for version 1.9.13.
3313
3314 2003-11-30  Martin Schulze  <teebaum@cvs.gnome.org>
3315
3316         * configure.ac: Bump version number to 1.9.13.
3317         * NEWS: Add ChangeLog summary for version 1.9.13.
3318         * Makefile.am, MSVC_Net2003/Makefile.am, configure.ac:
3319         Distribute MS .Net project files.
3320         * sigc++/adaptors/macros/[bind,hide].h.m4: Correct and add
3321         documentation. Make hide_functor ctor explicit.
3322
3323 2003-11-11  Martin Schulze  <teebaum@cvs.gnome.org>
3324
3325         Change to zero-based argument index in numbered bind() and hide() overload
3326
3327 2003-11-11  Martin Schulze  <teebaum@cvs.gnome.org>
3328
3329         * sigc++/adaptors/macros/[bind,hide].h.m4: Change to zero-based
3330         argument index in numbered bind() and hide() overload
3331         (Agreement on the mailing list).
3332         Support binding up to CALL_SIZE arguments with one bind adaptor.
3333         (Requested by joey yandle and others).
3334         Only support binding of multiple arguments in unnumberd overloads
3335         to keep the API simple (Requested by Murray Cumming).
3336         * tests/test_[bind,hide,functor_trait].cc, sigc++/bind.h:
3337         Reflect API changes in compatibility module and test cases.
3338
3339 2003-11-10  Martin Schulze  <teebaum@cvs.gnome.org>
3340
3341         Add unnumbered bind() and hide() overloads to make specifying the argument
3342
3343 2003-11-10  Martin Schulze  <teebaum@cvs.gnome.org>
3344
3345         * sigc++/adaptors/macros/[bind,hide].h.m4: Add unnumbered
3346         bind() and hide() overloads to make specifying the argument
3347         position optional (Proposed by Jeff Franks).
3348         * tests/test_[bind,hide].cc: Test unnumbered bind() and hide().
3349         * sigc++/adaptors/macros/adaptor_trait.h.m4:
3350         Change "#ifdef MSVC" to "#ifdef _MSC_VER" (Roel Vanhout).
3351
3352 2003-11-09  Martin Schulze  <teebaum@cvs.gnome.org>
3353
3354         Change functor type in typed_slot_rep to
3355
3356 2003-11-09  Martin Schulze  <teebaum@cvs.gnome.org>
3357
3358         * sigc++/functors/macros/slot.h.m4: Change functor type in
3359         typed_slot_rep to adaptor_trait::adaptor_type<T_functor>
3360         and use explicit function template instantiation in
3361         internal::slot_call::call_it(). Avoids copying of arguments
3362         in call_it() and enables binding of object instances
3363         to class methods through bind() (Reported by Jeff Franks).
3364         * tests/test_bind.cc: Test binding object instances to
3365         class methods through bind().
3366         * sigc++/adaptors/adaptors.h: Include retype[_result].h.
3367         * sigc++/adaptors/macros/adaptor_trait.h.m4:
3368         - Add documentation.
3369         - Mark some c-tors as explicit.
3370         - Remove ununsed operator T_functor&() from adaptor_functor.
3371         * sigc++/adaptors/macros/deduce_result_type.h.m4:
3372         Rewrite parts of the documentation.
3373         * sigc++/adaptors/macros/bind.h.m4: Add documentation.
3374         * sigc++/functors/macros/mem_fun.h.m4: Remove unnecessary
3375         explicit markers. Minor fixes to documentation.
3376         * sigc++/functors/macros/functor_trait.h.m4:
3377         Minor fixes to documentation.
3378
3379 2003-11-04  Martin Schulze  <teebaum@cvs.gnome.org>
3380
3381         Bump version number to 1.9.12. Add ChangeLog summary for version 1.9.12.
3382
3383 2003-10-26  Martin Schulze  <teebaum@cvs.gnome.org>
3384
3385         * configure.ac: Bump version number to 1.9.12.
3386         * NEWS: Add ChangeLog summary for version 1.9.12.
3387
3388 2003-11-03  Martin Schulze  <teebaum@cvs.gnome.org>
3389
3390         Document accumulators. Move slot_iterator_buf into namespace internal.
3391
3392 2003-11-03  Martin Schulze  <teebaum@cvs.gnome.org>
3393
3394         * sigc++/macros/signal.h.m4: Document accumulators.
3395         Move slot_iterator_buf into namespace internal. Since
3396         accumulators have the iterator type as a template argument
3397         there is no need to expose this very internal type.
3398         * sigc++/functors/macros/*.m4: Regroup documentation.
3399         Documentation of the core parts of the library should be
3400         complete by now.
3401
3402 2003-11-02  Martin Schulze  <teebaum@cvs.gnome.org>
3403
3404         Improve documentation of the core parts of the library. Test ptr_fun()
3405
3406 2003-11-02  Martin Schulze  <teebaum@cvs.gnome.org>
3407
3408         * Improve documentation of the core parts of the library.
3409         * tests/test_ptr_fun.cc: Test ptr_fun() with static
3410         member functions.
3411
3412 2003-11-02  Martin Schulze  <teebaum@cvs.gnome.org>
3413
3414         Move all .m4 files into new subdirectories sigc++/[...]/macros. Install
3415
3416 2003-11-02  Martin Schulze  <teebaum@cvs.gnome.org>
3417
3418         * Move all .m4 files into new subdirectories
3419         sigc++/[...]/macros. Install the .m4 files on
3420         "make install" (Reported by Ron Steinke).
3421
3422 2003-11-02  Martin Schulze  <teebaum@cvs.gnome.org>
3423
3424         Move all .m4 files into new subdirectories sigc++/[...]/macros. Install
3425
3426 2003-11-02  Martin Schulze  <teebaum@cvs.gnome.org>
3427
3428         * Move all .m4 files into new subdirectories
3429         sigc++/[...]/macros. Install the .m4 files on
3430         "make install" (Reported by Ron Steinke).
3431
3432 2003-11-02  Martin Schulze  <teebaum@cvs.gnome.org>
3433
3434         Include sigc++/functors/mem_fun.h (Reported by Ron Steinke).
3435
3436 2003-11-01  Martin Schulze  <teebaum@cvs.gnome.org>
3437
3438         * sigc++/[class,method,object]_slot.h.m4: Include
3439         sigc++/functors/mem_fun.h (Reported by Ron Steinke).
3440
3441 2003-11-01  Martin Schulze  <teebaum@cvs.gnome.org>
3442
3443         Add negation operator I have completely overlooked until now. Test
3444
3445 2003-11-01  Martin Schulze  <teebaum@cvs.gnome.org>
3446
3447         * sigc++/adaptors/lambda/operator.h.m4: Add negation
3448         operator I have completely overlooked until now.
3449         * sigc++/tests/test_lambda.cc: Test negation operator.
3450
3451 2003-11-01  Martin Schulze  <teebaum@cvs.gnome.org>
3452
3453         - Use a shorter notation for ..._mem_function variants. - Change order of
3454
3455 2003-11-01  Martin Schulze  <teebaum@cvs.gnome.org>
3456
3457         * sigc++/[class_slot,method_slot,object_slot,hide].h.m4,
3458         sigc++/signal.h.m4, sigc++/functors/mem_fun.h.m4:
3459         - Use a shorter notation for ..._mem_function variants.
3460         - Change order of mem_funcotr<>'s template arguments to
3461         match std::mem_fun_t and to be more consistent with adaptors.
3462         - Use ::sigc::slot's implicit ctor in compatibility module.
3463         * sigc++/adaptors/lambda/operator.h.m4: Change some
3464         lambda action names to match action names in std.
3465
3466         API addition:
3467         * sigc++/adaptors/retype.h.m4: New file adding
3468         adaptor retype.
3469         * sigc++/Makefile.am: Build and distribute new file.
3470         * tests/test_retype.cc: New file testing adaptor retype.
3471         * MSVC_Net2003/tests/test_retype/test_reytype.vcproj,
3472         tests/Makefile.am: Build and distribute new test case.
3473
3474 2003-11-01  Martin Schulze  <teebaum@cvs.gnome.org>
3475
3476         - Use a shorter notation for ..._mem_function variants. - Change order of
3477
3478 2003-11-01  Martin Schulze  <teebaum@cvs.gnome.org>
3479
3480         * sigc++/[class_slot,method_slot,object_slot,hide].h.m4,
3481         sigc++/signal.h.m4, sigc++/functors/mem_fun.h.m4:
3482         - Use a shorter notation for ..._mem_function variants.
3483         - Change order of mem_funcotr<>'s template arguments to
3484         match std::mem_fun_t and to be more consistent with adaptors.
3485         - Use ::sigc::slot's implicit ctor in compatibility module.
3486         * sigc++/adaptors/lambda/operator.h.m4: Change some
3487         lambda action names to match action names in std.
3488
3489         API addition:
3490         * sigc++/adaptors/retype_return.h.m4: New file adding
3491         adaptor retype.
3492         * sigc++/Makefile.am: Build and distribute new file.
3493         * tests/test_retype.cc: New file testing adaptor retype.
3494         * MSVC_Net2003/tests/test_retype/test_reytype.vcproj,
3495         tests/Makefile.am: Build and distribute new test case.
3496
3497 2003-11-01  Martin Schulze  <teebaum@cvs.gnome.org>
3498
3499         New directory containing project files for Visual Studio .Net 2003.
3500
3501 2003-11-01  Martin Schulze  <teebaum@cvs.gnome.org>
3502
3503         * MSVC_Net2003: New directory containing project
3504         files for Visual Studio .Net 2003.
3505         Credits to Roel Vanhout <roel@riks.nl>!
3506
3507 2003-11-01  Martin Schulze  <teebaum@cvs.gnome.org>
3508
3509         Use LIBSIGC_TEMPLATE_PREFIX in explicit function template instantiations.
3510
3511 2003-11-01  Martin Schulze  <teebaum@cvs.gnome.org>
3512
3513         * sigc++/retype.h.m4: Use LIBSIGC_TEMPLATE_PREFIX
3514         in explicit function template instantiations.
3515         * sigc++/type_traits.h: Add template specialization
3516         for arrays (T_type[N]) to disable non-working member
3517         type_trait<T_type[N]>::instance().
3518         * sigc++/visit_each.h: Remove more disturbing
3519         limit_derived_target<>::operator() overloads.
3520         (Should have noticed earlier that they are unnecessary.)
3521         * sigc++/adaptors/deduce_result_type.h.m4,
3522         sigc++/adaptors/lambda/operator.h.m4,
3523         sigc++/functors/functor_trait.h.m4,
3524         tests/test_[bind,compose,exception_catch,hide,lambda].cc:
3525         Completely removed support for typeof(). We don't need
3526         it any more and it is completely non-standard!
3527
3528 2003-10-31  Cedric Gustin  <cedric.gustin@swing.be>
3529
3530         Added test of win32 platform. Commented out AM_DISABLE_SHARED (DLLs are
3531
3532         2003-10-30  Cedric Gustin <cedric.gustin@swing.be>
3533
3534         * configure.ac: Added test of win32 platform. Commented
3535         out AM_DISABLE_SHARED (DLLs are shared libraries).
3536         * sigc++/Makefile.am: added a few LDFLAGS for win32
3537         DLLs.
3538
3539 2003-10-30  Martin Schulze  <teebaum@cvs.gnome.org>
3540
3541         Add SigC::Signal#<>::slot(). Comment out make_slot() work-around. Remove
3542
3543 2003-10-30  Martin Schulze  <teebaum@cvs.gnome.org>
3544
3545         * sigc++/signal.h.m4: Add SigC::Signal#<>::slot().
3546         * sigc++/slot.h.m4: Comment out make_slot() work-around.
3547         * sigc++/adaptors/bind.h.m4: Remove unnecessary brackets
3548         in template argument lists. They are confusing MSVC.
3549         * sigc++/adaptors/*.h.m4, sigc++/adaptors/lambda/*.h.m4:
3550         Use LIBSIGC_TEMPLATE_PREFIX in explicit function
3551         template instantiations.
3552         * sigc++/tests/test_*.cc:
3553         - Include <string> where std::string is used.
3554         - Use double instead of float.
3555
3556 2003-10-27  Martin Schulze  <teebaum@cvs.gnome.org>
3557
3558         Cleanup. Bring it up to date.
3559
3560 2003-10-27  Martin Schulze  <teebaum@cvs.gnome.org>
3561
3562         * sigc++/retype.h.m4: Cleanup.
3563         * TODO: Bring it up to date.
3564
3565 2003-10-26  Martin Schulze  <teebaum@cvs.gnome.org>
3566
3567         Bump version number to 1.9.11. Add ChangeLog summary for version 1.9.11.
3568
3569 2003-10-26  Martin Schulze  <teebaum@cvs.gnome.org>
3570
3571         * configure.ac: Bump version number to 1.9.11.
3572         * NEWS: Add ChangeLog summary for version 1.9.11.
3573
3574 2003-10-26  Martin Schulze  <teebaum@cvs.gnome.org>
3575
3576         Compatiblity module: Move definition of compatiblity classes SigC::SignalN
3577
3578 2003-10-26  Martin Schulze  <teebaum@cvs.gnome.org>
3579
3580         Compatiblity module:
3581         * sigc++/signal.h.m4: Move definition of compatiblity
3582         classes SigC::SignalN to here.
3583         * sigc++/connection.h:
3584         - Add connection::connected().
3585         - Add compatibility typedef SigC::Connection.
3586         * sigc++/bind.h, sigc++/bind_return.h,
3587         sigc++/class_slot.h.m4, sigc++/hide.h.m4,
3588         sigc++/method_slot.h.m4, sigc++/object.h,
3589         sigc++/object_slot.h.m4, sigc++/retype.h.m4,
3590         sigc++/retype_return.h sigc++/slot.h.m4,
3591         sigc++/compatibility.h:
3592         New files to complete compatibility module.
3593         Split content of compatibility.h.m4 among the new files.
3594         * sigc++/compatibility.h.m4: Removed.
3595         * Makefile.am: Build and distribute new files.
3596         * tests/test_compatibility.cc: Test new stuff.
3597
3598         Fixes:
3599         * sigc++/functors/slot.h.m4: Fix copy constructor and
3600         operator=() of slot template.
3601         * sigc++/adaptors/bind.h.m4: Fix deduce_result_type
3602         template specializations. bind<0>() probably compiles
3603         with gcc-3.3, now.
3604
3605 2003-10-25  Martin Schulze  <teebaum@cvs.gnome.org>
3606
3607         Fixes:
3608
3609 2003-10-26  Martin Schulze  <teebaum@cvs.gnome.org>
3610
3611         Fixes:
3612         * sigc++/functors/slot.{cc,h.m4}:
3613         - Fix notification process: don't defer detaching of a
3614         slot from all referred trackables during signal emission!
3615         - Size optimization: replace virtual functions from
3616         struct typed_slot_rep with function pointers in slot_rep
3617         (reduces size of a typical typed_slot_rep instantiation
3618         by 30% !!!).
3619         * tests/test_slot.cc: Test sigc::slot more thoroughly.
3620         * sigc++/functors/mem_fun.h.m4: Fix visit_each().
3621         * sigc++/adaptos/bind_return.h.m4: Add support for
3622         sigc::ref().
3623         * tests/test_bind_return.cc: Use sigc::ref().
3624         * sigc++/signal.h.m4: Avoid compiler warning about
3625         uninitialized variable r_ in emit().
3626         * sigc++/visit_each.h: Cleanup.
3627
3628         API additions:
3629         * sigc++/adpators/lambda/operators.h.m4: Add
3630         lambda actions sigc::{reinterpret,static,dynamic}_cast_
3631         to support explicit parameter conversion.
3632         * tests/test_lambda.cc: Test sigc::static_cast_.
3633         * sigc++/adaptors/retype_return.h.m4: New file adding
3634         adaptor retype_return (and hide_return).
3635         * sigc++/Makefile.am: Build and distribute new file.
3636         * tests/test_retype_return.cc: New file testing
3637         adaptor retype_return (and hide_return).
3638         * tests/Makefile.am: Build and distribute new test case.
3639
3640 2003-10-24  Martin Schulze  <teebaum@src.gnome.org>
3641
3642         update .cvsignore files
3643
3644 2003-10-24  Martin Schulze  <teebaum@cvs.gnome.org>
3645
3646         Remove disturbing limit_derived_target<>::operator() overloads. Add
3647
3648 2003-10-25  Martin Schulze  <teebaum@cvs.gnome.org>
3649
3650         * sigc++/visit_each.h: Remove disturbing
3651         limit_derived_target<>::operator() overloads.
3652         * sigc++/adaptors/bind.h.m4: Add support for sigc::ref().
3653         * tests/test_bind.cc: Test sigc::ref().
3654         * sigc++/adaptors/lambda/{operator,group,base}.h.m4:
3655         - Move support for sigc::ref() from lambda_core<> into
3656         lambda operator and lambda group creator functions.
3657         - Add missing visit_each() overload for lambda<> template.
3658         * tests/test_lambda.cc: Test auto-disconnection.
3659         TODO: Fix a strange bug that leads to "Bus error"
3660         during auto-disconnection.
3661
3662 2003-10-23  Martin Schulze  <teebaum@cvs.gnome.org>
3663
3664         Bump version number to 1.9.10. Add ChangeLog summary for version 1.9.10.
3665
3666 2003-10-23  Martin Schulze  <teebaum@cvs.gnome.org>
3667
3668         * configure.ac: Bump version number to 1.9.10.
3669         * NEWS: Add ChangeLog summary for version 1.9.10.
3670
3671 2003-10-23  Martin Schulze  <teebaum@cvs.gnome.org>
3672
3673         Move definition of struct nil into functor_trait.h.
3674
3675 2003-10-23  Martin Schulze  <teebaum@cvs.gnome.org>
3676
3677         * sigc++/functors/{functor_trait,slot}.h.m4:
3678         Move definition of struct nil into functor_trait.h.
3679
3680 2003-10-23  Martin Schulze  <teebaum@cvs.gnome.org>
3681
3682         Move definition of struct nil into functor_trait.h.
3683
3684 2003-10-23  Martin Schulze  <teebaum@cvs.gnome.org>
3685
3686         * sigc++/functors/{functor_trait,slot}.h.m4:
3687         Move definition of struct nil into functor_trait.h.
3688
3689 2003-10-23  Martin Schulze  <teebaum@cvs.gnome.org>
3690
3691         Disable typeof() compiler checks. Remove unnecessary deduce_result_type<>
3692
3693 2003-10-23  Martin Schulze  <teebaum@cvs.gnome.org>
3694
3695         * configure.ac: Disable typeof() compiler checks.
3696         * sigc++/adaptors/bind.h.m4: Remove unnecessary
3697         deduce_result_type<> template specializations.
3698
3699 2003-10-20  Martin Schulze  <teebaum@cvs.gnome.org>
3700
3701         Correct order of typedefs for good. (Patch from Jeff Franks.)
3702
3703 2003-10-20  Martin Schulze  <teebaum@cvs.gnome.org>
3704
3705         * sigc++/adaptors/compose.h.m4:
3706         Correct order of typedefs for good. (Patch from Jeff Franks.)
3707
3708 2003-10-20  Martin Schulze  <teebaum@cvs.gnome.org>
3709
3710         Add constructor that takes a sigc::slot_base& to support 3rd-party slot
3711
3712 2003-10-20  Martin Schulze  <teebaum@cvs.gnome.org>
3713
3714         * sigc++/connection.h: Add constructor that takes
3715         a sigc::slot_base& to support 3rd-party slot lists
3716         like they are used in glibmm/gtkmm.
3717         * sigc++/functors/slot.h.m4: Make sigc::slot::call_type public.
3718         (Fixes compile problems reported by Jeff Franks.)
3719         * sig++/type_traits.h: Don't use long long in
3720         sigc::is_base_and_derived.
3721         (Fixes compile problems reported by Jeff Franks.)
3722         * sigc++/adaptors/{bind,compose,hide,exception_catch}.h.m4:
3723         Correct order of typedefs. (Repoted by Jeff Franks.)
3724         * configure.ac: Bump version number to 1.9.9.
3725         * NEWS: Add ChangeLog summary for version 1.9.9.
3726
3727 2003-10-19  Martin Schulze  <teebaum@cvs.gnome.org>
3728
3729         Define doxygen group functors. Bump version number to 1.9.8. Add ChangeLog
3730
3731 2003-10-19  Martin Schulze  <teebaum@cvs.gnome.org>
3732
3733         * sigc++/functors/slot.h.m4: Define doxygen group functors.
3734         * configure.ac: Bump version number to 1.9.8.
3735         * NEWS: Add ChangeLog summary for version 1.9.8.
3736
3737 2003-10-19  Martin Schulze  <teebaum@cvs.gnome.org>
3738
3739         Add announces of versions 1.9.6 and 1.9.7. New file. Defines namespace
3740
3741 2003-10-19  Martin Schulze  <teebaum@cvs.gnome.org>
3742
3743         * NEWS: Add announces of versions 1.9.6 and 1.9.7.
3744         * sigc++/compatibility.h.m4: New file. Defines namespace SigC.
3745         namespace SigC should be API compatible to libsigc++-1.2.
3746         * sigc++/Makefile.am: Build compatibility.h.
3747         * tests/test_compatibility.cc, tests/Makefile.am:
3748         Add test case for compatibility module.
3749         * docs/index.html: Change group names.
3750         * sigc++/sigc++.h: Include connection.h.
3751         * sigc++/connection.{cc,h}:
3752         - Rename dependency to destroy_notify_callback.
3753         - Change parameter name in set_slot() from d to data.
3754         - Fix operator=(): Add "return *this;"
3755         - Get rid of namespace functor.
3756         - Corrections in documentation.
3757         * sigc++/signal.{cc,h.m4}:
3758         - Add reference counter to signal_impl. Replaces "bool destroy_".
3759         - Move signal_base, slot_iterator[_buf], slot_list out of
3760         namespace internal. They are part of the public API.
3761         - Add convenience function signal#::make_slot().
3762         - Get rid of namespace functor.
3763         - Corrections in documentation.
3764         * sigc++/trackable.{cc,h}:
3765         - Rename dependency to destroy_notify_callback.
3766         - Rename trackable::clear() to trackable::notify_callbacks().
3767         - Corrections in documentation.
3768         * sigc++/type_traits.h: Add documentation.
3769         * sigc++/visit_each.h:
3770         - Get rid of namespace functor.
3771         - Add documentation.
3772         * sigc++/adaptors[/lambda]/*: Get rid of namespace functor.
3773         * sigc++/functors/{functor_trait.h,ptr_fun.h.m4,mem_fun.h.m4}:
3774         - Get rid of namespace functor.
3775         - Corrections in documentation / add documentation.
3776         * sigc++/functors/slot.{cc,h.m4}:
3777         - Move slot_base out of namespace internal. It's public API.
3778         - Get rid of one-letter-parameter-names.
3779         - Get rid of namespace functor.
3780         - Corrections in documentation.
3781         * tests/*.cc: Get rid of "using namespace ...".
3782
3783 2003-09-10  Martin Schulze  <teebaum@cvs.gnome.org>
3784
3785         Add subscript ([]) and assign (=) operator. I think there are now enough
3786
3787 2003-09-10  Martin Schulze  <teebaum@cvs.gnome.org>
3788
3789         * sigc++/adaptors/lambda/{base,operators}.h.m4:
3790         Add subscript ([]) and assign (=) operator. I think there are now
3791         enough operators available to make any future power user happy.
3792         The only one missing is the comma operator and if we added it
3793         the logical consequence would be to also add if(), switch(), do(),
3794         etc. lambda expressions which are really out of place in libsigc++.
3795         * sigc++/type_traits.h: Fix is_base_and_derived<> for const types.
3796         * tests/test_lambda.cc: Test new operators.
3797
3798 2003-09-04  Martin Schulze  <teebaum@cvs.gnome.org>
3799
3800         Bump version number to 1.9.7.
3801
3802 2003-09-05  Martin Schulze  <teebaum@cvs.gnome.org>
3803
3804         * configure.ac: Bump version number to 1.9.7.
3805
3806 2003-09-03  Martin Schulze  <teebaum@cvs.gnome.org>
3807
3808         - Restructure so that the size of the generated source file stays
3809
3810 2003-09-03  Martin Schulze  <teebaum@cvs.gnome.org>
3811
3812         * sigc++/adaptors/lambda/operator.h.m4:
3813         - Restructure so that the size of the generated source file stays
3814         reasonable for 34 operators: There are only two lambda templates
3815         lambda_operator and lambda_operator_unary. The action is an additional
3816         template parameter. A small template lambda_action[_unary] is specialized
3817         for all actions.
3818         - Add most operators that boost::lambda supports. Missing operators are
3819         "=", "[]", "," and support for pointer arithmetic. I don't know if it's
3820         worth adding these. In libsigc++, the purpose of lambda operators is to
3821         provide some extra functionality for the group adaptor.
3822         * tests/test_lambda.cc:
3823         Test pre-increment, address and dereference operator.
3824
3825 2003-09-03  Martin Schulze  <teebaum@cvs.gnome.org>
3826
3827         New file reference_wrapper.h provides ref() to specify that
3828
3829 2003-08-31  Martin Schulze  <teebaum@cvs.gnome.org>
3830
3831         * sigc++/reference_wrapper.h, sigc++/type_traits.h, sigc++/Makefile.am:
3832         New file reference_wrapper.h provides ref() to specify that adaptors/lambdas
3833         should take a reference to the object passed into ref() instead of a copy.
3834
3835 2003-08-31  Martin Schulze  <teebaum@cvs.gnome.org>
3836
3837         New file reference_wrapper.h provides ref() to specify that
3838
3839 2003-08-31  Martin Schulze  <teebaum@cvs.gnome.org>
3840
3841         * sigc++/reference_wrapper.h, sigc++/type_traits.h, sigc++/Makefile.am:
3842         New file reference_wrapper.h provides ref() to specify that adaptors/lambdas
3843         should take a reference to the object passed into ref() instead of a copy.
3844         * tests/test_lambda.cc:
3845         - Test group() with mem_fun().
3846         - Use ref() where lambdas should store references to objects.
3847         - Test var() and constant().
3848         * sigc++/adaptors/lambda/base.h.m4:
3849         - Support ref() in return type deduction.
3850         - Add var() and constant() which create lambdas for usage with lambda operators.
3851         * sigc++/adaptors/lambda/operator.h.m4:
3852         - Fix return type deduction.
3853         - Remove operator{+,-,*,...} overloads added on 2003-08-29. ref() is way cleaner.
3854         * sigc++/adaptors/lambda/group.h.m4,
3855         sigc++/adaptors/bind.h.m4, sigc++/adaptors/compose.h.m4,
3856         sigc++/adaptors/exception_catch.h.m4, sigc++/adaptors/hide.h.m4:
3857         Fix return type deduction.
3858
3859 2003-08-29  Martin Schulze  <teebaum@cvs.gnome.org>
3860
3861         Add more tests. Make _1, _2, ... constant. Add operator{+,-,*,...}
3862
3863 2003-08-29  Martin Schulze  <teebaum@cvs.gnome.org>
3864
3865         * tests/test_lambda.cc: Add more tests.
3866         * sigc++/adaptors/lambda/select.h.m4, sigc++/adaptors/lambda/lambda.cc.m4:
3867         Make _1, _2, ... constant.
3868         * sigc++/adaptors/lambda/operator.h.m4:
3869         Add operator{+,-,*,...} overloads to distinguish between const and non-const objects.
3870         Store references to non-const objects rather than copies.
3871         This allows expressions like e.g. std::cout << _1.
3872         * sigc++/adaptors/lambda/base.h.m4, sigc++/adaptors/lambda/group.h.m4:
3873         Remove void specializations. Functors returning void are tested and work fine.
3874
3875 2003-08-27  Martin Schulze  <teebaum@cvs.gnome.org>
3876
3877         Rename, correct and improve this test case. Build and run
3878
3879 2003-08-27  Martin Schulze  <teebaum@cvs.gnome.org>
3880
3881         * tests/test_callof.cc, tests/test_deduce_result_type.cc:
3882         Rename, correct and improve this test case.
3883         * tests/Makefile.am: Build and run test_deduce_result_type
3884         instead of test_callof.
3885
3886 2003-08-27  Martin Schulze  <teebaum@cvs.gnome.org>
3887
3888         Update TODO.
3889
3890 2003-08-27  Martin Schulze  <teebaum@cvs.gnome.org>
3891
3892         * Update TODO.
3893
3894 2003-08-27  Martin Schulze  <teebaum@cvs.gnome.org>
3895
3896         Remove usage of callof_ignore_arg<>. Remove the first and move
3897
3898 2003-08-27  Martin Schulze  <teebaum@cvs.gnome.org>
3899
3900         * sigc++/adaptors/hide.h.m4: Remove usage of callof_ignore_arg<>.
3901         * sigc++/callof.h.m4, sigc++/adaptors/deduce_result_type.h.m4,
3902         sigc++/functors/functor_trait.h.m4:
3903         Remove the first and move deduce_result_type templates from
3904         functor_trait.h.m4 into new file deduce_result_type.h.m4.
3905         * sigc++/Makefile.am, sigc++/sigc++.h, sigc++/adaptors/adaptor_trait.h.m4:
3906         Build and include sigc++/adaptors/deduce_result_type.h instead of callof.h.
3907         * sigc++/functors/slot.h.m4: Document struct nil.
3908
3909 2003-08-24  Martin Schulze  <teebaum@cvs.gnome.org>
3910
3911         * sigc++/functors/functor_trait.h.m4: Simplify usage of convenience
3912         macro SIGC_FUNCTORS_HAVE_RESULT_TYPE:
3913         namespace sigc{ namespace functor{ SIGC_FUNCTORS_HAVE_RESULT_TYPE }}
3914
3915 2003-08-24  Martin Schulze  <teebaum@cvs.gnome.org>
3916
3917         Merge adaptor return type deduction and typeof() into
3918
3919 2003-08-24  Martin Schulze  <teebaum@cvs.gnome.org>
3920
3921         * sigc++/functors/functor_trait.h,m4, sigc++/adaptors[/lambda]/*.h.m4:
3922         Merge adaptor return type deduction and typeof() into
3923         sigc::functor::deduce_result_type. Use it for all adaptors.
3924         * tests/test_compose.cc: Only test multi-type get-functor if
3925         typeof() if supported.
3926
3927 2003-08-23  Martin Schulze  <teebaum@cvs.gnome.org>
3928
3929         - Remove unnecessary void specializations. In fact, only the one for
3930
3931 2003-08-24  Martin Schulze  <teebaum@cvs.gnome.org>
3932
3933         * sigc++/adaptors[/lambda]/*.h.m4:
3934         - Remove unnecessary void specializations. In fact, only the one
3935         for sigc::functor::exception_catch<> is needed and I don't really
3936         understand why. For the lambda stuff the void specializatoins are
3937         just commented out at the moment.
3938         - Make typeof() optional. Surprisingly, I got the lambda stuff working
3939         without typeof()! The test suite doesn't catch all cases yet, so maybe
3940         some thing are still not working.
3941         TODO: Implement configure check.
3942         * tests/test_bind.cc, tests/test_compose.cc tests/test_exception_catch.cc,
3943         tests/test_hide.cc, tests/test_lambda.cc:
3944         Only test multiple functor return types if typeof() is supported.
3945
3946 2003-08-06  Martin Schulze  <teebaum@cvs.gnome.org>
3947
3948         Add function trackable::clear().
3949
3950 2003-08-06  Martin Schulze  <teebaum@cvs.gnome.org>
3951
3952         * sigc++/trackable.{cc,h}: Add function trackable::clear().
3953
3954 2003-06-24  Andreas Rottmann  <rotty@src.gnome.org>
3955
3956         Minor tweaks.
3957
3958         * TODO: Minor tweaks.
3959
3960 2003-06-24  Andreas Rottmann  <rotty@src.gnome.org>
3961
3962         Minor tweaks.
3963
3964 2003-06-24  Andreas Rottmann  <rotty@src.gnome.org>
3965
3966         Use these variables. Provide doxygen with SRCDIR and TOP_SRCDIR
3967
3968         * docs/reference/Doxyfile.in: Use these variables.
3969         * docs/reference/Makefile.am (html/index.html): Provide doxygen
3970         with SRCDIR and TOP_SRCDIR environment variables.
3971
3972         * sigc++/functors/slot.h.m4: Make slot::call_type typedef public;
3973         this fixes a g++ 3.3 error in signal.h.
3974
3975         * sigc++/signal.h.m4: Make the signal::accumulated class public;
3976         this fixes a g++ 3.3 error in test_accumulated.cc.
3977
3978 2003-06-24  Andreas Rottmann  <rotty@src.gnome.org>
3979
3980         Use these variables. Provide doxygen with SRCDIR and TOP_SRCDIR
3981
3982         * docs/reference/Doxyfile.in: Use these variables.
3983         * docs/reference/Makefile.am (html/index.html): Provide doxygen
3984         with SRCDIR and TOP_SRCDIR environment variables.
3985
3986 2003-06-23  Andreas Rottmann  <rotty@src.gnome.org>
3987
3988         Make slot::call_type typedef public; this fixes a g++ 3.3 error in signal.h.
3989
3990 2003-06-23  Andreas Rottmann  <rotty@src.gnome.org>
3991
3992         Make the signal::accumulated class public; this fixes a g++ 3.3 error in test_accumulated.cc.
3993
3994 2003-06-23  Andreas Rottmann  <rotty@src.gnome.org>
3995
3996         Added comment author annotation.
3997
3998 2003-06-23  Andreas Rottmann  <rotty@src.gnome.org>
3999
4000         .cvignore additions.
4001
4002 2003-06-15  Martin Schulze  <teebaum@cvs.gnome.org>
4003
4004         Correct typing error in docs. Document the whole thing.
4005
4006 2003-06-15  Martin Schulze  <teebaum@cvs.gnome.org>
4007
4008         * sigc++/functor/slot.h.m4: Correct typing error in docs.
4009         * sigc++/functor/ptr_fun.h.m4: Document the whole thing.
4010
4011 2003-05-31  Murray Cumming  <murrayc@usa.net>
4012
4013         Rearranged the groups to make it all a bit more like the libsigc++ 1.2
4014
4015 2003-05-31  Murray Cumming  <murrayc@usa.net>
4016
4017         * Reference documentation: Rearranged the groups to make it all
4018         a bit more like the libsigc++ 1.2 reference documentation.
4019         Corrected some spelling and grammar too.
4020         This needs a lot of work. The text is very hard to read and it's
4021         generally not appropriate for a user of the code who doesn't
4022         care about the internals. But it's not impossible - our examples
4023         should show us what we need to say in the documentation.
4024         We probably need some more groups for the extra stuff, like we do
4025         in libsigc++ 1.2.
4026
4027 2003-05-30  Martin Schulze  <martin-ml@hippogriff.de>
4028
4029         Fix documentation. Document the whole thing.
4030
4031 2003-05-29  Martin Schulze  <martin-ml@hippogriff.de>
4032
4033         * sigc++/signal.h.m4: Fix documentation.
4034         * sigc++/connection.h, sigc++/functor/slot.h.m4:
4035         Document the whole thing.
4036
4037 2003-05-29  Martin Schulze  <martin-ml@hippogriff.de>
4038
4039         - Remove bogus operator() from unnumbered signal<> and
4040
4041 2003-05-29  Martin Schulze  <martin-ml@hippogriff.de>
4042
4043         * sigc++/signal.h.m4:
4044         - Remove bogus operator() from unnumbered signal<> and
4045         signal<>::accumulated templates.
4046         - Document the whole thing.
4047
4048         * docs/index.html: Fix some links.
4049
4050 2003-04-06  Martin Schulze  <MHL.Schulze@t-online.de>
4051
4052         Add Doxygen framework.
4053
4054 2003-04-06  Martin Schulze  <MHL.Schulze@t-online.de>
4055
4056         * TODO, configure.ac, Makefile.am, docs/*:
4057         Add Doxygen framework.
4058
4059 2003-04-05  Martin Schulze  <MHL.Schulze@t-online.de>
4060
4061         Move sigc::callof<> to sigc::functor::internal::callof<>.
4062
4063 2003-04-06  Martin Schulze  <MHL.Schulze@t-online.de>
4064
4065         * sigc++/callof.h.m4, sigc++/adaptors/*, tests/test_callof.cc:
4066         Move sigc::callof<> to sigc::functor::internal::callof<>.
4067
4068         * sigc++/functors/mem_fun.h.m4, tests/test_mem_fun.cc:
4069         Add new types [bound_][const_]volatile_mem_functor, visit_each()
4070         and mem_fun() overloads for volatile qualifier.
4071         Add ctor overloads in bound_*mem_functor and mem_fun() overloads
4072         that take reference instead of pointer.
4073
4074 2003-03-26  Martin Schulze  <MHL.Schulze@t-online.de>
4075
4076         Change "closure" to "slot" throughout sigc++2 (file names, class names,
4077
4078 2003-03-26  Martin Schulze  <MHL.Schulze@t-online.de>
4079
4080         * Change "closure" to "slot" throughout sigc++2 (file names,
4081         class names, member variables, documentation, etc.).
4082
4083 2003-03-25  Martin Schulze  <MHL.Schulze@t-online.de>
4084
4085         Rewrite to reflect recent changes as well as recent discussions.
4086
4087 2003-03-26  Martin Schulze  <MHL.Schulze@t-online.de>
4088
4089         * TODO: Rewrite to reflect recent changes as well as recent discussions.
4090
4091 2003-03-24  Martin Schulze  <MHL.Schulze@t-online.de>
4092
4093         Make the adaptor's data member public so that visit_each() can access it.
4094
4095 2003-03-24  Martin Schulze  <MHL.Schulze@t-online.de>
4096
4097         * sigc++/adaptors/bind_return.h.m4: Make the adaptor's data member
4098         public so that visit_each() can access it.
4099
4100         * sigc++/adaptors/lambda/*.h.m4: More fixes. Add a note about
4101         malfunctioning typeof() (probably compiler bug in gcc-3.2).
4102
4103         * tests/*.cc: Test references. Fix compose equivalent in test_lambda.
4104
4105 2003-03-24  Martin Schulze  <MHL.Schulze@t-online.de>
4106
4107         Move detection of function and member method pointers' return types from
4108
4109 2003-03-24  Martin Schulze  <MHL.Schulze@t-online.de>
4110
4111         * sigc++/Makefile.am, sigc++/functors/functor_trait.h[.m4],
4112         sigc++/adaptors/adaptor_trait.h.m4: Move detection of function
4113         and member method pointers' return types from adaptor_trait into
4114         functor_trait. (We'll use functor_trait rather than adaptor_trait for
4115         our lambda stuff.) functor_trait.h needs to be generated from .m4 now.
4116
4117         * sigc++/functors/functor_trait.h.m4: Add convenience macros:
4118         - SIGC_FUNCTORS_HAVE_RESULT_TYPE indicates that the existance of
4119         T_functor::result_type should be assumed for all unknown functors.
4120         - SIGC_FUNCTOR_TRAIT(T_functor, T_result) explicitly specifies the
4121         result type of a functor.
4122         ("typename functor_trait<T_functor>::result_type") is used to
4123         determine the return type of our adaptors' operator()() overloads.
4124
4125         * sigc++/adaptors/[lambda/]*.h.m4: Various fixes in visit_each() and
4126         operator()() overloads to make these operator()() overloads usable.
4127         Most of them were just commented out before. Some adaptor types also
4128         have void specializations, now.
4129
4130         * sigc++/adaptors/lambda/group.h.m4: Change syntax from
4131         "[some_functor] % grp([args])" to "group([some_functor], [args])"
4132         like we agreed on the ml some time ago.
4133
4134         * sigc++/tests/test_[all adaptors].cc: Test stuff that didn't work
4135         before.
4136
4137 2003-03-22  Murray Cumming  <murrayc@usa.net>
4138
4139         Added pgk-config file, from a mystery person in bug #108857
4140
4141 2003-03-22  Murray Cumming  <murrayc@usa.net>
4142
4143         * Added pgk-config file, from a mystery person in bug #108857
4144
4145 2003-03-22  Martin Schulze  <MHL.Schulze@t-online.de>
4146
4147         Test and show how to use functor_trait for user defined or 3rd-party
4148
4149 2003-03-22  Martin Schulze  <MHL.Schulze@t-online.de>
4150
4151         * tests/test_bind.cc: Test and show how to use functor_trait
4152         for user defined or 3rd-party functors so that a
4153         bind<0>([functor],[arg1])() call with no arguments can return a value.
4154
4155 2003-03-20  Martin Schulze  <MHL.Schulze@t-online.de>
4156
4157         Add explanations. Comment in / create templates callof_safe[#].
4158
4159 2003-03-20  Martin Schulze  <MHL.Schulze@t-online.de>
4160
4161         * sigc++/callof.h.m4: Add explanations. Comment in / create templates
4162         callof_safe[#]. Unfortunately they don't work for functors with overloaded
4163         operator() so we don't use it for now. At least everything is documented.
4164
4165         * sigc++/functors/functor_trait.h, sigc++/functors/*.h.m4: Add back
4166         functor_base compiler hint. We're using it now in adaptor_functor<>.
4167
4168         * sigc++/adaptors/{adaptor_trait,bind}.h.m4: Make operator() overloads
4169         with no arguments return the result of the functor invocation.
4170         Fix multiple bind<0>().
4171         * tests/test_bind.cc: Test the stuff that's working now.
4172
4173 2003-03-16  Murray Cumming  <murrayc@usa.net>
4174
4175         Added sigc++/sigc++.h, like in libsigc++ 1.2 Added member_method example,
4176
4177 2003-03-16  Murray Cumming  <murrayc@usa.net>
4178
4179         * Added sigc++/sigc++.h, like in libsigc++ 1.2
4180         * examples: Added member_method example, which uses a class method
4181         and which demonstrates disconnection.
4182
4183 2003-03-13  Martin Schulze  <teebaum@src.gnome.org>
4184
4185         Bump version to 1.9.6.
4186
4187 2003-03-11  Andreas Rottmann  <rotty@src.gnome.org>
4188
4189         Use substitution references instead of $(patsubst). Is shorter and fixes the strange-dirs-in-dist-tarball bug.
4190
4191 2003-03-09  Martin Schulze  <MHL.Schulze@t-online.de>
4192
4193         Add block() capability.
4194
4195 2003-03-09  Martin Schulze  <MHL.Schulze@t-online.de>
4196
4197         * sigc++/connection.h: Add block() capability.
4198
4199 2003-03-09  Martin Schulze  <MHL.Schulze@t-online.de>
4200
4201         Add flag signal_impl::destroy_ and function signal_impl::destroy(). Use
4202
4203 2003-03-09  Martin Schulze  <MHL.Schulze@t-online.de>
4204
4205         * sigc++/signal.{cc,h.m4}: Add flag signal_impl::destroy_
4206         and function signal_impl::destroy(). Use them to defer
4207         the destruction of the signal_impl object during signal
4208         emission.
4209
4210         * tests/test_disconnect.cc: Add tests for the connection
4211         class and for deleting signals during emission.
4212
4213 2003-03-09  Martin Schulze  <MHL.Schulze@t-online.de>
4214
4215         - New files that add a connection class. Objects of this class are
4216
4217 2003-03-09  Martin Schulze  <MHL.Schulze@t-online.de>
4218
4219         * sigc++/connection.{cc,h}, sigc++/Makefile.am:
4220         - New files that add a connection class. Objects of this
4221         class are constructed from closure list iterators and can
4222         be used to disconnect the refered closure. As opposed to
4223         iterators they stay valid beyond the lifetime of the closure.
4224
4225 2003-03-09  Martin Schulze  <MHL.Schulze@t-online.de>
4226
4227         - Rename closure_{base,rep}::[set_]dependency_ -> [set_]parent_. - Make
4228
4229 2003-03-09  Martin Schulze  <MHL.Schulze@t-online.de>
4230
4231         * sigc++/functors/closure.{cc,h.m4}, sigc++/signal.cc:
4232         - Rename closure_{base,rep}::[set_]dependency_ -> [set_]parent_.
4233         - Make closure_rep inherit trackable. This allows for
4234         connection objects that stay valid beyond the life time
4235         of the refered closure.
4236         - Make some one-line-functions inline again.
4237
4238 2003-03-08  Martin Schulze  <MHL.Schulze@t-online.de>
4239
4240         BUGFIX in trackable_dep_list::clear()
4241
4242 2003-03-08  Martin Schulze  <MHL.Schulze@t-online.de>
4243
4244         * sigc++/trackable.cc: BUGFIX in trackable_dep_list::clear()
4245
4246 2003-03-08  Andreas Rottmann  <rotty@src.gnome.org>
4247
4248         Ignore `make dist' tarballs.
4249
4250 2003-03-08  Andreas Rottmann  <rotty@src.gnome.org>
4251
4252         The "The New Build System" changes.
4253
4254 2003-03-08  Andreas Rottmann  <rotty@src.gnome.org>
4255
4256         Re-included lambda test.
4257
4258 2003-03-08  Andreas Rottmann  <rotty@src.gnome.org>
4259
4260         Removed. Removed. Removed. Remove the above Makefiles.
4261
4262         * sigc++/functors/Makfile.am: Removed.
4263         * sigc++/adaptors/Makefile.am: Removed.
4264         * sigc++/adaptors/lambda/Makefile.am: Removed.
4265         * configure.ac (AC_OUTPUT): Remove the above Makefiles.
4266
4267 2003-03-08  Andreas Rottmann  <rotty@src.gnome.org>
4268
4269         Rewritten so we can build lambda cleanly. Removed.
4270
4271         * sigc++/Makefile.am: Rewritten so we can build lambda cleanly.
4272         * sigc++/Makefile.am_fragment: Removed.
4273
4274 2003-03-08  Andreas Rottmann  <rotty@src.gnome.org>
4275
4276         Typo fix.
4277
4278 2003-03-07  Martin Schulze  <MHL.Schulze@t-online.de>
4279
4280         - signal_emit#<>: New templates replacing signal#<>::caller. The purpose
4281
4282 2003-03-07  Martin Schulze  <MHL.Schulze@t-online.de>
4283
4284         * sigc++/signal.{cc,h.m4}:
4285         - signal_emit#<>: New templates replacing signal#<>::caller.
4286         The purpose of these templates is implementing the emit
4287         function and optimizing signal emission for the case that
4288         no accumulator is used via template specializations.
4289         - default_accumulator<>: Removed. The default for T_accumulator
4290         in signal#<> now is nil. An example how to use accumulators
4291         is available in tests/test_accumulator.cc.
4292         - signal_{base,impl}: Move the implementation of signal_base's
4293         interface to signal_impl. An object of this class is
4294         dynamically allocated when first connecting a closure to
4295         the signal. This drastically reduces the size of empty signals
4296         and allows for future addition of a reference counter to make
4297         it safe to delete a signal during emission.
4298         - Directly work on closure_rep during signal emission. This
4299         seems to be quicker than using the closure templates.
4300         - Document the classes. Restructure the header file a bit.
4301
4302         * sigc++/functors/closure.h.m4: Make closure_base::rep_ data
4303         member public, so that signal emission can directly work on it.
4304
4305         * tests/test_size.cc: Add an entry for signal_impl.
4306
4307 2003-03-07  Martin Schulze  <MHL.Schulze@t-online.de>
4308
4309         - closure_base: BUGFIXES in ~closure_base() and operator=(). - Mark some
4310
4311 2003-03-07  Martin Schulze  <MHL.Schulze@t-online.de>
4312
4313         * sigc++/closure.{cc,h.m4}:
4314         - closure_base: BUGFIXES in ~closure_base() and operator=().
4315         - Mark some functions with the inline keyword. This seems to
4316         help gcc 3.2 to optimize signal emission and (dis)connection.
4317         - Document the classes. Restructure the header file a bit.
4318
4319 2003-03-07  Martin Schulze  <MHL.Schulze@t-online.de>
4320
4321         Make trackable allocate a trackable_dep_list object dynamically when
4322
4323 2003-03-07  Martin Schulze  <MHL.Schulze@t-online.de>
4324
4325         * sigc++/trackable.{cc,h}: Make trackable allocate a
4326         trackable_dep_list object dynamically when adding the first
4327         dependency. (This reduces the size of objects, that are not
4328         refered by a closure by 4 bytes (50%) and increases the size
4329         of objects that are refered by a closure by 4 bytes (50%)
4330         on a 32 bit architecture => This reduces total memory use
4331         when >50% of the trackables are not refered by a closure.)
4332         Document the classes.
4333
4334 2003-03-06  Andreas Rottmann  <rotty@src.gnome.org>
4335
4336         Added new test executables.
4337
4338 2003-03-05  Martin Schulze  <MHL.Schulze@t-online.de>
4339
4340         Add two test cases. test_size is showing the size of public and internal
4341
4342 2003-03-05  Martin Schulze  <MHL.Schulze@t-online.de>
4343
4344         * tests/Makefile.am, tests/test_size.cc, tests/test_accumulated.cc:
4345         Add two test cases. test_size is showing the size of  public and
4346         internal structures. (Which apart from empty signals are smaller
4347         than the sizes of the equivalent libsigc++-1.2 structures.)
4348         test_accumulated is a test for the template signal<>::accumulated<>
4349         at the same time showing the use of accumulators in libsigc++2.
4350
4351 2003-03-05  Martin Schulze  <MHL.Schulze@t-online.de>
4352
4353         BUGFIX in template specialization
4354
4355 2003-03-05  Martin Schulze  <MHL.Schulze@t-online.de>
4356
4357         * sigc++/visit_each.h: BUGFIX in template specialization
4358         limit_derive_target<T_Target*,T_action>::with_type<false,T_type>:
4359         Add non-const overloads for static void execute_() avoiding
4360         compile time errors.
4361
4362 2003-02-25  Andreas Rottmann  <rotty@src.gnome.org>
4363
4364         Martin Schulze's disonnect changes.
4365
4366 2003-02-25  Andreas Rottmann  <rotty@src.gnome.org>
4367
4368         Ignore some more auto*-stuff.
4369
4370 2003-02-25  Andreas Rottmann  <rotty@src.gnome.org>
4371
4372         Ignore new diconnect test executable.
4373
4374 2003-02-25  Andreas Rottmann  <rotty@src.gnome.org>
4375
4376         Add testcase with a mixed connection & disconnection sequence.
4377
4378 2003-02-25  Andreas Rottmann  <rotty@src.gnome.org>
4379
4380         Bugfix in signal_base::insert(): Set notification function in the newly created copy of slot_ rather than in slot_ itself.
4381
4382 2003-02-25  Andreas Rottmann  <rotty@src.gnome.org>
4383
4384         Comment in typedefs for iterator types in the signal#<> class template. Make signal#<>::connect() return an iterator for convenience.
4385
4386 2003-01-23  Murray Cumming  <murrayc@usa.net>
4387
4388         sigc++/adaptors/lambda is disable temporarily (not built and not
4389
4390 2003-01-23  Murray Cumming  <murrayc@usa.net>
4391
4392         * sigc++/adaptors/lambda is disable temporarily (not built and
4393         not distributed) because it gets built before its parent
4394         directory, but #includes generated sources in the parent directory.
4395
4396 2003-01-22  Murray Cumming  <murrayc@usa.net>
4397
4398         Added Andreas Rottman's example.
4399
4400 2003-01-22  Murray Cumming  <murrayc@usa.net>
4401
4402         * Added Andreas Rottman's example.
4403
4404 2003-01-22  Murray Cumming  <murrayc@usa.net>
4405
4406         Applied Andreas Rottman's make dist fixes.
4407
4408 2003-01-22  Murray Cumming  <murrayc@usa.net>
4409
4410         * Applied Andreas Rottman's make dist fixes.
4411
4412 2003-01-22  Murray Cumming  <murrayc@src.gnome.org>
4413
4414         Added examples directory
4415
4416 2003-01-15  Murray Cumming  <murrayc@src.gnome.org>
4417
4418         Added missing files.
4419
4420 2003-01-14  Murray Cumming  <murrayc@usa.net>
4421
4422         Added whitespace to make the code more readable.
4423
4424 2003-01-14  Murray Cumming  <murrayc@usa.net>
4425
4426         * Added whitespace to make the code more readable.
4427
4428 2003-01-14  Murray Cumming  <murrayc@src.gnome.org>
4429
4430         Changed copyrights.
4431
4432 2003-01-13  Murray Cumming  <murrayc@src.gnome.org>
4433
4434         No more use of the scripts directory.
4435
4436 2003-01-13  Murray Cumming  <murrayc@src.gnome.org>
4437
4438         initial import
4439