From 046230e84b62cd011b7d504904760b583cc3d1f5 Mon Sep 17 00:00:00 2001 From: luoyaoming Date: Thu, 15 Sep 2022 10:41:43 +0800 Subject: [PATCH] Import Upstream version 2.10.3 --- AUTHORS | 8 + COPYING | 515 + ChangeLog | 5921 +++++ INSTALL | 368 + MSVC_NMake/Makefile.vc | 57 + MSVC_NMake/README.txt | 47 + MSVC_NMake/build-rules-msvc.mak | 102 + MSVC_NMake/config-msvc.mak | 43 + MSVC_NMake/create-lists-msvc.mak | 73 + MSVC_NMake/create-lists.bat | 42 + MSVC_NMake/detectenv-msvc.mak | 146 + MSVC_NMake/filelist.am | 15 + MSVC_NMake/generate-msvc.mak | 10 + MSVC_NMake/info-msvc.mak | 40 + MSVC_NMake/install.mak | 20 + MSVC_NMake/meson.build | 35 + MSVC_NMake/sigc++config.h | 85 + MSVC_NMake/sigc.rc | 30 + MSVC_NMake/sigc.rc.in | 30 + Makefile.am | 63 + Makefile.in | 1037 + NEWS | 764 + README | 120 + aclocal.m4 | 2841 +++ autogen.sh | 7 + build/ax_boost_base.m4 | 285 + build/ax_boost_system.m4 | 121 + build/ax_boost_timer.m4 | 119 + build/compile | 348 + build/config.guess | 1480 ++ build/config.sub | 1801 ++ build/cxx.m4 | 145 + build/cxx_std.m4 | 25 + build/depcomp | 791 + build/dist-changelog.am | 34 + build/doc-reference.am | 208 + build/install-sh | 518 + build/libtool.m4 | 8394 +++++++ build/ltmain.sh | 11249 +++++++++ build/ltoptions.m4 | 437 + build/ltsugar.m4 | 124 + build/ltversion.m4 | 23 + build/lt~obsolete.m4 | 99 + build/missing | 215 + build/test-driver | 148 + config.h.in | 93 + configure | 20908 ++++++++++++++++ configure.ac | 99 + docs/Makefile.am | 40 + docs/Makefile.in | 900 + docs/doc-install.pl | 222 + docs/doc-manual.am | 46 + docs/doc-postprocess.pl | 126 + docs/doxygen-extra.css | 263 + docs/doxygen.css | 267 + docs/images/libsigc_logo.gif | Bin 0 -> 9136 bytes docs/images/top.gif | Bin 0 -> 260 bytes docs/index.html | 72 + docs/manual/README | 0 docs/manual/html/ch01.html | 24 + docs/manual/html/ch02.html | 33 + docs/manual/html/ch02s02.html | 26 + docs/manual/html/ch02s03.html | 37 + docs/manual/html/ch02s04.html | 3 + docs/manual/html/ch03.html | 28 + docs/manual/html/ch03s02.html | 7 + docs/manual/html/ch04.html | 28 + docs/manual/html/ch04s02.html | 12 + docs/manual/html/ch05.html | 1 + docs/manual/html/index.html | 1 + docs/manual/libsigc_manual.xml | 417 + docs/manual/meson.build | 96 + docs/reference/Doxyfile.in | 341 + docs/reference/html/annotated.html | 259 + docs/reference/html/arrowdown.png | Bin 0 -> 246 bytes docs/reference/html/arrowright.png | Bin 0 -> 229 bytes docs/reference/html/bc_s.png | Bin 0 -> 676 bytes docs/reference/html/bdwn.png | Bin 0 -> 147 bytes docs/reference/html/classes.html | 307 + .../classsigc_1_1bound__argument-members.html | 72 + .../html/classsigc_1_1bound__argument.html | 189 + ...pper_3_01T__wrapped_01_4_01_4-members.html | 72 + ...nce__wrapper_3_01T__wrapped_01_4_01_4.html | 187 + ...pper_3_01T__wrapped_01_4_01_4-members.html | 72 + ...nce__wrapper_3_01T__wrapped_01_4_01_4.html | 185 + ...pper_3_01T__wrapped_01_4_01_4-members.html | 72 + ...nce__wrapper_3_01T__wrapped_01_4_01_4.html | 185 + ..._1bound__const__mem__functor0-members.html | 80 + ...sssigc_1_1bound__const__mem__functor0.html | 293 + ...__const__mem__functor0__inherit__graph.png | Bin 0 -> 11586 bytes ..._1bound__const__mem__functor1-members.html | 80 + ...sssigc_1_1bound__const__mem__functor1.html | 301 + ...__const__mem__functor1__inherit__graph.png | Bin 0 -> 12458 bytes ..._1bound__const__mem__functor2-members.html | 80 + ...sssigc_1_1bound__const__mem__functor2.html | 313 + ...__const__mem__functor2__inherit__graph.png | Bin 0 -> 12330 bytes ..._1bound__const__mem__functor3-members.html | 80 + ...sssigc_1_1bound__const__mem__functor3.html | 321 + ...__const__mem__functor3__inherit__graph.png | Bin 0 -> 13234 bytes ..._1bound__const__mem__functor4-members.html | 80 + ...sssigc_1_1bound__const__mem__functor4.html | 329 + ...__const__mem__functor4__inherit__graph.png | Bin 0 -> 13426 bytes ..._1bound__const__mem__functor5-members.html | 80 + ...sssigc_1_1bound__const__mem__functor5.html | 337 + ...__const__mem__functor5__inherit__graph.png | Bin 0 -> 13453 bytes ..._1bound__const__mem__functor6-members.html | 80 + ...sssigc_1_1bound__const__mem__functor6.html | 345 + ...__const__mem__functor6__inherit__graph.png | Bin 0 -> 17148 bytes ..._1bound__const__mem__functor7-members.html | 80 + ...sssigc_1_1bound__const__mem__functor7.html | 353 + ...__const__mem__functor7__inherit__graph.png | Bin 0 -> 17286 bytes ...onst__volatile__mem__functor0-members.html | 80 + ...bound__const__volatile__mem__functor0.html | 293 + ...olatile__mem__functor0__inherit__graph.png | Bin 0 -> 11730 bytes ...onst__volatile__mem__functor1-members.html | 80 + ...bound__const__volatile__mem__functor1.html | 301 + ...olatile__mem__functor1__inherit__graph.png | Bin 0 -> 12328 bytes ...onst__volatile__mem__functor2-members.html | 80 + ...bound__const__volatile__mem__functor2.html | 313 + ...olatile__mem__functor2__inherit__graph.png | Bin 0 -> 12820 bytes ...onst__volatile__mem__functor3-members.html | 80 + ...bound__const__volatile__mem__functor3.html | 321 + ...olatile__mem__functor3__inherit__graph.png | Bin 0 -> 15387 bytes ...onst__volatile__mem__functor4-members.html | 80 + ...bound__const__volatile__mem__functor4.html | 329 + ...olatile__mem__functor4__inherit__graph.png | Bin 0 -> 13684 bytes ...onst__volatile__mem__functor5-members.html | 80 + ...bound__const__volatile__mem__functor5.html | 337 + ...olatile__mem__functor5__inherit__graph.png | Bin 0 -> 14051 bytes ...onst__volatile__mem__functor6-members.html | 80 + ...bound__const__volatile__mem__functor6.html | 345 + ...olatile__mem__functor6__inherit__graph.png | Bin 0 -> 15377 bytes ...onst__volatile__mem__functor7-members.html | 80 + ...bound__const__volatile__mem__functor7.html | 353 + ...olatile__mem__functor7__inherit__graph.png | Bin 0 -> 17241 bytes ...ssigc_1_1bound__mem__functor0-members.html | 80 + .../classsigc_1_1bound__mem__functor0.html | 293 + ..._1bound__mem__functor0__inherit__graph.png | Bin 0 -> 10015 bytes ...ssigc_1_1bound__mem__functor1-members.html | 80 + .../classsigc_1_1bound__mem__functor1.html | 301 + ..._1bound__mem__functor1__inherit__graph.png | Bin 0 -> 12191 bytes ...ssigc_1_1bound__mem__functor2-members.html | 80 + .../classsigc_1_1bound__mem__functor2.html | 313 + ..._1bound__mem__functor2__inherit__graph.png | Bin 0 -> 12034 bytes ...ssigc_1_1bound__mem__functor3-members.html | 80 + .../classsigc_1_1bound__mem__functor3.html | 321 + ..._1bound__mem__functor3__inherit__graph.png | Bin 0 -> 12287 bytes ...ssigc_1_1bound__mem__functor4-members.html | 80 + .../classsigc_1_1bound__mem__functor4.html | 329 + ..._1bound__mem__functor4__inherit__graph.png | Bin 0 -> 13129 bytes ...ssigc_1_1bound__mem__functor5-members.html | 80 + .../classsigc_1_1bound__mem__functor5.html | 337 + ..._1bound__mem__functor5__inherit__graph.png | Bin 0 -> 15613 bytes ...ssigc_1_1bound__mem__functor6-members.html | 80 + .../classsigc_1_1bound__mem__functor6.html | 345 + ..._1bound__mem__functor6__inherit__graph.png | Bin 0 -> 15229 bytes ...ssigc_1_1bound__mem__functor7-members.html | 80 + .../classsigc_1_1bound__mem__functor7.html | 353 + ..._1bound__mem__functor7__inherit__graph.png | Bin 0 -> 14794 bytes ...ound__volatile__mem__functor0-members.html | 80 + ...igc_1_1bound__volatile__mem__functor0.html | 293 + ...olatile__mem__functor0__inherit__graph.png | Bin 0 -> 11454 bytes ...ound__volatile__mem__functor1-members.html | 80 + ...igc_1_1bound__volatile__mem__functor1.html | 301 + ...olatile__mem__functor1__inherit__graph.png | Bin 0 -> 12046 bytes ...ound__volatile__mem__functor2-members.html | 80 + ...igc_1_1bound__volatile__mem__functor2.html | 313 + ...olatile__mem__functor2__inherit__graph.png | Bin 0 -> 12523 bytes ...ound__volatile__mem__functor3-members.html | 80 + ...igc_1_1bound__volatile__mem__functor3.html | 321 + ...olatile__mem__functor3__inherit__graph.png | Bin 0 -> 15627 bytes ...ound__volatile__mem__functor4-members.html | 80 + ...igc_1_1bound__volatile__mem__functor4.html | 329 + ...olatile__mem__functor4__inherit__graph.png | Bin 0 -> 15935 bytes ...ound__volatile__mem__functor5-members.html | 80 + ...igc_1_1bound__volatile__mem__functor5.html | 337 + ...olatile__mem__functor5__inherit__graph.png | Bin 0 -> 13786 bytes ...ound__volatile__mem__functor6-members.html | 80 + ...igc_1_1bound__volatile__mem__functor6.html | 345 + ...olatile__mem__functor6__inherit__graph.png | Bin 0 -> 16742 bytes ...ound__volatile__mem__functor7-members.html | 80 + ...igc_1_1bound__volatile__mem__functor7.html | 353 + ...olatile__mem__functor7__inherit__graph.png | Bin 0 -> 16948 bytes ..._result__type__with__decltype-members.html | 70 + ..._deduce__result__type__with__decltype.html | 109 + ...gc_1_1const__limit__reference-members.html | 72 + .../classsigc_1_1const__limit__reference.html | 191 + ...ce_3_01T__type_00_01true_01_4-members.html | 72 + ..._reference_3_01T__type_00_01true_01_4.html | 187 + ...ssigc_1_1const__mem__functor0-members.html | 76 + .../classsigc_1_1const__mem__functor0.html | 309 + ..._1const__mem__functor0__inherit__graph.png | Bin 0 -> 11780 bytes ...ssigc_1_1const__mem__functor1-members.html | 76 + .../classsigc_1_1const__mem__functor1.html | 332 + ..._1const__mem__functor1__inherit__graph.png | Bin 0 -> 12578 bytes ...ssigc_1_1const__mem__functor2-members.html | 76 + .../classsigc_1_1const__mem__functor2.html | 347 + ..._1const__mem__functor2__inherit__graph.png | Bin 0 -> 12102 bytes ...ssigc_1_1const__mem__functor3-members.html | 76 + .../classsigc_1_1const__mem__functor3.html | 362 + ..._1const__mem__functor3__inherit__graph.png | Bin 0 -> 13407 bytes ...ssigc_1_1const__mem__functor4-members.html | 76 + .../classsigc_1_1const__mem__functor4.html | 377 + ..._1const__mem__functor4__inherit__graph.png | Bin 0 -> 14333 bytes ...ssigc_1_1const__mem__functor5-members.html | 76 + .../classsigc_1_1const__mem__functor5.html | 392 + ..._1const__mem__functor5__inherit__graph.png | Bin 0 -> 13551 bytes ...ssigc_1_1const__mem__functor6-members.html | 76 + .../classsigc_1_1const__mem__functor6.html | 407 + ..._1const__mem__functor6__inherit__graph.png | Bin 0 -> 17024 bytes ...ssigc_1_1const__mem__functor7-members.html | 76 + .../classsigc_1_1const__mem__functor7.html | 422 + ..._1const__mem__functor7__inherit__graph.png | Bin 0 -> 17158 bytes ...t__volatile__limit__reference-members.html | 72 + ..._1_1const__volatile__limit__reference.html | 191 + ...ce_3_01T__type_00_01true_01_4-members.html | 72 + ..._reference_3_01T__type_00_01true_01_4.html | 187 + ...onst__volatile__mem__functor0-members.html | 76 + ...igc_1_1const__volatile__mem__functor0.html | 309 + ...olatile__mem__functor0__inherit__graph.png | Bin 0 -> 11651 bytes ...onst__volatile__mem__functor1-members.html | 76 + ...igc_1_1const__volatile__mem__functor1.html | 332 + ...olatile__mem__functor1__inherit__graph.png | Bin 0 -> 12246 bytes ...onst__volatile__mem__functor2-members.html | 76 + ...igc_1_1const__volatile__mem__functor2.html | 347 + ...olatile__mem__functor2__inherit__graph.png | Bin 0 -> 12728 bytes ...onst__volatile__mem__functor3-members.html | 76 + ...igc_1_1const__volatile__mem__functor3.html | 362 + ...olatile__mem__functor3__inherit__graph.png | Bin 0 -> 13323 bytes ...onst__volatile__mem__functor4-members.html | 76 + ...igc_1_1const__volatile__mem__functor4.html | 377 + ...olatile__mem__functor4__inherit__graph.png | Bin 0 -> 13743 bytes ...onst__volatile__mem__functor5-members.html | 76 + ...igc_1_1const__volatile__mem__functor5.html | 392 + ...olatile__mem__functor5__inherit__graph.png | Bin 0 -> 14048 bytes ...onst__volatile__mem__functor6-members.html | 76 + ...igc_1_1const__volatile__mem__functor6.html | 407 + ...olatile__mem__functor6__inherit__graph.png | Bin 0 -> 16132 bytes ...onst__volatile__mem__functor7-members.html | 76 + ...igc_1_1const__volatile__mem__functor7.html | 422 + ...olatile__mem__functor7__inherit__graph.png | Bin 0 -> 17906 bytes ...classsigc_1_1limit__reference-members.html | 72 + .../html/classsigc_1_1limit__reference.html | 191 + ...ce_3_01T__type_00_01true_01_4-members.html | 72 + ..._reference_3_01T__type_00_01true_01_4.html | 187 + .../classsigc_1_1mem__functor0-members.html | 76 + .../html/classsigc_1_1mem__functor0.html | 309 + ...ssigc_1_1mem__functor0__inherit__graph.png | Bin 0 -> 9878 bytes .../classsigc_1_1mem__functor1-members.html | 76 + .../html/classsigc_1_1mem__functor1.html | 332 + ...ssigc_1_1mem__functor1__inherit__graph.png | Bin 0 -> 12028 bytes .../classsigc_1_1mem__functor2-members.html | 76 + .../html/classsigc_1_1mem__functor2.html | 347 + ...ssigc_1_1mem__functor2__inherit__graph.png | Bin 0 -> 11923 bytes .../classsigc_1_1mem__functor3-members.html | 76 + .../html/classsigc_1_1mem__functor3.html | 362 + ...ssigc_1_1mem__functor3__inherit__graph.png | Bin 0 -> 12290 bytes .../classsigc_1_1mem__functor4-members.html | 76 + .../html/classsigc_1_1mem__functor4.html | 377 + ...ssigc_1_1mem__functor4__inherit__graph.png | Bin 0 -> 13041 bytes .../classsigc_1_1mem__functor5-members.html | 76 + .../html/classsigc_1_1mem__functor5.html | 392 + ...ssigc_1_1mem__functor5__inherit__graph.png | Bin 0 -> 13051 bytes .../classsigc_1_1mem__functor6-members.html | 76 + .../html/classsigc_1_1mem__functor6.html | 407 + ...ssigc_1_1mem__functor6__inherit__graph.png | Bin 0 -> 15289 bytes .../classsigc_1_1mem__functor7-members.html | 76 + .../html/classsigc_1_1mem__functor7.html | 422 + ...ssigc_1_1mem__functor7__inherit__graph.png | Bin 0 -> 15100 bytes ...lasssigc_1_1pointer__functor0-members.html | 74 + .../html/classsigc_1_1pointer__functor0.html | 245 + ...c_1_1pointer__functor0__inherit__graph.png | Bin 0 -> 6118 bytes ...lasssigc_1_1pointer__functor1-members.html | 74 + .../html/classsigc_1_1pointer__functor1.html | 253 + ...c_1_1pointer__functor1__inherit__graph.png | Bin 0 -> 6512 bytes ...lasssigc_1_1pointer__functor2-members.html | 74 + .../html/classsigc_1_1pointer__functor2.html | 265 + ...c_1_1pointer__functor2__inherit__graph.png | Bin 0 -> 6880 bytes ...lasssigc_1_1pointer__functor3-members.html | 74 + .../html/classsigc_1_1pointer__functor3.html | 273 + ...c_1_1pointer__functor3__inherit__graph.png | Bin 0 -> 6525 bytes ...lasssigc_1_1pointer__functor4-members.html | 74 + .../html/classsigc_1_1pointer__functor4.html | 281 + ...c_1_1pointer__functor4__inherit__graph.png | Bin 0 -> 7016 bytes ...lasssigc_1_1pointer__functor5-members.html | 74 + .../html/classsigc_1_1pointer__functor5.html | 289 + ...c_1_1pointer__functor5__inherit__graph.png | Bin 0 -> 7100 bytes ...lasssigc_1_1pointer__functor6-members.html | 74 + .../html/classsigc_1_1pointer__functor6.html | 297 + ...c_1_1pointer__functor6__inherit__graph.png | Bin 0 -> 7681 bytes ...lasssigc_1_1pointer__functor7-members.html | 74 + .../html/classsigc_1_1pointer__functor7.html | 305 + ...c_1_1pointer__functor7__inherit__graph.png | Bin 0 -> 8143 bytes .../html/classsigc_1_1signal-members.html | 126 + docs/reference/html/classsigc_1_1signal.html | 397 + .../html/classsigc_1_1signal0-members.html | 121 + docs/reference/html/classsigc_1_1signal0.html | 726 + .../classsigc_1_1signal0__inherit__graph.png | Bin 0 -> 16168 bytes .../html/classsigc_1_1signal1-members.html | 121 + docs/reference/html/classsigc_1_1signal1.html | 736 + .../classsigc_1_1signal1__inherit__graph.png | Bin 0 -> 17510 bytes .../html/classsigc_1_1signal2-members.html | 121 + docs/reference/html/classsigc_1_1signal2.html | 768 + .../classsigc_1_1signal2__inherit__graph.png | Bin 0 -> 18762 bytes .../html/classsigc_1_1signal3-members.html | 121 + docs/reference/html/classsigc_1_1signal3.html | 788 + .../classsigc_1_1signal3__inherit__graph.png | Bin 0 -> 19515 bytes .../html/classsigc_1_1signal4-members.html | 121 + docs/reference/html/classsigc_1_1signal4.html | 808 + .../classsigc_1_1signal4__inherit__graph.png | Bin 0 -> 19374 bytes .../html/classsigc_1_1signal5-members.html | 121 + docs/reference/html/classsigc_1_1signal5.html | 828 + .../classsigc_1_1signal5__inherit__graph.png | Bin 0 -> 20320 bytes .../html/classsigc_1_1signal6-members.html | 121 + docs/reference/html/classsigc_1_1signal6.html | 848 + .../classsigc_1_1signal6__inherit__graph.png | Bin 0 -> 20701 bytes .../html/classsigc_1_1signal7-members.html | 121 + docs/reference/html/classsigc_1_1signal7.html | 868 + .../classsigc_1_1signal7__inherit__graph.png | Bin 0 -> 26043 bytes ...sigc_1_1signal_1_1accumulated-members.html | 123 + .../classsigc_1_1signal_1_1accumulated.html | 298 + ...1signal_1_1accumulated__inherit__graph.png | Bin 0 -> 16194 bytes ...0_01T__arg3_00_01T__arg4_08_4-members.html | 126 + ...__arg2_00_01T__arg3_00_01T__arg4_08_4.html | 381 + ...0_01T__arg2_00_01T__arg3_08_4-members.html | 126 + ...__arg1_00_01T__arg2_00_01T__arg3_08_4.html | 381 + ...arg2_00_01T__arg3_08_4_1_1accumulated.html | 295 + ...arg2_00_01T__arg3_08_4__inherit__graph.png | Bin 0 -> 11202 bytes ...n_07T__arg1_00_01T__arg2_08_4-members.html | 126 + ...T__return_07T__arg1_00_01T__arg2_08_4.html | 381 + ...01T__arg2_08_4_1_1accumulated-members.html | 123 + ...arg1_00_01T__arg2_08_4_1_1accumulated.html | 295 + ...g2_08_4_1_1accumulated__inherit__graph.png | Bin 0 -> 13501 bytes ...arg1_00_01T__arg2_08_4__inherit__graph.png | Bin 0 -> 12061 bytes ..._3_01T__return_07T__arg1_08_4-members.html | 126 + ..._1signal_3_01T__return_07T__arg1_08_4.html | 381 + ...07T__arg1_08_4_1_1accumulated-members.html | 123 + ..._return_07T__arg1_08_4_1_1accumulated.html | 295 + ...g1_08_4_1_1accumulated__inherit__graph.png | Bin 0 -> 12950 bytes ..._return_07T__arg1_08_4__inherit__graph.png | Bin 0 -> 11513 bytes ...1signal_3_01T__return_07_08_4-members.html | 126 + ...ssigc_1_1signal_3_01T__return_07_08_4.html | 375 + ...return_07_08_4_1_1accumulated-members.html | 123 + ..._3_01T__return_07_08_4_1_1accumulated.html | 295 + ...07_08_4_1_1accumulated__inherit__graph.png | Bin 0 -> 13270 bytes ..._3_01T__return_07_08_4__inherit__graph.png | Bin 0 -> 9365 bytes .../classsigc_1_1signal__inherit__graph.png | Bin 0 -> 12389 bytes .../html/classsigc_1_1slot-members.html | 110 + docs/reference/html/classsigc_1_1slot.html | 448 + .../html/classsigc_1_1slot0-members.html | 96 + docs/reference/html/classsigc_1_1slot0.html | 431 + .../classsigc_1_1slot0__inherit__graph.png | Bin 0 -> 10530 bytes .../html/classsigc_1_1slot1-members.html | 97 + docs/reference/html/classsigc_1_1slot1.html | 455 + .../classsigc_1_1slot1__inherit__graph.png | Bin 0 -> 10631 bytes .../html/classsigc_1_1slot2-members.html | 98 + docs/reference/html/classsigc_1_1slot2.html | 483 + .../classsigc_1_1slot2__inherit__graph.png | Bin 0 -> 11049 bytes .../html/classsigc_1_1slot3-members.html | 99 + docs/reference/html/classsigc_1_1slot3.html | 507 + .../classsigc_1_1slot3__inherit__graph.png | Bin 0 -> 11642 bytes .../html/classsigc_1_1slot4-members.html | 100 + docs/reference/html/classsigc_1_1slot4.html | 531 + .../classsigc_1_1slot4__inherit__graph.png | Bin 0 -> 12764 bytes .../html/classsigc_1_1slot5-members.html | 101 + docs/reference/html/classsigc_1_1slot5.html | 555 + .../classsigc_1_1slot5__inherit__graph.png | Bin 0 -> 13222 bytes .../html/classsigc_1_1slot6-members.html | 102 + docs/reference/html/classsigc_1_1slot6.html | 579 + .../classsigc_1_1slot6__inherit__graph.png | Bin 0 -> 13712 bytes .../html/classsigc_1_1slot7-members.html | 103 + docs/reference/html/classsigc_1_1slot7.html | 603 + .../classsigc_1_1slot7__inherit__graph.png | Bin 0 -> 14405 bytes ...T__return_07T__arg_8_8_8_08_4-members.html | 96 + ...lot_3_01T__return_07T__arg_8_8_8_08_4.html | 437 + ...rn_07T__arg_8_8_8_08_4__inherit__graph.png | Bin 0 -> 7155 bytes .../html/classsigc_1_1slot__base-members.html | 88 + .../html/classsigc_1_1slot__base.html | 648 + ...lasssigc_1_1slot__base__inherit__graph.png | Bin 0 -> 102554 bytes .../classsigc_1_1slot__inherit__graph.png | Bin 0 -> 14435 bytes ...ssigc_1_1track__obj__functor1-members.html | 82 + .../classsigc_1_1track__obj__functor1.html | 700 + ..._1track__obj__functor1__inherit__graph.png | Bin 0 -> 46862 bytes ...ssigc_1_1track__obj__functor2-members.html | 83 + .../classsigc_1_1track__obj__functor2.html | 216 + ..._1track__obj__functor2__inherit__graph.png | Bin 0 -> 15475 bytes ...ssigc_1_1track__obj__functor3-members.html | 83 + .../classsigc_1_1track__obj__functor3.html | 224 + ..._1track__obj__functor3__inherit__graph.png | Bin 0 -> 16211 bytes ...ssigc_1_1track__obj__functor4-members.html | 83 + .../classsigc_1_1track__obj__functor4.html | 232 + ..._1track__obj__functor4__inherit__graph.png | Bin 0 -> 16337 bytes ...ssigc_1_1track__obj__functor5-members.html | 83 + .../classsigc_1_1track__obj__functor5.html | 240 + ..._1track__obj__functor5__inherit__graph.png | Bin 0 -> 16553 bytes ...ssigc_1_1track__obj__functor6-members.html | 83 + .../classsigc_1_1track__obj__functor6.html | 248 + ..._1track__obj__functor6__inherit__graph.png | Bin 0 -> 19290 bytes ...ssigc_1_1track__obj__functor7-members.html | 83 + .../classsigc_1_1track__obj__functor7.html | 256 + ..._1track__obj__functor7__inherit__graph.png | Bin 0 -> 19356 bytes ...1_1volatile__limit__reference-members.html | 72 + ...asssigc_1_1volatile__limit__reference.html | 191 + ...ce_3_01T__type_00_01true_01_4-members.html | 72 + ..._reference_3_01T__type_00_01true_01_4.html | 187 + ...gc_1_1volatile__mem__functor0-members.html | 76 + .../classsigc_1_1volatile__mem__functor0.html | 309 + ...olatile__mem__functor0__inherit__graph.png | Bin 0 -> 11425 bytes ...gc_1_1volatile__mem__functor1-members.html | 76 + .../classsigc_1_1volatile__mem__functor1.html | 332 + ...olatile__mem__functor1__inherit__graph.png | Bin 0 -> 12037 bytes ...gc_1_1volatile__mem__functor2-members.html | 76 + .../classsigc_1_1volatile__mem__functor2.html | 347 + ...olatile__mem__functor2__inherit__graph.png | Bin 0 -> 12486 bytes ...gc_1_1volatile__mem__functor3-members.html | 76 + .../classsigc_1_1volatile__mem__functor3.html | 362 + ...olatile__mem__functor3__inherit__graph.png | Bin 0 -> 15461 bytes ...gc_1_1volatile__mem__functor4-members.html | 76 + .../classsigc_1_1volatile__mem__functor4.html | 377 + ...olatile__mem__functor4__inherit__graph.png | Bin 0 -> 13498 bytes ...gc_1_1volatile__mem__functor5-members.html | 76 + .../classsigc_1_1volatile__mem__functor5.html | 392 + ...olatile__mem__functor5__inherit__graph.png | Bin 0 -> 13793 bytes ...gc_1_1volatile__mem__functor6-members.html | 76 + .../classsigc_1_1volatile__mem__functor6.html | 407 + ...olatile__mem__functor6__inherit__graph.png | Bin 0 -> 17451 bytes ...gc_1_1volatile__mem__functor7-members.html | 76 + .../classsigc_1_1volatile__mem__functor7.html | 422 + ...olatile__mem__functor7__inherit__graph.png | Bin 0 -> 17675 bytes docs/reference/html/closed.png | Bin 0 -> 132 bytes docs/reference/html/deprecated.html | 418 + .../dir_49637f7a506fb46452b61fa9242e94fa.html | 87 + .../dir_707459f1045f56e3cfd726c166cb6440.html | 73 + .../dir_a7a614a8e549e28882ee9909ca095aec.html | 91 + .../dir_cfdc85331b77931098d1cb943916d356.html | 70 + .../dir_d1b074183e01b19b1ce0df6f4868a06f.html | 66 + .../dir_d27af17c007bf8336206730e5f9cd2f1.html | 66 + .../dir_e7ee533ee50f0002bd12390b80ea971b.html | 66 + docs/reference/html/doc.png | Bin 0 -> 746 bytes docs/reference/html/doxygen-extra.css | 263 + docs/reference/html/doxygen.css | 1475 ++ docs/reference/html/doxygen.png | Bin 0 -> 3779 bytes docs/reference/html/dynsections.js | 97 + docs/reference/html/folderclosed.png | Bin 0 -> 616 bytes docs/reference/html/folderopen.png | Bin 0 -> 597 bytes docs/reference/html/functions.html | 179 + docs/reference/html/functions_0x7e.html | 109 + docs/reference/html/functions_b.html | 228 + docs/reference/html/functions_c.html | 208 + docs/reference/html/functions_d.html | 105 + docs/reference/html/functions_e.html | 140 + docs/reference/html/functions_f.html | 218 + docs/reference/html/functions_func.html | 121 + docs/reference/html/functions_func_0x7e.html | 108 + docs/reference/html/functions_func_b.html | 218 + docs/reference/html/functions_func_c.html | 178 + docs/reference/html/functions_func_d.html | 100 + docs/reference/html/functions_func_e.html | 129 + docs/reference/html/functions_func_f.html | 96 + docs/reference/html/functions_func_h.html | 97 + docs/reference/html/functions_func_i.html | 114 + docs/reference/html/functions_func_l.html | 97 + docs/reference/html/functions_func_m.html | 127 + docs/reference/html/functions_func_n.html | 99 + docs/reference/html/functions_func_o.html | 279 + docs/reference/html/functions_func_p.html | 129 + docs/reference/html/functions_func_r.html | 113 + docs/reference/html/functions_func_s.html | 201 + docs/reference/html/functions_func_t.html | 120 + docs/reference/html/functions_func_u.html | 98 + docs/reference/html/functions_func_v.html | 135 + docs/reference/html/functions_g.html | 112 + docs/reference/html/functions_h.html | 98 + docs/reference/html/functions_i.html | 142 + docs/reference/html/functions_l.html | 101 + docs/reference/html/functions_m.html | 128 + docs/reference/html/functions_n.html | 100 + docs/reference/html/functions_o.html | 314 + docs/reference/html/functions_p.html | 151 + docs/reference/html/functions_r.html | 213 + docs/reference/html/functions_s.html | 234 + docs/reference/html/functions_t.html | 135 + docs/reference/html/functions_type.html | 143 + docs/reference/html/functions_type_c.html | 111 + docs/reference/html/functions_type_d.html | 90 + docs/reference/html/functions_type_e.html | 96 + docs/reference/html/functions_type_f.html | 161 + docs/reference/html/functions_type_g.html | 95 + docs/reference/html/functions_type_i.html | 106 + docs/reference/html/functions_type_p.html | 107 + docs/reference/html/functions_type_r.html | 179 + docs/reference/html/functions_type_s.html | 118 + docs/reference/html/functions_type_t.html | 100 + docs/reference/html/functions_type_v.html | 90 + docs/reference/html/functions_u.html | 99 + docs/reference/html/functions_v.html | 147 + docs/reference/html/functions_vars.html | 240 + docs/reference/html/graph_legend.html | 83 + docs/reference/html/graph_legend.png | Bin 0 -> 22461 bytes docs/reference/html/group__adaptors.html | 104 + docs/reference/html/group__bind.html | 697 + docs/reference/html/group__compose.html | 187 + .../html/group__exception__catch.html | 64 + docs/reference/html/group__hide.html | 206 + docs/reference/html/group__mem__fun.html | 2510 ++ docs/reference/html/group__ptr__fun.html | 724 + docs/reference/html/group__retype.html | 3045 +++ docs/reference/html/group__sigcfunctors.html | 250 + docs/reference/html/group__signal.html | 124 + docs/reference/html/group__slot.html | 118 + docs/reference/html/group__track__obj.html | 599 + docs/reference/html/hierarchy.html | 280 + docs/reference/html/index.html | 83 + docs/reference/html/inherit_graph_0.png | Bin 0 -> 3140 bytes docs/reference/html/inherit_graph_1.png | Bin 0 -> 3411 bytes docs/reference/html/inherit_graph_10.png | Bin 0 -> 2983 bytes docs/reference/html/inherit_graph_11.png | Bin 0 -> 3123 bytes docs/reference/html/inherit_graph_12.png | Bin 0 -> 3186 bytes docs/reference/html/inherit_graph_13.png | Bin 0 -> 4804 bytes docs/reference/html/inherit_graph_14.png | Bin 0 -> 1325 bytes docs/reference/html/inherit_graph_15.png | Bin 0 -> 2668 bytes docs/reference/html/inherit_graph_16.png | Bin 0 -> 4069 bytes docs/reference/html/inherit_graph_17.png | Bin 0 -> 3136 bytes docs/reference/html/inherit_graph_18.png | Bin 0 -> 3184 bytes docs/reference/html/inherit_graph_19.png | Bin 0 -> 3440 bytes docs/reference/html/inherit_graph_2.png | Bin 0 -> 3647 bytes docs/reference/html/inherit_graph_20.png | Bin 0 -> 3452 bytes docs/reference/html/inherit_graph_21.png | Bin 0 -> 5582 bytes docs/reference/html/inherit_graph_22.png | Bin 0 -> 4490 bytes docs/reference/html/inherit_graph_23.png | Bin 0 -> 4369 bytes docs/reference/html/inherit_graph_24.png | Bin 0 -> 890528 bytes docs/reference/html/inherit_graph_25.png | Bin 0 -> 5936 bytes docs/reference/html/inherit_graph_26.png | Bin 0 -> 3625 bytes docs/reference/html/inherit_graph_27.png | Bin 0 -> 2488 bytes docs/reference/html/inherit_graph_28.png | Bin 0 -> 3907 bytes docs/reference/html/inherit_graph_29.png | Bin 0 -> 2883 bytes docs/reference/html/inherit_graph_3.png | Bin 0 -> 3081 bytes docs/reference/html/inherit_graph_30.png | Bin 0 -> 2966 bytes docs/reference/html/inherit_graph_31.png | Bin 0 -> 956 bytes docs/reference/html/inherit_graph_32.png | Bin 0 -> 2999 bytes docs/reference/html/inherit_graph_33.png | Bin 0 -> 2624 bytes docs/reference/html/inherit_graph_34.png | Bin 0 -> 2482 bytes docs/reference/html/inherit_graph_35.png | Bin 0 -> 2095 bytes docs/reference/html/inherit_graph_36.png | Bin 0 -> 382261 bytes docs/reference/html/inherit_graph_37.png | Bin 0 -> 3190 bytes docs/reference/html/inherit_graph_38.png | Bin 0 -> 2902 bytes docs/reference/html/inherit_graph_39.png | Bin 0 -> 2688 bytes docs/reference/html/inherit_graph_4.png | Bin 0 -> 2872 bytes docs/reference/html/inherit_graph_40.png | Bin 0 -> 2987 bytes docs/reference/html/inherit_graph_41.png | Bin 0 -> 2216 bytes docs/reference/html/inherit_graph_42.png | Bin 0 -> 5441 bytes docs/reference/html/inherit_graph_43.png | Bin 0 -> 4738 bytes docs/reference/html/inherit_graph_44.png | Bin 0 -> 5397 bytes docs/reference/html/inherit_graph_45.png | Bin 0 -> 2933 bytes docs/reference/html/inherit_graph_46.png | Bin 0 -> 2096 bytes docs/reference/html/inherit_graph_47.png | Bin 0 -> 3509 bytes docs/reference/html/inherit_graph_48.png | Bin 0 -> 5348 bytes docs/reference/html/inherit_graph_49.png | Bin 0 -> 3465 bytes docs/reference/html/inherit_graph_5.png | Bin 0 -> 6402 bytes docs/reference/html/inherit_graph_6.png | Bin 0 -> 5904 bytes docs/reference/html/inherit_graph_7.png | Bin 0 -> 5167 bytes docs/reference/html/inherit_graph_8.png | Bin 0 -> 5802 bytes docs/reference/html/inherit_graph_9.png | Bin 0 -> 3113 bytes docs/reference/html/inherits.html | 478 + docs/reference/html/jquery.js | 68 + docs/reference/html/modules.html | 70 + docs/reference/html/namespacemembers.html | 88 + docs/reference/html/namespacemembers_c.html | 85 + docs/reference/html/namespacemembers_d.html | 85 + docs/reference/html/namespacemembers_e.html | 85 + .../reference/html/namespacemembers_func.html | 87 + .../html/namespacemembers_func_c.html | 84 + .../html/namespacemembers_func_e.html | 84 + .../html/namespacemembers_func_h.html | 87 + .../html/namespacemembers_func_m.html | 108 + .../html/namespacemembers_func_p.html | 108 + .../html/namespacemembers_func_r.html | 90 + .../html/namespacemembers_func_t.html | 84 + .../html/namespacemembers_func_u.html | 84 + .../html/namespacemembers_func_v.html | 87 + docs/reference/html/namespacemembers_h.html | 88 + docs/reference/html/namespacemembers_m.html | 109 + docs/reference/html/namespacemembers_p.html | 109 + docs/reference/html/namespacemembers_r.html | 91 + docs/reference/html/namespacemembers_t.html | 91 + .../reference/html/namespacemembers_type.html | 74 + docs/reference/html/namespacemembers_u.html | 85 + docs/reference/html/namespacemembers_v.html | 88 + docs/reference/html/namespaces.html | 65 + docs/reference/html/namespacesigc.html | 8178 ++++++ docs/reference/html/nav_f.png | Bin 0 -> 153 bytes docs/reference/html/nav_g.png | Bin 0 -> 95 bytes docs/reference/html/nav_h.png | Bin 0 -> 98 bytes docs/reference/html/open.png | Bin 0 -> 123 bytes docs/reference/html/pages.html | 62 + docs/reference/html/since_2_2_11.html | 58 + docs/reference/html/since_2_4.html | 92 + docs/reference/html/since_2_8.html | 76 + docs/reference/html/splitbar.png | Bin 0 -> 314 bytes .../html/structsigc_1_1adaptor__base.html | 106 + ...tsigc_1_1adaptor__base__inherit__graph.png | Bin 0 -> 133685 bytes ...tructsigc_1_1adaptor__functor-members.html | 82 + .../html/structsigc_1_1adaptor__functor.html | 738 + ...gc_1_1adaptor__functor__inherit__graph.png | Bin 0 -> 7740 bytes .../html/structsigc_1_1adaptor__trait.html | 78 + ..._01T__functor_00_01false_01_4-members.html | 72 + ..._trait_3_01T__functor_00_01false_01_4.html | 133 + ...3_01T__functor_00_01true_01_4-members.html | 72 + ...__trait_3_01T__functor_00_01true_01_4.html | 133 + .../html/structsigc_1_1adapts-members.html | 73 + docs/reference/html/structsigc_1_1adapts.html | 220 + .../structsigc_1_1adapts__inherit__graph.png | Bin 0 -> 109174 bytes .../html/structsigc_1_1bind__functor.html | 88 + ...sigc_1_1bind__return__functor-members.html | 83 + .../structsigc_1_1bind__return__functor.html | 687 + ...1bind__return__functor__inherit__graph.png | Bin 0 -> 11006 bytes ...ructsigc_1_1compose1__functor-members.html | 85 + .../html/structsigc_1_1compose1__functor.html | 637 + ...c_1_1compose1__functor__inherit__graph.png | Bin 0 -> 10582 bytes ...ructsigc_1_1compose2__functor-members.html | 87 + .../html/structsigc_1_1compose2__functor.html | 677 + ...c_1_1compose2__functor__inherit__graph.png | Bin 0 -> 12852 bytes .../structsigc_1_1connection-members.html | 84 + .../html/structsigc_1_1connection.html | 534 + ..._1_1const__reference__wrapper-members.html | 72 + ...ructsigc_1_1const__reference__wrapper.html | 163 + ...tsigc_1_1deduce__result__type-members.html | 72 + .../structsigc_1_1deduce__result__type.html | 168 + ..._1_1exception__catch__functor-members.html | 83 + ...ructsigc_1_1exception__catch__functor.html | 582 + ...0_01T__catcher_00_01void_01_4-members.html | 85 + ...unctor_00_01T__catcher_00_01void_01_4.html | 636 + ...eption__catch__functor__inherit__graph.png | Bin 0 -> 13209 bytes .../html/structsigc_1_1functor__base.html | 129 + ...tsigc_1_1functor__base__inherit__graph.png | Bin 0 -> 472356 bytes .../structsigc_1_1functor__trait-members.html | 71 + .../html/structsigc_1_1functor__trait.html | 125 + .../html/structsigc_1_1hide__functor.html | 82 + ...ctor_3-1_00_01T__functor_01_4-members.html | 81 + ...ide__functor_3-1_00_01T__functor_01_4.html | 644 + ...1_00_01T__functor_01_4__inherit__graph.png | Bin 0 -> 10646 bytes ...or_3_010_00_01T__functor_01_4-members.html | 81 + ...e__functor_3_010_00_01T__functor_01_4.html | 644 + ...0_00_01T__functor_01_4__inherit__graph.png | Bin 0 -> 10726 bytes docs/reference/html/structsigc_1_1nil.html | 74 + ...uctsigc_1_1reference__wrapper-members.html | 72 + .../structsigc_1_1reference__wrapper.html | 163 + ...structsigc_1_1retype__functor-members.html | 82 + .../html/structsigc_1_1retype__functor.html | 582 + ...igc_1_1retype__functor__inherit__graph.png | Bin 0 -> 13521 bytes ...gc_1_1retype__return__functor-members.html | 83 + ...structsigc_1_1retype__return__functor.html | 587 + ...3_01void_00_01T__functor_01_4-members.html | 83 + ...functor_3_01void_00_01T__functor_01_4.html | 574 + ...d_00_01T__functor_01_4__inherit__graph.png | Bin 0 -> 11003 bytes ...etype__return__functor__inherit__graph.png | Bin 0 -> 12947 bytes .../structsigc_1_1signal__base-members.html | 100 + .../html/structsigc_1_1signal__base.html | 772 + ...ctsigc_1_1signal__base__inherit__graph.png | Bin 0 -> 318071 bytes ...sigc_1_1slot__const__iterator-members.html | 88 + .../structsigc_1_1slot__const__iterator.html | 514 + .../structsigc_1_1slot__iterator-members.html | 88 + .../html/structsigc_1_1slot__iterator.html | 514 + .../structsigc_1_1slot__list-members.html | 101 + .../html/structsigc_1_1slot__list.html | 919 + .../html/structsigc_1_1trackable-members.html | 79 + .../html/structsigc_1_1trackable.html | 367 + ...tructsigc_1_1trackable__inherit__graph.png | Bin 0 -> 326166 bytes .../structsigc_1_1type__trait-members.html | 71 + .../html/structsigc_1_1type__trait.html | 108 + ...1type__trait_3_01T__type[N]_4-members.html | 71 + ...tsigc_1_1type__trait_3_01T__type[N]_4.html | 108 + ...__trait_3_01T__type_01_6_01_4-members.html | 71 + ..._1_1type__trait_3_01T__type_01_6_01_4.html | 108 + ...3_01const_01T__type_01_6_01_4-members.html | 71 + ...__trait_3_01const_01T__type_01_6_01_4.html | 108 + ..._1_1type__trait_3_01void_01_4-members.html | 71 + ...ructsigc_1_1type__trait_3_01void_01_4.html | 104 + ...ructsigc_1_1unwrap__reference-members.html | 70 + .../html/structsigc_1_1unwrap__reference.html | 92 + ...wrapper_3_01T__type_01_4_01_4-members.html | 70 + ...erence__wrapper_3_01T__type_01_4_01_4.html | 92 + ...wrapper_3_01T__type_01_4_01_4-members.html | 70 + ...erence__wrapper_3_01T__type_01_4_01_4.html | 92 + ...wrapper_3_01T__type_01_4_01_4-members.html | 70 + ...erence__wrapper_3_01T__type_01_4_01_4.html | 92 + .../html/structsigc_1_1visitor-members.html | 70 + .../reference/html/structsigc_1_1visitor.html | 127 + docs/reference/html/sync_off.png | Bin 0 -> 853 bytes docs/reference/html/sync_on.png | Bin 0 -> 845 bytes docs/reference/html/tab_a.png | Bin 0 -> 142 bytes docs/reference/html/tab_b.png | Bin 0 -> 169 bytes docs/reference/html/tab_h.png | Bin 0 -> 177 bytes docs/reference/html/tab_s.png | Bin 0 -> 184 bytes docs/reference/html/tabs.css | 60 + docs/reference/libsigc++-2.0.devhelp2 | 2131 ++ docs/reference/libsigc++-2.0.tag | 15562 ++++++++++++ docs/reference/meson.build | 152 + docs/tagfile-to-devhelp2.xsl | 139 + examples/Makefile.am | 25 + examples/Makefile.in | 648 + examples/hello_world.cc | 26 + examples/member_method.cc | 46 + examples/meson.build | 28 + meson.build | 275 + meson_options.txt | 16 + sigc++-uninstalled.pc.in | 9 + sigc++.pc.in | 18 + sigc++/Makefile.am | 76 + sigc++/Makefile.in | 895 + sigc++/adaptors/adaptor_trait.h | 403 + sigc++/adaptors/adaptors.h | 32 + sigc++/adaptors/bind.h | 2316 ++ sigc++/adaptors/bind_return.h | 233 + sigc++/adaptors/bound_argument.h | 209 + sigc++/adaptors/compose.h | 306 + sigc++/adaptors/deduce_result_type.h | 71 + sigc++/adaptors/exception_catch.h | 330 + sigc++/adaptors/hide.h | 1078 + sigc++/adaptors/lambda/base.h | 272 + sigc++/adaptors/lambda/lambda.cc | 31 + sigc++/adaptors/lambda/macros/base.h.m4 | 210 + sigc++/adaptors/lambda/macros/lambda.cc.m4 | 36 + sigc++/adaptors/lambda/macros/select.h.m4 | 77 + sigc++/adaptors/lambda/select.h | 342 + sigc++/adaptors/macros/adaptor_trait.h.m4 | 326 + sigc++/adaptors/macros/bind.h.m4 | 417 + sigc++/adaptors/macros/bind_return.h.m4 | 126 + sigc++/adaptors/macros/compose.h.m4 | 240 + .../adaptors/macros/deduce_result_type.h.m4 | 91 + sigc++/adaptors/macros/exception_catch.h.m4 | 183 + sigc++/adaptors/macros/hide.h.m4 | 251 + sigc++/adaptors/macros/retype.h.m4 | 222 + sigc++/adaptors/macros/retype_return.h.m4 | 173 + sigc++/adaptors/macros/track_obj.h.m4 | 225 + sigc++/adaptors/retype.h | 1266 + sigc++/adaptors/retype_return.h | 317 + sigc++/adaptors/track_obj.h | 874 + sigc++/bind.h | 24 + sigc++/bind_return.h | 25 + sigc++/connection.cc | 109 + sigc++/connection.h | 130 + sigc++/filelist.am | 77 + sigc++/functors/functor_trait.h | 417 + sigc++/functors/functors.h | 27 + sigc++/functors/macros/functor_trait.h.m4 | 277 + sigc++/functors/macros/mem_fun.h.m4 | 300 + sigc++/functors/macros/ptr_fun.h.m4 | 126 + sigc++/functors/macros/slot.h.m4 | 659 + sigc++/functors/mem_fun.h | 7071 ++++++ sigc++/functors/ptr_fun.h | 542 + sigc++/functors/slot.h | 2342 ++ sigc++/functors/slot_base.cc | 320 + sigc++/functors/slot_base.h | 387 + sigc++/limit_reference.h | 471 + sigc++/macros/limit_reference.h.m4 | 158 + sigc++/macros/signal.h.m4 | 1292 + sigc++/macros/template.macros.m4 | 86 + sigc++/meson.build | 249 + sigc++/reference_wrapper.h | 144 + sigc++/retype_return.h | 25 + sigc++/sigc++.h | 110 + sigc++/signal.h | 4871 ++++ sigc++/signal_base.cc | 311 + sigc++/signal_base.h | 425 + sigc++/slot.h | 20 + sigc++/trackable.cc | 151 + sigc++/trackable.h | 161 + sigc++/type_traits.h | 70 + sigc++/visit_each.h | 206 + sigc++config.h.in | 84 + sigc++config.h.meson | 89 + tests/Makefile.am | 101 + tests/Makefile.in | 1738 ++ tests/benchmark.cc | 114 + tests/meson.build | 92 + tests/test_accum_iter.cc | 52 + tests/test_accumulated.cc | 146 + tests/test_bind.cc | 166 + tests/test_bind_as_slot.cc | 71 + tests/test_bind_ref.cc | 73 + tests/test_bind_refptr.cc | 481 + tests/test_bind_return.cc | 79 + tests/test_compose.cc | 112 + tests/test_copy_invalid_slot.cc | 65 + tests/test_cpp11_lambda.cc | 499 + tests/test_custom.cc | 27 + tests/test_deduce_result_type.cc | 76 + tests/test_disconnect.cc | 170 + tests/test_disconnect_during_emit.cc | 51 + tests/test_exception_catch.cc | 84 + tests/test_functor_trait.cc | 98 + tests/test_hide.cc | 70 + tests/test_limit_reference.cc | 65 + tests/test_mem_fun.cc | 197 + tests/test_ptr_fun.cc | 88 + tests/test_retype.cc | 119 + tests/test_retype_return.cc | 68 + tests/test_signal.cc | 169 + tests/test_signal_move.cc | 52 + tests/test_size.cc | 51 + tests/test_slot.cc | 122 + tests/test_slot_disconnect.cc | 52 + tests/test_slot_move.cc | 67 + tests/test_track_obj.cc | 224 + tests/test_trackable.cc | 50 + tests/test_trackable_move.cc | 80 + tests/test_visit_each.cc | 204 + tests/testutilities.cc | 92 + tests/testutilities.h | 55 + tools/dist-cmd.py | 12 + ...mplate_specialization_operator_overload.cc | 37 + tools/handle-built-files.py | 137 + tools/have_sun_reverse_iterator.cc | 10 + ...mplate_specialization_operator_overload.cc | 37 + tools/pragma_push_pop_macro.cc | 38 + tools/tutorial-custom-cmd.py | 173 + untracked/README | 41 + 818 files changed, 224134 insertions(+) create mode 100644 AUTHORS create mode 100644 COPYING create mode 100644 ChangeLog create mode 100644 INSTALL create mode 100644 MSVC_NMake/Makefile.vc create mode 100644 MSVC_NMake/README.txt create mode 100644 MSVC_NMake/build-rules-msvc.mak create mode 100644 MSVC_NMake/config-msvc.mak create mode 100644 MSVC_NMake/create-lists-msvc.mak create mode 100644 MSVC_NMake/create-lists.bat create mode 100644 MSVC_NMake/detectenv-msvc.mak create mode 100644 MSVC_NMake/filelist.am create mode 100644 MSVC_NMake/generate-msvc.mak create mode 100644 MSVC_NMake/info-msvc.mak create mode 100644 MSVC_NMake/install.mak create mode 100644 MSVC_NMake/meson.build create mode 100644 MSVC_NMake/sigc++config.h create mode 100644 MSVC_NMake/sigc.rc create mode 100644 MSVC_NMake/sigc.rc.in create mode 100644 Makefile.am create mode 100644 Makefile.in create mode 100644 NEWS create mode 100644 README create mode 100644 aclocal.m4 create mode 100755 autogen.sh create mode 100644 build/ax_boost_base.m4 create mode 100644 build/ax_boost_system.m4 create mode 100644 build/ax_boost_timer.m4 create mode 100755 build/compile create mode 100755 build/config.guess create mode 100755 build/config.sub create mode 100644 build/cxx.m4 create mode 100644 build/cxx_std.m4 create mode 100755 build/depcomp create mode 100644 build/dist-changelog.am create mode 100644 build/doc-reference.am create mode 100755 build/install-sh create mode 100644 build/libtool.m4 create mode 100644 build/ltmain.sh create mode 100644 build/ltoptions.m4 create mode 100644 build/ltsugar.m4 create mode 100644 build/ltversion.m4 create mode 100644 build/lt~obsolete.m4 create mode 100755 build/missing create mode 100755 build/test-driver create mode 100644 config.h.in create mode 100755 configure create mode 100644 configure.ac create mode 100644 docs/Makefile.am create mode 100644 docs/Makefile.in create mode 100644 docs/doc-install.pl create mode 100644 docs/doc-manual.am create mode 100644 docs/doc-postprocess.pl create mode 100644 docs/doxygen-extra.css create mode 100644 docs/doxygen.css create mode 100644 docs/images/libsigc_logo.gif create mode 100644 docs/images/top.gif create mode 100644 docs/index.html create mode 100644 docs/manual/README create mode 100644 docs/manual/html/ch01.html create mode 100644 docs/manual/html/ch02.html create mode 100644 docs/manual/html/ch02s02.html create mode 100644 docs/manual/html/ch02s03.html create mode 100644 docs/manual/html/ch02s04.html create mode 100644 docs/manual/html/ch03.html create mode 100644 docs/manual/html/ch03s02.html create mode 100644 docs/manual/html/ch04.html create mode 100644 docs/manual/html/ch04s02.html create mode 100644 docs/manual/html/ch05.html create mode 100644 docs/manual/html/index.html create mode 100644 docs/manual/libsigc_manual.xml create mode 100644 docs/manual/meson.build create mode 100644 docs/reference/Doxyfile.in create mode 100644 docs/reference/html/annotated.html create mode 100644 docs/reference/html/arrowdown.png create mode 100644 docs/reference/html/arrowright.png create mode 100644 docs/reference/html/bc_s.png create mode 100644 docs/reference/html/bdwn.png create mode 100644 docs/reference/html/classes.html create mode 100644 docs/reference/html/classsigc_1_1bound__argument-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__argument.html create mode 100644 docs/reference/html/classsigc_1_1bound__argument_3_01const__reference__wrapper_3_01T__wrapped_01_4_01_4-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__argument_3_01const__reference__wrapper_3_01T__wrapped_01_4_01_4.html create mode 100644 docs/reference/html/classsigc_1_1bound__argument_3_01reference__wrapper_3_01T__wrapped_01_4_01_4-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__argument_3_01reference__wrapper_3_01T__wrapped_01_4_01_4.html create mode 100644 docs/reference/html/classsigc_1_1bound__argument_3_01std_1_1reference__wrapper_3_01T__wrapped_01_4_01_4-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__argument_3_01std_1_1reference__wrapper_3_01T__wrapped_01_4_01_4.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor0-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor0.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor0__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor1-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor1.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor1__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor2-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor2.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor2__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor3-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor3.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor3__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor4-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor4.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor5-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor5.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor5__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor6-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor6.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor6__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor7-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor7.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__mem__functor7__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor0-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor0.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor0__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor1-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor1.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor1__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor2-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor2.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor2__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor3-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor3.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor3__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor4-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor4.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor5-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor5.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor5__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor6-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor6.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor6__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor7-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor7.html create mode 100644 docs/reference/html/classsigc_1_1bound__const__volatile__mem__functor7__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor0-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor0.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor0__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor1-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor1.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor1__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor2-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor2.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor2__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor3-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor3.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor3__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor4-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor4.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor5-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor5.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor5__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor6-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor6.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor6__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor7-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor7.html create mode 100644 docs/reference/html/classsigc_1_1bound__mem__functor7__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor0-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor0.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor0__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor1-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor1.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor1__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor2-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor2.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor2__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor3-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor3.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor3__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor4-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor4.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor5-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor5.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor5__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor6-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor6.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor6__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor7-members.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor7.html create mode 100644 docs/reference/html/classsigc_1_1bound__volatile__mem__functor7__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1can__deduce__result__type__with__decltype-members.html create mode 100644 docs/reference/html/classsigc_1_1can__deduce__result__type__with__decltype.html create mode 100644 docs/reference/html/classsigc_1_1const__limit__reference-members.html create mode 100644 docs/reference/html/classsigc_1_1const__limit__reference.html create mode 100644 docs/reference/html/classsigc_1_1const__limit__reference_3_01T__type_00_01true_01_4-members.html create mode 100644 docs/reference/html/classsigc_1_1const__limit__reference_3_01T__type_00_01true_01_4.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor0-members.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor0.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor0__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor1-members.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor1.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor1__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor2-members.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor2.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor2__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor3-members.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor3.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor3__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor4-members.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor4.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor5-members.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor5.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor5__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor6-members.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor6.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor6__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor7-members.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor7.html create mode 100644 docs/reference/html/classsigc_1_1const__mem__functor7__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__volatile__limit__reference-members.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__limit__reference.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__limit__reference_3_01T__type_00_01true_01_4-members.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__limit__reference_3_01T__type_00_01true_01_4.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor0-members.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor0.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor0__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor1-members.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor1.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor1__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor2-members.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor2.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor2__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor3-members.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor3.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor3__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor4-members.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor4.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor5-members.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor5.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor5__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor6-members.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor6.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor6__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor7-members.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor7.html create mode 100644 docs/reference/html/classsigc_1_1const__volatile__mem__functor7__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1limit__reference-members.html create mode 100644 docs/reference/html/classsigc_1_1limit__reference.html create mode 100644 docs/reference/html/classsigc_1_1limit__reference_3_01T__type_00_01true_01_4-members.html create mode 100644 docs/reference/html/classsigc_1_1limit__reference_3_01T__type_00_01true_01_4.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor0-members.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor0.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor0__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1mem__functor1-members.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor1.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor1__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1mem__functor2-members.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor2.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor2__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1mem__functor3-members.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor3.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor3__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1mem__functor4-members.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor4.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1mem__functor5-members.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor5.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor5__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1mem__functor6-members.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor6.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor6__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1mem__functor7-members.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor7.html create mode 100644 docs/reference/html/classsigc_1_1mem__functor7__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1pointer__functor0-members.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor0.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor0__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1pointer__functor1-members.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor1.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor1__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1pointer__functor2-members.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor2.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor2__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1pointer__functor3-members.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor3.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor3__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1pointer__functor4-members.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor4.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1pointer__functor5-members.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor5.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor5__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1pointer__functor6-members.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor6.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor6__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1pointer__functor7-members.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor7.html create mode 100644 docs/reference/html/classsigc_1_1pointer__functor7__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal-members.html create mode 100644 docs/reference/html/classsigc_1_1signal.html create mode 100644 docs/reference/html/classsigc_1_1signal0-members.html create mode 100644 docs/reference/html/classsigc_1_1signal0.html create mode 100644 docs/reference/html/classsigc_1_1signal0__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal1-members.html create mode 100644 docs/reference/html/classsigc_1_1signal1.html create mode 100644 docs/reference/html/classsigc_1_1signal1__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal2-members.html create mode 100644 docs/reference/html/classsigc_1_1signal2.html create mode 100644 docs/reference/html/classsigc_1_1signal2__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal3-members.html create mode 100644 docs/reference/html/classsigc_1_1signal3.html create mode 100644 docs/reference/html/classsigc_1_1signal3__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal4-members.html create mode 100644 docs/reference/html/classsigc_1_1signal4.html create mode 100644 docs/reference/html/classsigc_1_1signal4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal5-members.html create mode 100644 docs/reference/html/classsigc_1_1signal5.html create mode 100644 docs/reference/html/classsigc_1_1signal5__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal6-members.html create mode 100644 docs/reference/html/classsigc_1_1signal6.html create mode 100644 docs/reference/html/classsigc_1_1signal6__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal7-members.html create mode 100644 docs/reference/html/classsigc_1_1signal7.html create mode 100644 docs/reference/html/classsigc_1_1signal7__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal_1_1accumulated-members.html create mode 100644 docs/reference/html/classsigc_1_1signal_1_1accumulated.html create mode 100644 docs/reference/html/classsigc_1_1signal_1_1accumulated__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_00_01T__arg2_00_01T__arg3_00_01T__arg4_08_4-members.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_00_01T__arg2_00_01T__arg3_00_01T__arg4_08_4.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_00_01T__arg2_00_01T__arg3_08_4-members.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_00_01T__arg2_00_01T__arg3_08_4.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_00_01T__arg2_00_01T__arg3_08_4_1_1accumulated.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_00_01T__arg2_00_01T__arg3_08_4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_00_01T__arg2_08_4-members.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_00_01T__arg2_08_4.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_00_01T__arg2_08_4_1_1accumulated-members.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_00_01T__arg2_08_4_1_1accumulated.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_00_01T__arg2_08_4_1_1accumulated__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_00_01T__arg2_08_4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_08_4-members.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_08_4.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_08_4_1_1accumulated-members.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_08_4_1_1accumulated.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_08_4_1_1accumulated__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07T__arg1_08_4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07_08_4-members.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07_08_4.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07_08_4_1_1accumulated-members.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07_08_4_1_1accumulated.html create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07_08_4_1_1accumulated__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal_3_01T__return_07_08_4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1signal__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1slot-members.html create mode 100644 docs/reference/html/classsigc_1_1slot.html create mode 100644 docs/reference/html/classsigc_1_1slot0-members.html create mode 100644 docs/reference/html/classsigc_1_1slot0.html create mode 100644 docs/reference/html/classsigc_1_1slot0__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1slot1-members.html create mode 100644 docs/reference/html/classsigc_1_1slot1.html create mode 100644 docs/reference/html/classsigc_1_1slot1__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1slot2-members.html create mode 100644 docs/reference/html/classsigc_1_1slot2.html create mode 100644 docs/reference/html/classsigc_1_1slot2__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1slot3-members.html create mode 100644 docs/reference/html/classsigc_1_1slot3.html create mode 100644 docs/reference/html/classsigc_1_1slot3__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1slot4-members.html create mode 100644 docs/reference/html/classsigc_1_1slot4.html create mode 100644 docs/reference/html/classsigc_1_1slot4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1slot5-members.html create mode 100644 docs/reference/html/classsigc_1_1slot5.html create mode 100644 docs/reference/html/classsigc_1_1slot5__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1slot6-members.html create mode 100644 docs/reference/html/classsigc_1_1slot6.html create mode 100644 docs/reference/html/classsigc_1_1slot6__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1slot7-members.html create mode 100644 docs/reference/html/classsigc_1_1slot7.html create mode 100644 docs/reference/html/classsigc_1_1slot7__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1slot_3_01T__return_07T__arg_8_8_8_08_4-members.html create mode 100644 docs/reference/html/classsigc_1_1slot_3_01T__return_07T__arg_8_8_8_08_4.html create mode 100644 docs/reference/html/classsigc_1_1slot_3_01T__return_07T__arg_8_8_8_08_4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1slot__base-members.html create mode 100644 docs/reference/html/classsigc_1_1slot__base.html create mode 100644 docs/reference/html/classsigc_1_1slot__base__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1slot__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor1-members.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor1.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor1__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor2-members.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor2.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor2__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor3-members.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor3.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor3__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor4-members.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor4.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor5-members.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor5.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor5__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor6-members.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor6.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor6__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor7-members.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor7.html create mode 100644 docs/reference/html/classsigc_1_1track__obj__functor7__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1volatile__limit__reference-members.html create mode 100644 docs/reference/html/classsigc_1_1volatile__limit__reference.html create mode 100644 docs/reference/html/classsigc_1_1volatile__limit__reference_3_01T__type_00_01true_01_4-members.html create mode 100644 docs/reference/html/classsigc_1_1volatile__limit__reference_3_01T__type_00_01true_01_4.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor0-members.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor0.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor0__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor1-members.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor1.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor1__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor2-members.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor2.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor2__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor3-members.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor3.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor3__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor4-members.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor4.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor4__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor5-members.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor5.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor5__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor6-members.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor6.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor6__inherit__graph.png create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor7-members.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor7.html create mode 100644 docs/reference/html/classsigc_1_1volatile__mem__functor7__inherit__graph.png create mode 100644 docs/reference/html/closed.png create mode 100644 docs/reference/html/deprecated.html create mode 100644 docs/reference/html/dir_49637f7a506fb46452b61fa9242e94fa.html create mode 100644 docs/reference/html/dir_707459f1045f56e3cfd726c166cb6440.html create mode 100644 docs/reference/html/dir_a7a614a8e549e28882ee9909ca095aec.html create mode 100644 docs/reference/html/dir_cfdc85331b77931098d1cb943916d356.html create mode 100644 docs/reference/html/dir_d1b074183e01b19b1ce0df6f4868a06f.html create mode 100644 docs/reference/html/dir_d27af17c007bf8336206730e5f9cd2f1.html create mode 100644 docs/reference/html/dir_e7ee533ee50f0002bd12390b80ea971b.html create mode 100644 docs/reference/html/doc.png create mode 100644 docs/reference/html/doxygen-extra.css create mode 100644 docs/reference/html/doxygen.css create mode 100644 docs/reference/html/doxygen.png create mode 100644 docs/reference/html/dynsections.js create mode 100644 docs/reference/html/folderclosed.png create mode 100644 docs/reference/html/folderopen.png create mode 100644 docs/reference/html/functions.html create mode 100644 docs/reference/html/functions_0x7e.html create mode 100644 docs/reference/html/functions_b.html create mode 100644 docs/reference/html/functions_c.html create mode 100644 docs/reference/html/functions_d.html create mode 100644 docs/reference/html/functions_e.html create mode 100644 docs/reference/html/functions_f.html create mode 100644 docs/reference/html/functions_func.html create mode 100644 docs/reference/html/functions_func_0x7e.html create mode 100644 docs/reference/html/functions_func_b.html create mode 100644 docs/reference/html/functions_func_c.html create mode 100644 docs/reference/html/functions_func_d.html create mode 100644 docs/reference/html/functions_func_e.html create mode 100644 docs/reference/html/functions_func_f.html create mode 100644 docs/reference/html/functions_func_h.html create mode 100644 docs/reference/html/functions_func_i.html create mode 100644 docs/reference/html/functions_func_l.html create mode 100644 docs/reference/html/functions_func_m.html create mode 100644 docs/reference/html/functions_func_n.html create mode 100644 docs/reference/html/functions_func_o.html create mode 100644 docs/reference/html/functions_func_p.html create mode 100644 docs/reference/html/functions_func_r.html create mode 100644 docs/reference/html/functions_func_s.html create mode 100644 docs/reference/html/functions_func_t.html create mode 100644 docs/reference/html/functions_func_u.html create mode 100644 docs/reference/html/functions_func_v.html create mode 100644 docs/reference/html/functions_g.html create mode 100644 docs/reference/html/functions_h.html create mode 100644 docs/reference/html/functions_i.html create mode 100644 docs/reference/html/functions_l.html create mode 100644 docs/reference/html/functions_m.html create mode 100644 docs/reference/html/functions_n.html create mode 100644 docs/reference/html/functions_o.html create mode 100644 docs/reference/html/functions_p.html create mode 100644 docs/reference/html/functions_r.html create mode 100644 docs/reference/html/functions_s.html create mode 100644 docs/reference/html/functions_t.html create mode 100644 docs/reference/html/functions_type.html create mode 100644 docs/reference/html/functions_type_c.html create mode 100644 docs/reference/html/functions_type_d.html create mode 100644 docs/reference/html/functions_type_e.html create mode 100644 docs/reference/html/functions_type_f.html create mode 100644 docs/reference/html/functions_type_g.html create mode 100644 docs/reference/html/functions_type_i.html create mode 100644 docs/reference/html/functions_type_p.html create mode 100644 docs/reference/html/functions_type_r.html create mode 100644 docs/reference/html/functions_type_s.html create mode 100644 docs/reference/html/functions_type_t.html create mode 100644 docs/reference/html/functions_type_v.html create mode 100644 docs/reference/html/functions_u.html create mode 100644 docs/reference/html/functions_v.html create mode 100644 docs/reference/html/functions_vars.html create mode 100644 docs/reference/html/graph_legend.html create mode 100644 docs/reference/html/graph_legend.png create mode 100644 docs/reference/html/group__adaptors.html create mode 100644 docs/reference/html/group__bind.html create mode 100644 docs/reference/html/group__compose.html create mode 100644 docs/reference/html/group__exception__catch.html create mode 100644 docs/reference/html/group__hide.html create mode 100644 docs/reference/html/group__mem__fun.html create mode 100644 docs/reference/html/group__ptr__fun.html create mode 100644 docs/reference/html/group__retype.html create mode 100644 docs/reference/html/group__sigcfunctors.html create mode 100644 docs/reference/html/group__signal.html create mode 100644 docs/reference/html/group__slot.html create mode 100644 docs/reference/html/group__track__obj.html create mode 100644 docs/reference/html/hierarchy.html create mode 100644 docs/reference/html/index.html create mode 100644 docs/reference/html/inherit_graph_0.png create mode 100644 docs/reference/html/inherit_graph_1.png create mode 100644 docs/reference/html/inherit_graph_10.png create mode 100644 docs/reference/html/inherit_graph_11.png create mode 100644 docs/reference/html/inherit_graph_12.png create mode 100644 docs/reference/html/inherit_graph_13.png create mode 100644 docs/reference/html/inherit_graph_14.png create mode 100644 docs/reference/html/inherit_graph_15.png create mode 100644 docs/reference/html/inherit_graph_16.png create mode 100644 docs/reference/html/inherit_graph_17.png create mode 100644 docs/reference/html/inherit_graph_18.png create mode 100644 docs/reference/html/inherit_graph_19.png create mode 100644 docs/reference/html/inherit_graph_2.png create mode 100644 docs/reference/html/inherit_graph_20.png create mode 100644 docs/reference/html/inherit_graph_21.png create mode 100644 docs/reference/html/inherit_graph_22.png create mode 100644 docs/reference/html/inherit_graph_23.png create mode 100644 docs/reference/html/inherit_graph_24.png create mode 100644 docs/reference/html/inherit_graph_25.png create mode 100644 docs/reference/html/inherit_graph_26.png create mode 100644 docs/reference/html/inherit_graph_27.png create mode 100644 docs/reference/html/inherit_graph_28.png create mode 100644 docs/reference/html/inherit_graph_29.png create mode 100644 docs/reference/html/inherit_graph_3.png create mode 100644 docs/reference/html/inherit_graph_30.png create mode 100644 docs/reference/html/inherit_graph_31.png create mode 100644 docs/reference/html/inherit_graph_32.png create mode 100644 docs/reference/html/inherit_graph_33.png create mode 100644 docs/reference/html/inherit_graph_34.png create mode 100644 docs/reference/html/inherit_graph_35.png create mode 100644 docs/reference/html/inherit_graph_36.png create mode 100644 docs/reference/html/inherit_graph_37.png create mode 100644 docs/reference/html/inherit_graph_38.png create mode 100644 docs/reference/html/inherit_graph_39.png create mode 100644 docs/reference/html/inherit_graph_4.png create mode 100644 docs/reference/html/inherit_graph_40.png create mode 100644 docs/reference/html/inherit_graph_41.png create mode 100644 docs/reference/html/inherit_graph_42.png create mode 100644 docs/reference/html/inherit_graph_43.png create mode 100644 docs/reference/html/inherit_graph_44.png create mode 100644 docs/reference/html/inherit_graph_45.png create mode 100644 docs/reference/html/inherit_graph_46.png create mode 100644 docs/reference/html/inherit_graph_47.png create mode 100644 docs/reference/html/inherit_graph_48.png create mode 100644 docs/reference/html/inherit_graph_49.png create mode 100644 docs/reference/html/inherit_graph_5.png create mode 100644 docs/reference/html/inherit_graph_6.png create mode 100644 docs/reference/html/inherit_graph_7.png create mode 100644 docs/reference/html/inherit_graph_8.png create mode 100644 docs/reference/html/inherit_graph_9.png create mode 100644 docs/reference/html/inherits.html create mode 100644 docs/reference/html/jquery.js create mode 100644 docs/reference/html/modules.html create mode 100644 docs/reference/html/namespacemembers.html create mode 100644 docs/reference/html/namespacemembers_c.html create mode 100644 docs/reference/html/namespacemembers_d.html create mode 100644 docs/reference/html/namespacemembers_e.html create mode 100644 docs/reference/html/namespacemembers_func.html create mode 100644 docs/reference/html/namespacemembers_func_c.html create mode 100644 docs/reference/html/namespacemembers_func_e.html create mode 100644 docs/reference/html/namespacemembers_func_h.html create mode 100644 docs/reference/html/namespacemembers_func_m.html create mode 100644 docs/reference/html/namespacemembers_func_p.html create mode 100644 docs/reference/html/namespacemembers_func_r.html create mode 100644 docs/reference/html/namespacemembers_func_t.html create mode 100644 docs/reference/html/namespacemembers_func_u.html create mode 100644 docs/reference/html/namespacemembers_func_v.html create mode 100644 docs/reference/html/namespacemembers_h.html create mode 100644 docs/reference/html/namespacemembers_m.html create mode 100644 docs/reference/html/namespacemembers_p.html create mode 100644 docs/reference/html/namespacemembers_r.html create mode 100644 docs/reference/html/namespacemembers_t.html create mode 100644 docs/reference/html/namespacemembers_type.html create mode 100644 docs/reference/html/namespacemembers_u.html create mode 100644 docs/reference/html/namespacemembers_v.html create mode 100644 docs/reference/html/namespaces.html create mode 100644 docs/reference/html/namespacesigc.html create mode 100644 docs/reference/html/nav_f.png create mode 100644 docs/reference/html/nav_g.png create mode 100644 docs/reference/html/nav_h.png create mode 100644 docs/reference/html/open.png create mode 100644 docs/reference/html/pages.html create mode 100644 docs/reference/html/since_2_2_11.html create mode 100644 docs/reference/html/since_2_4.html create mode 100644 docs/reference/html/since_2_8.html create mode 100644 docs/reference/html/splitbar.png create mode 100644 docs/reference/html/structsigc_1_1adaptor__base.html create mode 100644 docs/reference/html/structsigc_1_1adaptor__base__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1adaptor__functor-members.html create mode 100644 docs/reference/html/structsigc_1_1adaptor__functor.html create mode 100644 docs/reference/html/structsigc_1_1adaptor__functor__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1adaptor__trait.html create mode 100644 docs/reference/html/structsigc_1_1adaptor__trait_3_01T__functor_00_01false_01_4-members.html create mode 100644 docs/reference/html/structsigc_1_1adaptor__trait_3_01T__functor_00_01false_01_4.html create mode 100644 docs/reference/html/structsigc_1_1adaptor__trait_3_01T__functor_00_01true_01_4-members.html create mode 100644 docs/reference/html/structsigc_1_1adaptor__trait_3_01T__functor_00_01true_01_4.html create mode 100644 docs/reference/html/structsigc_1_1adapts-members.html create mode 100644 docs/reference/html/structsigc_1_1adapts.html create mode 100644 docs/reference/html/structsigc_1_1adapts__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1bind__functor.html create mode 100644 docs/reference/html/structsigc_1_1bind__return__functor-members.html create mode 100644 docs/reference/html/structsigc_1_1bind__return__functor.html create mode 100644 docs/reference/html/structsigc_1_1bind__return__functor__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1compose1__functor-members.html create mode 100644 docs/reference/html/structsigc_1_1compose1__functor.html create mode 100644 docs/reference/html/structsigc_1_1compose1__functor__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1compose2__functor-members.html create mode 100644 docs/reference/html/structsigc_1_1compose2__functor.html create mode 100644 docs/reference/html/structsigc_1_1compose2__functor__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1connection-members.html create mode 100644 docs/reference/html/structsigc_1_1connection.html create mode 100644 docs/reference/html/structsigc_1_1const__reference__wrapper-members.html create mode 100644 docs/reference/html/structsigc_1_1const__reference__wrapper.html create mode 100644 docs/reference/html/structsigc_1_1deduce__result__type-members.html create mode 100644 docs/reference/html/structsigc_1_1deduce__result__type.html create mode 100644 docs/reference/html/structsigc_1_1exception__catch__functor-members.html create mode 100644 docs/reference/html/structsigc_1_1exception__catch__functor.html create mode 100644 docs/reference/html/structsigc_1_1exception__catch__functor_3_01T__functor_00_01T__catcher_00_01void_01_4-members.html create mode 100644 docs/reference/html/structsigc_1_1exception__catch__functor_3_01T__functor_00_01T__catcher_00_01void_01_4.html create mode 100644 docs/reference/html/structsigc_1_1exception__catch__functor__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1functor__base.html create mode 100644 docs/reference/html/structsigc_1_1functor__base__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1functor__trait-members.html create mode 100644 docs/reference/html/structsigc_1_1functor__trait.html create mode 100644 docs/reference/html/structsigc_1_1hide__functor.html create mode 100644 docs/reference/html/structsigc_1_1hide__functor_3-1_00_01T__functor_01_4-members.html create mode 100644 docs/reference/html/structsigc_1_1hide__functor_3-1_00_01T__functor_01_4.html create mode 100644 docs/reference/html/structsigc_1_1hide__functor_3-1_00_01T__functor_01_4__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1hide__functor_3_010_00_01T__functor_01_4-members.html create mode 100644 docs/reference/html/structsigc_1_1hide__functor_3_010_00_01T__functor_01_4.html create mode 100644 docs/reference/html/structsigc_1_1hide__functor_3_010_00_01T__functor_01_4__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1nil.html create mode 100644 docs/reference/html/structsigc_1_1reference__wrapper-members.html create mode 100644 docs/reference/html/structsigc_1_1reference__wrapper.html create mode 100644 docs/reference/html/structsigc_1_1retype__functor-members.html create mode 100644 docs/reference/html/structsigc_1_1retype__functor.html create mode 100644 docs/reference/html/structsigc_1_1retype__functor__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1retype__return__functor-members.html create mode 100644 docs/reference/html/structsigc_1_1retype__return__functor.html create mode 100644 docs/reference/html/structsigc_1_1retype__return__functor_3_01void_00_01T__functor_01_4-members.html create mode 100644 docs/reference/html/structsigc_1_1retype__return__functor_3_01void_00_01T__functor_01_4.html create mode 100644 docs/reference/html/structsigc_1_1retype__return__functor_3_01void_00_01T__functor_01_4__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1retype__return__functor__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1signal__base-members.html create mode 100644 docs/reference/html/structsigc_1_1signal__base.html create mode 100644 docs/reference/html/structsigc_1_1signal__base__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1slot__const__iterator-members.html create mode 100644 docs/reference/html/structsigc_1_1slot__const__iterator.html create mode 100644 docs/reference/html/structsigc_1_1slot__iterator-members.html create mode 100644 docs/reference/html/structsigc_1_1slot__iterator.html create mode 100644 docs/reference/html/structsigc_1_1slot__list-members.html create mode 100644 docs/reference/html/structsigc_1_1slot__list.html create mode 100644 docs/reference/html/structsigc_1_1trackable-members.html create mode 100644 docs/reference/html/structsigc_1_1trackable.html create mode 100644 docs/reference/html/structsigc_1_1trackable__inherit__graph.png create mode 100644 docs/reference/html/structsigc_1_1type__trait-members.html create mode 100644 docs/reference/html/structsigc_1_1type__trait.html create mode 100644 docs/reference/html/structsigc_1_1type__trait_3_01T__type[N]_4-members.html create mode 100644 docs/reference/html/structsigc_1_1type__trait_3_01T__type[N]_4.html create mode 100644 docs/reference/html/structsigc_1_1type__trait_3_01T__type_01_6_01_4-members.html create mode 100644 docs/reference/html/structsigc_1_1type__trait_3_01T__type_01_6_01_4.html create mode 100644 docs/reference/html/structsigc_1_1type__trait_3_01const_01T__type_01_6_01_4-members.html create mode 100644 docs/reference/html/structsigc_1_1type__trait_3_01const_01T__type_01_6_01_4.html create mode 100644 docs/reference/html/structsigc_1_1type__trait_3_01void_01_4-members.html create mode 100644 docs/reference/html/structsigc_1_1type__trait_3_01void_01_4.html create mode 100644 docs/reference/html/structsigc_1_1unwrap__reference-members.html create mode 100644 docs/reference/html/structsigc_1_1unwrap__reference.html create mode 100644 docs/reference/html/structsigc_1_1unwrap__reference_3_01const__reference__wrapper_3_01T__type_01_4_01_4-members.html create mode 100644 docs/reference/html/structsigc_1_1unwrap__reference_3_01const__reference__wrapper_3_01T__type_01_4_01_4.html create mode 100644 docs/reference/html/structsigc_1_1unwrap__reference_3_01reference__wrapper_3_01T__type_01_4_01_4-members.html create mode 100644 docs/reference/html/structsigc_1_1unwrap__reference_3_01reference__wrapper_3_01T__type_01_4_01_4.html create mode 100644 docs/reference/html/structsigc_1_1unwrap__reference_3_01std_1_1reference__wrapper_3_01T__type_01_4_01_4-members.html create mode 100644 docs/reference/html/structsigc_1_1unwrap__reference_3_01std_1_1reference__wrapper_3_01T__type_01_4_01_4.html create mode 100644 docs/reference/html/structsigc_1_1visitor-members.html create mode 100644 docs/reference/html/structsigc_1_1visitor.html create mode 100644 docs/reference/html/sync_off.png create mode 100644 docs/reference/html/sync_on.png create mode 100644 docs/reference/html/tab_a.png create mode 100644 docs/reference/html/tab_b.png create mode 100644 docs/reference/html/tab_h.png create mode 100644 docs/reference/html/tab_s.png create mode 100644 docs/reference/html/tabs.css create mode 100644 docs/reference/libsigc++-2.0.devhelp2 create mode 100644 docs/reference/libsigc++-2.0.tag create mode 100644 docs/reference/meson.build create mode 100644 docs/tagfile-to-devhelp2.xsl create mode 100644 examples/Makefile.am create mode 100644 examples/Makefile.in create mode 100644 examples/hello_world.cc create mode 100644 examples/member_method.cc create mode 100644 examples/meson.build create mode 100644 meson.build create mode 100644 meson_options.txt create mode 100644 sigc++-uninstalled.pc.in create mode 100644 sigc++.pc.in create mode 100644 sigc++/Makefile.am create mode 100644 sigc++/Makefile.in create mode 100644 sigc++/adaptors/adaptor_trait.h create mode 100644 sigc++/adaptors/adaptors.h create mode 100644 sigc++/adaptors/bind.h create mode 100644 sigc++/adaptors/bind_return.h create mode 100644 sigc++/adaptors/bound_argument.h create mode 100644 sigc++/adaptors/compose.h create mode 100644 sigc++/adaptors/deduce_result_type.h create mode 100644 sigc++/adaptors/exception_catch.h create mode 100644 sigc++/adaptors/hide.h create mode 100644 sigc++/adaptors/lambda/base.h create mode 100644 sigc++/adaptors/lambda/lambda.cc create mode 100644 sigc++/adaptors/lambda/macros/base.h.m4 create mode 100644 sigc++/adaptors/lambda/macros/lambda.cc.m4 create mode 100644 sigc++/adaptors/lambda/macros/select.h.m4 create mode 100644 sigc++/adaptors/lambda/select.h create mode 100644 sigc++/adaptors/macros/adaptor_trait.h.m4 create mode 100644 sigc++/adaptors/macros/bind.h.m4 create mode 100644 sigc++/adaptors/macros/bind_return.h.m4 create mode 100644 sigc++/adaptors/macros/compose.h.m4 create mode 100644 sigc++/adaptors/macros/deduce_result_type.h.m4 create mode 100644 sigc++/adaptors/macros/exception_catch.h.m4 create mode 100644 sigc++/adaptors/macros/hide.h.m4 create mode 100644 sigc++/adaptors/macros/retype.h.m4 create mode 100644 sigc++/adaptors/macros/retype_return.h.m4 create mode 100644 sigc++/adaptors/macros/track_obj.h.m4 create mode 100644 sigc++/adaptors/retype.h create mode 100644 sigc++/adaptors/retype_return.h create mode 100644 sigc++/adaptors/track_obj.h create mode 100644 sigc++/bind.h create mode 100644 sigc++/bind_return.h create mode 100644 sigc++/connection.cc create mode 100644 sigc++/connection.h create mode 100644 sigc++/filelist.am create mode 100644 sigc++/functors/functor_trait.h create mode 100644 sigc++/functors/functors.h create mode 100644 sigc++/functors/macros/functor_trait.h.m4 create mode 100644 sigc++/functors/macros/mem_fun.h.m4 create mode 100644 sigc++/functors/macros/ptr_fun.h.m4 create mode 100644 sigc++/functors/macros/slot.h.m4 create mode 100644 sigc++/functors/mem_fun.h create mode 100644 sigc++/functors/ptr_fun.h create mode 100644 sigc++/functors/slot.h create mode 100644 sigc++/functors/slot_base.cc create mode 100644 sigc++/functors/slot_base.h create mode 100644 sigc++/limit_reference.h create mode 100644 sigc++/macros/limit_reference.h.m4 create mode 100644 sigc++/macros/signal.h.m4 create mode 100644 sigc++/macros/template.macros.m4 create mode 100644 sigc++/meson.build create mode 100644 sigc++/reference_wrapper.h create mode 100644 sigc++/retype_return.h create mode 100644 sigc++/sigc++.h create mode 100644 sigc++/signal.h create mode 100644 sigc++/signal_base.cc create mode 100644 sigc++/signal_base.h create mode 100644 sigc++/slot.h create mode 100644 sigc++/trackable.cc create mode 100644 sigc++/trackable.h create mode 100644 sigc++/type_traits.h create mode 100644 sigc++/visit_each.h create mode 100644 sigc++config.h.in create mode 100644 sigc++config.h.meson create mode 100644 tests/Makefile.am create mode 100644 tests/Makefile.in create mode 100644 tests/benchmark.cc create mode 100644 tests/meson.build create mode 100644 tests/test_accum_iter.cc create mode 100644 tests/test_accumulated.cc create mode 100644 tests/test_bind.cc create mode 100644 tests/test_bind_as_slot.cc create mode 100644 tests/test_bind_ref.cc create mode 100644 tests/test_bind_refptr.cc create mode 100644 tests/test_bind_return.cc create mode 100644 tests/test_compose.cc create mode 100644 tests/test_copy_invalid_slot.cc create mode 100644 tests/test_cpp11_lambda.cc create mode 100644 tests/test_custom.cc create mode 100644 tests/test_deduce_result_type.cc create mode 100644 tests/test_disconnect.cc create mode 100644 tests/test_disconnect_during_emit.cc create mode 100644 tests/test_exception_catch.cc create mode 100644 tests/test_functor_trait.cc create mode 100644 tests/test_hide.cc create mode 100644 tests/test_limit_reference.cc create mode 100644 tests/test_mem_fun.cc create mode 100644 tests/test_ptr_fun.cc create mode 100644 tests/test_retype.cc create mode 100644 tests/test_retype_return.cc create mode 100644 tests/test_signal.cc create mode 100644 tests/test_signal_move.cc create mode 100644 tests/test_size.cc create mode 100644 tests/test_slot.cc create mode 100644 tests/test_slot_disconnect.cc create mode 100644 tests/test_slot_move.cc create mode 100644 tests/test_track_obj.cc create mode 100644 tests/test_trackable.cc create mode 100644 tests/test_trackable_move.cc create mode 100644 tests/test_visit_each.cc create mode 100644 tests/testutilities.cc create mode 100644 tests/testutilities.h create mode 100755 tools/dist-cmd.py create mode 100644 tools/gcc_template_specialization_operator_overload.cc create mode 100755 tools/handle-built-files.py create mode 100644 tools/have_sun_reverse_iterator.cc create mode 100644 tools/msvc_template_specialization_operator_overload.cc create mode 100644 tools/pragma_push_pop_macro.cc create mode 100755 tools/tutorial-custom-cmd.py create mode 100644 untracked/README diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 0000000..000671a --- /dev/null +++ b/AUTHORS @@ -0,0 +1,8 @@ +Martin Schulze +Murray Cumming +Cedric Gustin (win32 support) +Timothy M. Shead and James Lin (MSVC support) +Damien Carbery (Sun FORTE C++ support) +Takashi Takekawa (Intel C++ support) +Andreas Rottmann (make system) +Karl Einar Nelson (initial version 1.9.4) diff --git a/COPYING b/COPYING new file mode 100644 index 0000000..c4792dd --- /dev/null +++ b/COPYING @@ -0,0 +1,515 @@ + + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations +below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. +^L + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it +becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. +^L + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control +compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. +^L + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. +^L + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. +^L + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. +^L + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply, and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License +may add an explicit geographical distribution limitation excluding those +countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. +^L + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS +^L + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms +of the ordinary General Public License). + + To apply these terms, attach the following notices to the library. +It is safest to attach them to the start of each source file to most +effectively convey the exclusion of warranty; and each file should +have at least the "copyright" line and a pointer to where the full +notice is found. + + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +Also add information on how to contact you by electronic and paper +mail. + +You should also get your employer (if you work as a programmer) or +your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James +Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..e2592ef --- /dev/null +++ b/ChangeLog @@ -0,0 +1,5921 @@ +2020-03-25 Kjell Ahlstedt + + 2.10.3 + +2020-03-24 Kjell Ahlstedt + + README: Describe building with Meson and Autotools + + and remove the description of the directory structure, + which is not very useful. + +2020-03-10 Kjell Ahlstedt + + examples: Disable deprecated API when building with Meson + + Deprecated SIGCXX API is disabled when example programs are built + with Autotools. Do the same when building with Meson. + +2020-01-13 Kjell Ahlstedt + + README: Describe building with Meson + +2020-01-02 Kjell Ahlstedt + + docs/reference/meson.build: Check if perl is found + + Don't use perl.path() when configuring Doxyfile, if perl is not found. + Perl is not required, if build-documentation=false. + Fixes #53 + +2019-12-30 Kjell Ahlstedt + + meson.build: Change project name, sigc++ -> libsigc++ + + Autotools make tarballs called libsigc++-x.y.z.tar.xz. No reason to + change that. The leading "lib" is now also restored in some locations + in the reference documentation. + +2019-12-30 Kjell Ahlstedt + + Update untracked/README + +2019-12-29 Kjell Ahlstedt + + meson.build: Check if .git is a directory or a file + + In a git worktree, .git is a regular file. + + See https://gitlab.gnome.org/GNOME/pangomm/merge_requests/8 + +2019-12-29 Kjell Ahlstedt + + sigc++/meson.build: Library name is sigc-2.0 + + Pointed out by Chun-wei Fan in PR #51. + +2019-12-29 Chun-wei Fan + + NMake Makefiles: Separate outdir by toolset version + + This is to reduce the likelihood of accidently mixing DLLs that are + linked with different CRTs in the build tree. + + Also clean up rules a bit. + +2019-12-29 Chun-wei Fan + + build: Support NMake builds from Meson tarballs + + This adds inference rules to the NMake Makefiles to also look for the + sources that are in untracked/, and to ensure that the generated MSVC + build files (sigc++-config.h and sigc.rc) are copied into + untracked/MSVC_NMake, so that they can be built properly even with + NMake. + +2019-12-29 Chun-wei Fan + + meson: Build Windows .rc files on Windows + + This ensures that on Windows, the version info resources are indeed + linked into the libsigc++ DLL. + +2019-12-29 Chun-wei Fan + + meson/Windows: Fix builds when builddir is a subdir of source tree + + It appears that Meson did not construct the paths properly for + shutil.copy2() when building in a build directory that is a + subdirectory of the sources, when using meson.current_build_dir(), + possibly due how path separators are handled. + + Fix this by constructing the paths using project_build_root / 'MSVC_NMake'. + +2019-12-29 Chun-wei Fan + + meson.build: Fix 'meson dist' on Windows + + Since we are assured that we are using Python 3.x on when we run Meson, we + do not really need to look for the 'python3' executable, but we could + just use whatever Python interpreter that is used to run Meson. + + This will fix situations where it is commonly the case where we may have + multiple Python 3.x installations on Windows (www.python.org, and those + from Cygwin/mingw-w64), so that Meson really uses one and only one + Python installation to run everything that is Python-related, which will + thus fix '[meson|ninja] dist' on Visual Studio builds. + +2019-12-29 Chun-wei Fan + + Meson/MSVC: Support builds directly from GIT checkouts + + It appears that if one uses the m4 that is given by mingw-w64 (and + perhaps Cygwin), that m4 is enough to generate the sources and headers + that we need for the build. + + So, remove the lines saying building directly from GIT checkouts are not + supported. + +2019-12-24 Chun-wei Fan + + meson: Ensure symbols are exported on MSVC builds + + Make sure the correct build macros are specified when building + libsigc++, so that: + + -The symbols are properly exported + -We do not break builds as a result of unecesary warnings + +2019-12-24 Chun-wei Fan + + meson: Relax MSVC version requirement to 2015 + + libsigc++ requires a C++-11-compliant compiler, so we can just make the + build look for Visual Studio 2015 instead of Visual Studio 2017 15.7. + + Visual Studio 2013 also works, but since it will spew out loads of + warnings and the latest C++-11 version of glibmm is not buildable with + Visual Studio 2013, let's just require Visual Studio 2015. + +2019-12-24 Kjell Ahlstedt + + Add support for building libsigc++-2.0 with Meson + + libsigc++-2.0 can be built with either Autotools or Meson. + +2019-12-10 Kjell Ahlstedt + + Make libsigc_manual.xml valid + + Fix errors reported by "xmllint --postvalid". + +2019-07-03 Kjell Ahlstedt + + tests/test_track_obj: Fix for clang++ + + clang++ complains if private members are unused, so make them protected. + + error: private field 'bar_' is not used [-Werror,-Wunused-private-field] + +2019-06-12 Kjell Ahlstedt + + 2.10.2 + +2018-11-11 Kjell Ahlstedt + + Create only .tar.xz tarballs + + * configure.ac: This is what ftp.gnome.org wants, so this avoids + it doing any repackaging. This is what gtkmm does. + +2018-10-30 Kjell Ahlstedt + + 2.10.1 + +2018-10-30 Kjell Ahlstedt + + tests: Catch exceptions by const ref + + To avoid "error: catching polymorphic type ‘class std::range_error’ by value" + +2018-10-30 Kjell Ahlstedt + + Update README and .gitignore + +2018-10-30 Chun-wei Fan + + builds: Add README file for MSVC builds + + Let people know how Visual Studio builds can be done and the options + that can be used for the builds. + +2018-10-30 Chun-wei Fan + + builds: Remove Visual Studio 2013 projects + + The NMake Makefiles superseded them, so let's just remove them. + + This will make builds with later Visual Studio versions simpler, and + will make maintaining the Visual Studio build files easier. + +2018-10-30 Chun-wei Fan + + builds: Add NMake Makefiles + + This adds a set of NMake Makefiles that can be used to build + libsigc++-2.10.x (and the later C++11 versions of libsigc++) with Visual + Studio 2013 or later. Building the example, the tests and the + benchmarking programs are supported in addition to building the main + libsigc++ DLL. + + Note that for the C++-11 releases, we name the DLLs and LIBs as + sigc-vc140-2_0.[dll|lib] or sigc-vc140-d-2_0.[dll|lib] for Visual Studio + 2015 and 2017 builds as these builds link to the msvcp140[d].dll and + vcruntime140[d].dll C/C++ runtime DLLs. + + This set of NMake Makefiles are now dist'ed in place of the Visual + Studio 2013 project files. + +2018-10-30 Chun-wei Fan + + build: Consolidate source listing into sigc++/filelist.am + + This is for enabling the upcoming NMake Makefiles to use this file + as well, in addition to the autotools build files, to build the + libsigc++ DLL. + +2018-10-30 Chun-wei Fan + + builds: Rename MSVC_Net2013 as MSVC_NMake + + This is to prepare for the transition for the Visual Studio build + files to NMake Makefiles. + +2018-08-29 Kjell Ahlstedt + + slot, signal: Avoid compiler warnings from function pointer conversions + + gcc8 -Wextra prints a warning when a single reinterpret_cast is used for + conversion between different types of function pointers. The previous fix + with a union in sigc::internal::bitwise_equivalent_cast<>() is not standard + C++. Rename the function to function_pointer_cast<>(), and use two + reinterpret_casts as recommended in gcc's documentation. + + Fixes #8 + +2018-08-02 Kjell Ahlstedt + + Update libsigcplusplus.doap + +2018-08-02 Kjell Ahlstedt + + configure.ac: Update home page and bug report address + +2018-08-02 Kjell Ahlstedt + + README: Update contact information + +2018-07-17 Kjell Ahlstedt + + Qualify calls to bitwise_equivalent_cast() with namespace names + + Otherwise indirect calls from glibmm, with its own bitwise_equivalent_cast(), + can be ambiguous due to ADL (argument-dependent lookup). + +2018-07-16 Kjell Ahlstedt + + slot, signal: Avoid compiler warnings from function pointer conversions + + gcc8 -Wextra prints a warning when reinterpret_cast is used for conversion + between different types of function pointers. Avoid that by adding + sigc::internal::bitwise_equivalent_cast<>() with a union with members of + the two types of function pointers. + + Fixes #1 + +2018-07-16 Kjell Ahlstedt + + Revert "slot, signal: Avoid compiler warnings from function pointer conversions" + + This reverts commit c6262e0a477b35cd9a4a00c34f3f0a44dcd07210. + + This can be done in a better way by keeping the union in a template function. + +2018-07-13 Kjell Ahlstedt + + slot, signal: Avoid compiler warnings from function pointer conversions + + gcc8 -Wextra prints a warning when reinterpret_cast is used for conversion + between different types of function pointers. Avoid that by instead using + a union with members of the two types of function pointers. + + Fixes #1 + +2017-11-09 Kjell Ahlstedt + + signal_base docs: Warn against deletion during emission + + There is no known ABI-preserving fix for a memory leak, if a signal + is deleted during emission. Describe a workaround in the documentation. + Bug 167714 + +2017-11-09 Kjell Ahlstedt + + slot_base::set_parent(): Create a dummy slot_rep if necessary + + set_parent() must always store the supplied parent pointer and cleanup + function pointer, or else there may be a memory leak. The pointers are + stored in slot_rep. Bug 167714 + +2017-07-17 Kjell Ahlstedt + + test_signal: Test calls to signal_base::clear() + + Call it both during signal emission and otherwise. Bug 784550 + +2017-07-17 Kjell Ahlstedt + + signal_impl::clear(): Don't clear the slot list during signal emission + + If signal_impl::clear() is called during signal emission, don't call + slots_.clear(). Let signal_impl::sweep() erase all slots after the signal + emission. Bug 784550 + +2016-11-20 Christophe Lermytte + + Make --disable-benchmark work + + Currently, when calling ./configure, the possible outcomes of the + enable_benchmark variable are: + + ./configure -> "" + ./configure --enable-benchmark -> "yes" + ./configure --enable-benchmark=yes -> "yes" + ./configure --enable-benchmark=no -> "yes" + ./configure --enable-benchmark=hello -> "yes" + ./configure --disable-benchmark -> "yes" + + With this commit, those values become + + ./configure -> "" + ./configure --enable-benchmark -> "yes" + ./configure --enable-benchmark=yes -> "yes" + ./configure --enable-benchmark=no -> "no" + ./configure --enable-benchmark=hello -> "hello" + ./configure --disable-benchmark -> "no" + + Note that enable_benchmark is currently only being checked for + being "yes" or not. + + Bug #774732 + +2016-09-20 Murray Cumming + + 2.10.0 + +2016-07-18 Kjell Ahlstedt + + Build: Fix silent builds + + * configure.ac: Pass yes to AM_SILENT_RULES, thus enabling silent builds. + Replace MM_AX_CXX_COMPILE_STDCXX_11 by MM_AX_CXX_COMPILE_STDCXX (not necessary + for silent builds). + * docs/reference/Doxyfile.in: Set QUIET=YES. + Update for doxygen 1.8.11 (not necessary for silent builds). + Bug #768797 + +2016-07-06 Murray Cumming + + 2.9.3 + +2016-07-05 Murray Cumming + + signal: Deprecate slots(). + + Because we don't use it in any tests or examples and probably + nobody uses it. It has already been removed from libsigc++-3.0 + (which installs in parallel): + https://git.gnome.org/browse/libsigcplusplus/commit/?id=fb5d1a55ddd843a1ded635b0ebce4e5b5301fc36 + + Please tell us if you really need to use this. + +2016-07-05 Murray Cumming + + signal: Deprecate emit_reverse(). + + Because we don't use it in any tests or examples and probably nobody + uses it. It has already been removed from libsigc++-3.0 (which installs + in parallel): + https://git.gnome.org/browse/libsigcplusplus/commit/?id=1a4eee7e8ded2acea94e27af5c94e37dcd9cbb13 + + Please tell us if you really need to use this. + +2016-06-21 Kjell Ahlstedt + + Update tests/.gitignore + +2016-06-17 Chun-wei Fan + + Fix build of "Implement slot with variadic template" + + * sigc++/functors/macros/slot.h.m4: Fix the use of operator() in the + variadic templates usage in the base slot_call as the syntax differs + between compilers for this call. This fixes the build of the tests and + any items that makes use of sigc++/functors/slot.h on non-GCC, + specifically Visual Studio 2013 and 2015. + + https://bugzilla.gnome.org/show_bug.cgi?id=767777 + +2016-06-17 Chun-wei Fan + + Visual Studio builds: Update project + + Remove the sources from the projects that have been removed from the + source tree lately. + +2016-04-20 Murray Cumming + + Update tests/.gitignore + +2016-04-20 Murray Cumming + + benchmark: Use boost::timer instead of Glib::Timer. + + And optionally build it, when --enable-benchmark is passed to configure. + +2016-04-20 Murray Cumming + + benchmark: Use the newer syntax. + +2016-04-20 Murray Cumming + + benchmark: Increase count. + +2016-04-20 Murray Cumming + + benchmark: Make the 1000 a constant, so we can change it. + +2016-04-20 Murray Cumming + + benchmark: Rearrange. + +2016-04-20 Murray Cumming + + benchmark: Add copyright header. + +2016-04-20 Murray Cumming + + benchmark: Update for the newer libsigc++ API. + +2016-04-08 Murray Cumming + + 2.9.2 + +2016-04-02 Murray Cumming + + C++11: signal: Use a range-based for loop. + +2016-04-02 Murray Cumming + + C++11: signal: Use auto for iterators. + +2016-04-01 Murray Cumming + + Remove unnecessary signal.cc file. + +2016-04-01 Murray Cumming + + Remove unnecessary slot.cc file. + +2016-04-01 Murray Cumming + + docs: slots: Fix tiny typo. + +2016-04-01 Murray Cumming + + docs: mem_fun: Improve the simple description. + +2016-04-01 Murray Cumming + + docs: mem_fun: Improve the note about auto-disconnection. + + Because "cleared" doesn't really tell us how this benefits us. + +2016-04-01 Murray Cumming + + docs: slots: Mention automatic disconnection. + +2016-04-01 Murray Cumming + + docs: slots: auto: Mention why it is bad. + +2016-04-01 Murray Cumming + + test_mem_fun: Test auto-disconnection with trackable. + + This is probably tested somewhere else already, but I like having it + here too because it is an important reason for slot<> to exist, + compared to a simple std::function. + +2016-04-01 Murray Cumming + + test_mem_fun: Rearrange into individual test functions. + +2016-04-01 Murray Cumming + + docs: Slots: Add section titles to break it up. + +2016-03-16 Murray Cumming + + 2.9.1 + +2016-03-16 Murray Cumming + + Update NEWS from 2.8.0 + +2016-03-16 Murray Cumming + + test_retype: Add test of R(Args...) syntax. + +2016-03-16 Murray Cumming + + test_retype: Break into smaller tests. + +2016-03-16 Murray Cumming + + Reference docs: Main page: Mention CMake. + + And generally make this like the version in master for libsigc++-3.0. + +2016-03-15 Kjell Ahlstedt + + Implement slot with variadic template + + * sigc++/functors/macros/slot.h.m4: Implement the function-style slot + with variadic template, as in libsigc++-3.0. + The primary slot_call and the slot specialization are copied + from libsigc++-3.0. A slot_call specialization is added. + Bug #763393 + +2016-03-12 Murray Cumming + + slot: Document older syntax as deprecated + +2016-03-12 Murray Cumming + + signal: Document older syntax as deprecated. + +2016-03-12 Murray Cumming + + signal: Use the slot syntax. + +2016-03-12 Murray Cumming + + signal.h.m4: Slight reorganization of m4 code. + +2016-03-12 Murray Cumming + + slot.h.m4: Slight reorganisation of m4 code. + +2016-03-12 Murray Cumming + + signal: Allow sigc::signal declaration, like std::function. + + By adding template specializations that repeats the signal* + template declarations, though it would be good to avoid the repetition. + + Bug 763393 + +2016-03-12 Murray Cumming + + slot: Allow sigc::slot declaration, like std::function. + + By adding a template specialization that repeats each slot*<> + declarartion, though it would be good to avoid the repetition. + + Bug 763393 + +2016-03-11 Murray Cumming + + 2.7.2 + +2016-03-11 Murray Cumming + + test_accumulated(): Restructure this. + + To make it clearer and to keep the small tests more self-contained and + separate. + +2016-03-11 Murray Cumming + + test_signal: Add test_simple(). + +2016-03-11 Murray Cumming + + test_signal(): Restructure this. + + To make it clearer and to keep the small tests more self-contained and + separate. + +2016-03-11 Murray Cumming + + test_slot(): Restructure this. + + To make it clearer and to keep the small tests more self-contained and + separate. + +2016-03-10 Murray Cumming + + signal: make_slot(): Use non-deprecated constructor. + +2016-03-10 Murray Cumming + + tests: Prefer the non-deprecated mem_fun(reference, func) form. + +2016-03-10 Murray Cumming + + tests: Use std::ref() instead of deprecated sigc::ref(). + +2016-03-10 Murray Cumming + + examples: Don't use deprecated mem_fun(pointer, func). + +2016-03-10 Murray Cumming + + examples build: Disable deprecated API. + +2016-03-10 Murray Cumming + + mem_fun(): Deprecate mem_fun(pointer, func). + + Leaving just mem_fun(reference, func). + See bug #763215 + + The deprecated mem_fun() has been removed from libsigc+--3.0, + so this is a chance to adapt code before switching to libsigc++-3.0. + +2016-03-10 Chun-wei Fan + + MSVC builds: Update sigc++ project + + Add the new source files and headers from adaptors/lambda, and re-order + the source files list into alphabetical order. + +2016-03-08 Murray Cumming + + Also ifdef out bound_argument. + + And add a specialization for bound_argument. + +2016-03-08 Murray Cumming + + reference_wrapper: Include . + +2016-03-08 Murray Cumming + + Deprecate sigc::ref() in favor of std::ref(). + +2016-03-07 Murray Cumming + + .doap: Correct the web site URL. + + Though we really must stop using sourceforge even for the web site. + +2016-03-07 Murray Cumming + + Rename our .doap file. + +2016-03-07 Murray Cumming + + Fix tiny typo in a comment. + +2016-03-06 Murray Cumming + + docs: Refer to it as libsigc++, not libsigc++2. + +2016-03-06 Murray Cumming + + website/README: Mention the new git repository. + +2016-03-03 Murray Cumming + + SIGC_CXX_HAS_SUN_REVERSE_ITERATOR: Add std:: now that I removed the using std. + + See https://bugzilla.gnome.org/show_bug.cgi?id=762065#c2 + +2016-03-03 Murray Cumming + + C++11: Make all operator bool() explicit. + +2016-03-03 Murray Cumming + + Remove now-unnecessary SIGC_CXX_HAS_NAMESPACE_STD() configure check. + + Bug #762065 (Kjell Ahlstedt) + +2016-03-03 Murray Cumming + + Remove unused SIGC_CXX_SELF_REFERENCE_IN_MEMBER_INITIALIZATION() configure check. + + Bug #762065 (Kjell Ahlstedt) + +2016-03-02 Kjell Ahlstedt + + Improve the documentation of mem_fun() + + * sigc++/functors/macros/mem_fun.h.m4: + * sigc++/functors/slot_base.h: Make it clear that mem_fun() does not return + a slot, and 'auto s = sigc::mem_fun(....)' is not equivalent to + 'sigc::slot<....> s = sigc::mem_fun(....)'. + The confusing documentation was noted by Andrejs Hanins on libsigc-list. + +2016-03-01 Murray Cumming + + Add test_bind_as_slot. + + This tests sigc::bind()'s indirect use of adaptor_functor<>. + I added this because this doesn't work yet in the variadic_bind branch. + +2016-03-01 Kjell Ahlstedt + + 2.7.1 + +2016-01-14 Murray Cumming + + m4: Remove unused UPPER and LOWER functions. + +2016-01-14 Murray Cumming + + tests: Use = delete instead of private constructors. + + To make classes non-copyable. + +2016-01-07 Murray Cumming + + functor_trait.m4: Correct the mem_functor<> declarations. + + The first template types are T_return and T_obj, not the arguments. + This doesn't seem to have been a problem. Maybe this code is not tested + or used. + +2015-12-17 Kjell Ahlstedt + + Don't use SIGC_USING_STD() + + The SIGC_USING_STD() macro is defined as an empty string, if some standard + C++ symbols are defined in namespace std. They always are. + Since many years, SIGC_USING_STD() is an unnecessary macro. + +2015-12-16 Kjell Ahlstedt + + Temporarily undefine the nil macro, if it's defined + + * build/cxx.m4: Add SIGC_CXX_PRAGMA_PUSH_POP_MACRO. + * configure.ac: Call SIGC_CXX_PRAGMA_PUSH_POP_MACRO. + * sigc++config.h.in: Add SIGC_PRAGMA_PUSH_POP_MACRO. + * sigc++/functors/macros/functor_trait.h.m4: + * sigc++/adaptors/macros/bind.h.m4: + * sigc++/adaptors/macros/retype.h.m4: + * sigc++/functors/macros/slot.h.m4: + * sigc++/macros/signal.h.m4: If nil and SIGC_PRAGMA_PUSH_POP_MACRO are + defined, undefine nil temporarily in the header files. + nil is a keyword in Objective-C++ and in Mac OS X C++. Bug #695235. + +2015-12-15 Kjell Ahlstedt + + can_deduce_result_type_with_decltype: Rename the check() methods + + * sigc++/functors/macros/functor_trait.h.m4: Rename the check() methods. + check() is a preprocessor macro in Mac OS X. Bug #759315. + +2015-12-13 Kjell Ahlstedt + + Fix some typos + +2015-11-16 Kjell Ahlstedt + + Add a moving signal::connect() overload + + * sigc++/macros/signal.h.m4: Add signal#::connect(slot_type&&), + slot_list::insert(iterator i, slot_type&&), + slot_list::push_front(slot_type&&), push_back(slot_type&&). + * sigc++/signal_base.[h|cc]: Add signal_base::connect(slot_base&&), + signal_base::insert(slot_base&&), signal_impl::connect(slot_base&&), + signal_impl::insert(slot_base&&). Bug #756484. + +2015-11-13 Murray Cumming + + 2.6.2 + +2015-11-12 Murray Cumming + + Add warnings for use with --enable-warnings=fatal + + Added use -Wsuggest-override and -Wzero-as-null-pointer-constant. + +2015-11-10 Kjell Ahlstedt + + trackable, slot_base, signal_base, connection: Add some noexcept specs + +2015-11-08 Kjell Ahlstedt + + slot and signal: Add missing move constructors and move assignments + + * sigc++/functors/macros/slot.h.m4: Add move operators for slot<>. + * sigc++/macros/signal.h.m4: Add move operators for signal#<> and signal<>. + * tests/test_signal_move.cc: + * tests/test_slot_move.cc: Test that the source objects are empty. + Bug #756484. + +2015-11-08 Kjell Ahlstedt + + trackable, slot, signal: Remove noexcept specifications + + * sigc++/functors/macros/slot.h.m4: + * sigc++/functors/slot_base.[h|cc]: + * sigc++/signal_base.[h|cc]: + * sigc++/trackable.[h|cc]: Remove noexcept from the move operators. + Bug #756484. + +2015-11-06 Kjell Ahlstedt + + slot: Handle auto-disconnection when a slot contains a slot + + * sigc++/functors/macros/slot.h.m4: Add sigc::visitor<> specializations + for slot# and slot. + * tests/test_disconnect.cc: Test auto-disconnection of a slot that contains + a slot. Bug #755003. + +2015-11-06 Murray Cumming + + signal_impl: =delete copy and move operations. + + Prevent, copy and move constructors and assignment operators from + being generated automatically. These are never used, but this + will make sure of that. + See https://bugzilla.gnome.org/show_bug.cgi?id=756484#c5 + +2015-11-06 Murray Cumming + + typed_slot_rep: =delete unimplemented copy and move operations. + + Prevent, copy assignment operator, move constructor and move + assignment operators from being generated automatically. + These are never used, but this will make sure of that. + See https://bugzilla.gnome.org/show_bug.cgi?id=756484#c5 + +2015-11-06 Murray Cumming + + slot_rep: =delete copy and move operations. + + Prevent, copy and move constructors and assignment operators from + being generated automatically. These are never used, but this + will make sure of that. + See https://bugzilla.gnome.org/show_bug.cgi?id=756484#c5 + +2015-11-06 Murray Cumming + + Small whitespace changes in docs comment. + +2015-10-31 Kjell Ahlstedt + + trackable: Add a comment + +2015-10-21 Kjell Ahlstedt + + slot and signal: Fix move constructors and move assignments + + * sigc++/functors/macros/slot.h.m4: Add documentation. + * sigc++/functors/slot_base.[h|cc]: Fix the move operators of slot_base. + Don't move a connected slot. + * sigc++/signal_base.cc: Fix the move assignment of signal_base. + * tests/test_signal_move.cc: + * tests/test_slot_move.cc: Really test move assignment. Bug #756484. + +2015-10-13 Kjell Ahlstedt + + More use of nullptr instead of 0 + +2015-10-11 Kjell Ahlstedt + + slot_rep::disconnect(): Remove a comment, add a test + + * sigc++/functors/slot_base.cc: Remove a TODO comment at slot_rep::disconnect(). + * tests/test_slot_disconnect.cc: Add a test that assigns an empty slot. + +2015-09-29 Kjell Ahlstedt + + Update sigc++/.gitignore + +2015-09-27 Murray Cumming + + 2.6.1 + +2015-09-26 Kjell Ahlstedt + + sigc::trackable: Don't move the callback list + + * sigc++/trackable.[h|cc]: Don't move the callback list. + * tests/test_trackable_move.cc: Remove a comment. Bug #755393. + +2015-09-26 Kjell Ahlstedt + + Recreate adaptors/lambda files necessary not to break ABI + + * sigc++/adaptors/lambda/macros/base.h.m4: + * sigc++/adaptors/lambda/macros/lambda.cc.m4: + * sigc++/adaptors/lambda/macros/select.h.m4: Recreate these files. + * sigc++/Makefile.am: + * sigc++/filelist.am: Add the recreated lambda files. + Approximately a reversion of commit a259b4c7a1753dbc389ee467fa536339ec820223, + "Remove remaining parts of the sigc::lambda API." + Differences from an exact reversion: MSVC_Net files are not modified. + (Probably something ought to be changed in MSVC_Net2013.) + tests/Makefile.am is not modified- + is_base_and_derived<> is replaced by std::is_base_of<> in base.h.m4. + The extern declarations that were previously in select.h.m4 are moved to + lambda.cc.m4. Without them, sigc::_1 .. sigc::_7 are not included in + the .so file. + All code in the header files are inside #ifndef DOXYGEN_SHOULD_SKIP_THIS. + Bug #755550. + +2015-09-21 Murray Cumming + + 2.6.0 + +2015-09-17 Murray Cumming + + C++11: deduce_result_type: Simpifying, removing use of std::is_same(). + + See https://bugzilla.gnome.org/show_bug.cgi?id=753612#c9 + +2015-09-17 Marcin Kolny + + C++11: deduce_result_type: build fix, using SFINAE paradigm. + + Bug #753612 + +2015-09-17 Murray Cumming + + C++11: deduce_result_type: Simplify with variadic template and std::conditional<>. + + Bug #753612 + However, the build then fails like so: + + make[2]: Entering directory '/home/murrayc/checkout/gnome/libsigc++2/examples' + g++ -DHAVE_CONFIG_H -I.. -I.. -pedantic -Wall -Wextra -Wshadow -Wformat-security -Werror -Wall -g -O0 -std=c++11 -MT hello_world.o -MD -MP -MF .deps/hello_world.Tpo -c -o hello_world.o hello_world.cc + In file included from ../sigc++/adaptors/adaptor_trait.h:10:0, + from ../sigc++/functors/slot.h:7, + from ../sigc++/signal_base.h:27, + from ../sigc++/signal.h:8, + from ../sigc++/sigc++.h:86, + from hello_world.cc:10: + ../sigc++/adaptors/deduce_result_type.h: In instantiation of ‘struct sigc::deduce_result_type&, void>, const std::basic_string, std::allocator >&, void, void, void, void, void, void>’: + ../sigc++/adaptors/deduce_result_type.h:60:80: required by substitution of ‘template using deduce_result_t = typename sigc::deduce_result_type::type [with T_functor = sigc::pointer_functor1&, void>; T_args = {const std::basic_string, std::allocator >&, void, void, void, void, void, void}]’ + ../sigc++/adaptors/adaptor_trait.h:67:104: required from ‘struct sigc::adaptor_functor&, void> >::deduce_result_type&, void, void, void, void, void, void>’ + ../sigc++/adaptors/adaptor_trait.h:88:3: required by substitution of ‘template typename sigc::adaptor_functor::deduce_result_type::type sigc::adaptor_functor::operator()(T_arg1) const [with T_arg1 = const std::basic_string&]’ + ../sigc++/functors/slot.h:137:20: required from ‘static T_return sigc::internal::slot_call1::call_it(sigc::internal::slot_rep*, sigc::type_trait_take_t) [with T_functor = sigc::pointer_functor1&, void>; T_return = void; T_arg1 = const std::basic_string&; sigc::type_trait_take_t = const std::basic_string&]’ + ../sigc++/functors/slot.h:144:37: required from ‘static void* (* sigc::internal::slot_call1::address())(void*) [with T_functor = sigc::pointer_functor1&, void>; T_return = void; T_arg1 = const std::basic_string&; sigc::internal::hook = void* (*)(void*)]’ + ../sigc++/functors/slot.h:529:91: required from ‘sigc::slot1::slot1(const T_functor&) [with T_functor = sigc::pointer_functor1&, void>; T_return = void; T_arg1 = const std::basic_string&]’ + ../sigc++/functors/slot.h:1161:26: required from ‘sigc::slot::slot(const T_functor&) [with T_functor = sigc::pointer_functor1&, void>; T_return = void; T_arg1 = const std::basic_string&]’ + hello_world.cc:25:50: required from here + ../sigc++/adaptors/deduce_result_type.h:56:12: error: no class template named ‘deduce_result_type’ in ‘class sigc::pointer_functor1&, void>’ + >::type; + ^ + In file included from ../sigc++/signal_base.h:27:0, + from ../sigc++/signal.h:8, + from ../sigc++/sigc++.h:86, + from hello_world.cc:10: + ../sigc++/functors/slot.h: In instantiation of ‘static T_return sigc::internal::slot_call1::call_it(sigc::internal::slot_rep*, sigc::type_trait_take_t) [with T_functor = sigc::pointer_functor1&, void>; T_return = void; T_arg1 = const std::basic_string&; sigc::type_trait_take_t = const std::basic_string&]’: + ../sigc++/functors/slot.h:144:37: required from ‘static void* (* sigc::internal::slot_call1::address())(void*) [with T_functor = sigc::pointer_functor1&, void>; T_return = void; T_arg1 = const std::basic_string&; sigc::internal::hook = void* (*)(void*)]’ + ../sigc++/functors/slot.h:529:91: required from ‘sigc::slot1::slot1(const T_functor&) [with T_functor = sigc::pointer_functor1&, void>; T_return = void; T_arg1 = const std::basic_string&]’ + ../sigc++/functors/slot.h:1161:26: required from ‘sigc::slot::slot(const T_functor&) [with T_functor = sigc::pointer_functor1&, void>; T_return = void; T_arg1 = const std::basic_string&]’ + hello_world.cc:25:50: required from here + ../sigc++/functors/slot.h:137:20: error: no matching function for call to ‘sigc::adaptor_functor&, void> >::operator()(const std::basic_string&)’ + (a_1); + ^ + ../sigc++/functors/slot.h:137:20: note: candidates are: + In file included from ../sigc++/functors/slot.h:7:0, + from ../sigc++/signal_base.h:27, + from ../sigc++/signal.h:8, + from ../sigc++/sigc++.h:86, + from hello_world.cc:10: + ../sigc++/adaptors/adaptor_trait.h:88:3: note: template typename sigc::adaptor_functor::deduce_result_type::type sigc::adaptor_functor::operator()(T_arg1) const [with T_arg1 = T_arg1; T_functor = sigc::pointer_functor1&, void>] + operator()(T_arg1 _A_arg1) const + ^ + ../sigc++/adaptors/adaptor_trait.h:88:3: note: substitution of deduced template arguments resulted in errors seen above + ../sigc++/adaptors/adaptor_trait.h:107:3: note: template typename sigc::adaptor_functor::deduce_result_type::type sigc::adaptor_functor::operator()(T_arg1, T_arg2) const [with T_arg1 = T_arg1; T_arg2 = T_arg2; T_functor = sigc::pointer_functor1&, void>] + operator()(T_arg1 _A_arg1, T_arg2 _A_arg2) const + ^ + ../sigc++/adaptors/adaptor_trait.h:107:3: note: template argument deduction/substitution failed: + In file included from ../sigc++/signal_base.h:27:0, + from ../sigc++/signal.h:8, + from ../sigc++/sigc++.h:86, + from hello_world.cc:10: + ../sigc++/functors/slot.h:137:20: note: candidate expects 2 arguments, 1 provided + (a_1); + ^ + +2015-09-11 Chun-wei Fan + + MSVC Builds: Add "Install" Project + + This makes building the -mm stack easier by copying the headers and the + built DLL, PDB and LIB files to a location where it can be picked up by + the gtkmm stack automatically, when they are extracted in a common + directory. This is what is currently done with the GTK+ and Clutter + stacks for Visual Studio builds. + +2015-09-09 Chun-wei Fan + + Update README on Visual Studio Builds + + Since the Visual Studio project files and the related sources have been + updated to work with Visual Studio 2013, and that the test programs do + run well there, update the README file to let people know the situation. + + https://bugzilla.gnome.org/show_bug.cgi?id=754082 + +2015-09-09 Chun-wei Fan + + sigc++config.h.in: Allow Build for MSVC 2013 + + MSVC 2013 does not have the C++-11 noexcept, so we need to define that to + _NOEXCEPT for MSVC 2013. Plus, since by default MSVC 2013 does not allow + us to re-define keywords, though they may or may not be supported, we need + to use the _ALLOW_KEYWORD_MACROS macro to allow this to happen. + + https://bugzilla.gnome.org/show_bug.cgi?id=754082 + +2015-09-08 Kjell Ahlstedt + + Update source of web page + + * docs/website/fragments/footer.html_fragment: + * docs/website/fragments/html_declaration.html_fragment: + * docs/website/devel.shtml: + * docs/website/doc.shtml: + * docs/website/index.shtml: + * docs/website/link.shtml: + * docs/website/stable.shtml: Fix or remove broken links. Remove the lists of + supported compilers. Mention that a C++11 compiler is required and that + support for lambdas has been removed. Bug #754082. + +2015-09-07 Kjell Ahlstedt + + Update .gitignore + +2015-09-03 Murray Cumming + + 2.5.4 + +2015-09-03 Murray Cumming + + Update tests/.gitignore + +2015-09-02 Chun-wei Fan + + MSVC Builds: Use Windows Line Endings for .sln + + The .sln files need to have Windows/DOS line endings to work properly so + that Windows can detect the Visual Studio version of the solution file. + +2015-09-02 Chun-wei Fan + + MSVC Builds: Add Forgotten Files + + The MSVC projects now use property sheets, but they were forgotten from + dist in the previous commits. Dist them... sorry! + +2015-09-02 Chun-wei Fan + + MSVC Builds: Remove MSVC 2005 and 2008 projects + + They are now unable to build libsigc++ at all, so drop them. + + https://bugzilla.gnome.org/show_bug.cgi?id=754082 + +2015-09-02 Chun-wei Fan + + MSVC Builds: Rename MSVC_Net2010/ to MSVC_Net2013/ + + Since libsigc++ now requires MSVC 2013 to build, the MSVC_Net2010 directory + needs to be renamed to MSVC_Net2013, so that people will not be confused on + what MSVC version is needed to build libsigc++. Also remove MSVC_Net2005 + and MSVC_Net2008 from the distribution, as they are no longer able to build + libsigc++. + + https://bugzilla.gnome.org/show_bug.cgi?id=754082 + +2015-09-01 Murray Cumming + + signal_base, trackable: Make move operations noexcept. + +2015-09-01 Murray Cumming + + Added test_signal_move. + + This seems to work. + +2015-09-01 Murray Cumming + + Added test_slot_move + + This seems to do what it should, acting much like regular slot copying. + +2015-09-01 Murray Cumming + + Add test_trackable_move. + + It doesn't segfault, but I'm not sure it's doing what it should. + See the TODO. + +2015-09-01 Murray Cumming + + trackable: move constructor: null the src. + +2015-09-01 Murray Cumming + + trackable: move assignment operator: null the src. + +2015-09-01 Murray Cumming + + C++11: signal_base: Add move operations. + +2015-09-01 Murray Cumming + + trackable: Add missing operator=(&&) implementation. + +2015-09-01 Murray Cumming + + trackable: Add move operations. + + Also adding them to trackable_callback_list and makeing + trackable_callback_list noncopyable, which I think is intended. + +2015-09-01 Murray Cumming + + C++11: slot*: Add move operations. + +2015-09-01 Murray Cumming + + C++11 slot_base: Add move operations. + + Improvements welcome. + +2015-09-01 Murray Cumming + + slot_base::operator=(const &): Copy blocked_ too. + + So, if we do + a = b; + then a will be blocked if b was blocked. Otherwise it depends on + whether a was blocked, which seems odd. + + If this is not the intended behaviour then we need a comment about it + in operator=() and a test. + +2015-09-01 Murray Cumming + + 2.5.3 + +2015-08-31 Chun-wei Fan + + MSVC Projects: Overhaul The Projects + + The former MSVC 2010 (2012) projects carried over quite a bit of cruft from + the Visual Studio 2003 days, and there are a number of items that could be + consolidated into ptoperty sheets, so it's time that the projects get a + clean up and overhaul. This is not unlike what was done to the glibmm + projects some time ago. + + Consolidate the projects all into MSVC_Net2010, without subdirectories, as + the property sheets will separate the object files of the various projects + into their own places. + + This will also likely enable us to support MSVC 2015 in a more efficient + way. + + Also, move the projects configs to MSVC 2013, as that is now the minimum + version of MSVC required to build sigc++. + +2015-08-14 Murray Cumming + + deduce_result_t: Add initial T_return template parameter. + + To make it clearer that this is how to use it. + +2015-08-14 Murray Cumming + + tests: Use sigc::deduce_result_t<> instead of deduce_result_type<>::type. + + This removes the last use of sigc::deduce_result_type<>, allowing + us to change the implementation of sigc::deduce_result_t more easily. + +2015-08-14 Murray Cumming + + exception_catch.h: Generate deduce_result_type for the void specializations too. + + I guess this is correct and test_exception_catch still passes. + Without this, it's actually using, for instance: + sigc::deduce_result_type + even though sigc::deduce_result_type<> should really be called with a result type + first, like so: + sigc::deduce_result_type + + Explicitly changing it to use + sigc::deduce_result_type + or + sigc::deduce_result_type + instead of just + deduce_result_type + doesn't seem to break things either, probably out of luck, + but changing it to define a type that it actually seems to expect seems + cleaner, and makes it easier for us to change sigc::deduce_result_type. + +2015-08-13 Murray Cumming + + C++11: deduce_result_type.h: Add and use a deduce_result_t<> alias. + + This simplifies the code a bit, by replacing use of this: + typename deduce_result_type::type + with this: + deduce_result_t + + Note that the alias is a C++11 variadic template. + Bug #753580 + +2015-08-13 Murray Cumming + + type_traits.h: Remove the unused type and pointer types. + + These were apparently never used. + Bug #753580 + +2015-08-13 Murray Cumming + + type_trait: Define and use type_trait_pass/take_t aliases. + + This simplifies the code a bit, by replacing use of this: + typename type_trait::take + with this: + type_trait_take_t + Bug #753580 + +2015-08-13 Murray Cumming + + 2.5.2 + +2015-08-13 Kjell Ahlstedt + + Remove the sigc++/object.h header + + Because it now contains no API. + See https://bugzilla.gnome.org/show_bug.cgi?id=752560#c6 + +2015-08-12 Kjell Ahlstedt + + Update sigc++/.gitignore + +2015-08-12 Kjell Ahlstedt + + Store sigc++/slot.h in git, don't generate it from m4 + + * sigc++/macros/slot.h.m4: Remove. + * sigc++/slot.h: New in git. + * sigc++/filelist.am: Replace sigc++/macros/slot.h.m4 by sigc++/slot.h. + See https://bugzilla.gnome.org/show_bug.cgi?id=752560#c6 + +2015-08-12 Murray Cumming + + Remove the (generated) sigc++/hide.h header. + + Because it now contains no API. + See https://bugzilla.gnome.org/show_bug.cgi?id=752560#c6 + + The generated sigc++/hide file did not include sigc++/adaptors/hide.h + so it did not exist as a convenience. + +2015-08-12 Murray Cumming + + Remove the (generated) sigc++/retype.h header. + + Because it now contains no API. + See https://bugzilla.gnome.org/show_bug.cgi?id=752560#c6 + + sigc++/macros/retype_h.m4 did define some m4 macros but these were + not actually used. The generated sigc++/retype.h file did not + include sigc++/adaptors/retype.h so it did not exist as a convenience. + +2015-08-12 Murray Cumming + + Remove the (generated) sigc++/object_slot.h header. + + Because it now contains no API. + See https://bugzilla.gnome.org/show_bug.cgi?id=752560#c6 + +2015-08-12 Murray Cumming + + Remove the (generated) method_slot.h header. + + Because it now contains no API. + See https://bugzilla.gnome.org/show_bug.cgi?id=752560#c6 + +2015-08-12 Murray Cumming + + Remove the (generated) class_slot.h header. + + Because it now contains no API. + See https://bugzilla.gnome.org/show_bug.cgi?id=752560#c6 + +2015-08-04 Chun-wei Fan + + Visual Studio Builds: Move 2010 Projects to 2012 + + Since the builds of the *mm stack are going to use C++11, this means that + we can't build libsigc++ with MSVC 2005~2010 anymore, so we need to update + the Visual Studio project files to version 2012 (11.0), so that we can + still support building with Visual Studio, as it does support enough of + C++11 features that is needed. + + Also clean up a little bit by dropping some of the unneeded items from the + projects and solution files. + + These project files are clearly going to need more cleanup, and we should + drop the MSVC_Net2005 and MSVC_Net2008 folders, and rename MSVC_Net2010 to + MSVC_Net2012, but this commit will ensure that libsigc++ is indeed still + buildable with Visual Studio, and we can support Visual Studio 2013 and + 2015 in a more efficient manner. + +2015-08-03 Kjell Ahlstedt + + C++11: Replace deprecated std::auto_ptr by std::unique_ptr + +2015-07-26 Kjell Ahlstedt + + C++11: visit_each_type<>(): Another check for the same type + + The rest of my suggested additions in bug 752560 comment 3. + The #include are necessary, if header files are included + one-by-one, and not via #include . + +2015-07-25 Murray Cumming + + C++11: visit_each<>: Check for the same type as well as the base. + + As suggested by Kjell Ahlstedt here: + https://bugzilla.gnome.org/show_bug.cgi?id=752560#c3 + + This fixes the test cases. + +2015-07-25 Murray Cumming + + C++11: Use std::is_base_of<> instead of our sigc::is_base_and_derived<>. + + As suggested by Kjell's comment here: + https://git.gnome.org/browse/libsigc++2/commit/sigc++/type_traits.h?id=1e9f65c978be67da71f15231643d504e06a6af3f + This also removes sigc::is_base_and_derived<> which should cause + only a slight API change but no ABI change. + + Bug #752560 + +2015-07-19 Kjell Ahlstedt + + Update README, remove TODO + + * README: Remove lambda from the list of directories. + Remove the list of compatible compilers. It has become obsolete now that + libsigc++ uses C++11 features. + * TODO: Remove. It's obsolete. TODO comments are now scattered in + the source code. + +2015-07-18 Murray Cumming + + C++11: Use of range-based for loops. + +2015-07-18 Murray Cumming + + C++11: More use of auto. + +2015-07-18 Murray Cumming + + C++11: Use auto. + + Trying to avoid using auto where its a specific type that we are + trying to test for. + +2015-07-18 Murray Cumming + + Use -Wformat-security with --enable-warnings=fatal. + + Because we use it in glibmm already. No code changes were necessary. + +2015-07-18 Murray Cumming + + Use -Wshadow with --enable-warnings=fatal. + +2015-07-18 Murray Cumming + + Revert "C++11: Use std::is_base_of<> instead of our sigc::is_base_and_derived<>." + + This reverts commit bf89034e116d4d9eb761ceb4597c69f0f2b9c597. + I didn't meat to push that quite yet. + +2015-07-18 Murray Cumming + + C++11: Use std::is_base_of<> instead of our sigc::is_base_and_derived<>. + + As suggested by Kjell's comment here: + https://git.gnome.org/browse/libsigc++2/commit/sigc++/type_traits.h?id=1e9f65c978be67da71f15231643d504e06a6af3f + This also removes sigc::is_base_and_derived<> which should cause + only a slight API change but no ABI change. + +2015-07-18 Murray Cumming + + C++11: Use of nullptr instead of 0. + +2015-07-18 Murray Cumming + + 2.5.1 + + 2.5.1 + +2015-07-17 Kjell Ahlstedt + + Require mm-common 0.9.8 + +2015-07-17 Kjell Ahlstedt + + Remove remaining parts of the sigc::lambda documentation + + * docs/index.html: Remove link to group__lambdas.html. + * sigc++/adaptors/macros/bind.h.m4: + * sigc++/adaptors/macros/compose.h.m4: + * sigc++/adaptors/macros/hide.h.m4: Remove talk of sigc::group(). + * sigc++/.gitignore: + * tests/.gitignore: Remove files that are no longer generated. Bug #672555. + +2015-07-17 Murray Cumming + + Remove remaining parts of the sigc::lambda API. + + The remaining API, defined in a .cc file, does not actually end up + being used by applications, so we can safely remove it. + See https://bugzilla.gnome.org/show_bug.cgi?id=672555#c21 + +2015-07-17 Murray Cumming + + Remove deprecated sigc::lambda API that is only in headers. + + So this is an API removal (of deprecated API) but not an ABI change. + The remaining deprecated API in the headers is needed by the definitions + in lambda.cc.m4. + Bug #672555 + +2015-07-14 Kjell Ahlstedt + + C++11: Avoid the need for SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE + + * sigc++/adaptors/lambda/macros/base.h.m4: + * sigc++/adaptors/lambda/macros/group.h.m4: + * sigc++/adaptors/macros/track_obj.h.m4: + * sigc++/macros/signal.h.m4: Remove all talk about + SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE. + * sigc++/functors/slot_base.h: Mentioned that + SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE is not needed any more. + * tests/test_cpp11_lambda.cc: + * tests/test_track_obj.cc: Remove calls to + SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE and tests for C++11 capability. + * sigc++/functors/macros/functor_trait.h.m4: Add class + can_deduce_result_type_with_decltype<>. Use it as default value for the new + template parameter I_can_use_decltype in struct functor_trait<>. + Bug #672555. + Murray Cumming made the changes of all files except functor_trait.h.m4. + +2015-07-14 Kjell Ahlstedt + + Require C++11 + + * configure.ac: Use MM_AX_CXX_COMPILE_STDCXX_11 to check for compiler + support for C++11 and use it (--std=c++11 for current versions of + g++). Bug #672555. + +2015-02-28 Kjell Ahlstedt + + 2.4.1 + +2015-02-28 Kjell Ahlstedt + + Docs: Update for Doxygen 1.8.9 + + * docs/reference/Doxyfile.in: Update for Doxygen 1.8.9. + +2014-10-23 Kjell Ahlstedt + + Tests: Improve test_disconnect_during_emit + + * tests/test_disconnect_during_emit.cc: Test that the slot is really + disconnected during signal emission. + +2014-10-23 Kjell Ahlstedt + + slot_base: Let the assignment operator destroy the slot + + * sigc++/functors/slot_base.cc: slot_base's assignment operator shall + destroy the old slot_rep even if the assigned slot is empty. Bug #738602. + +2014-09-15 Kjell Ahlstedt + + 2.4.0 + +2014-09-15 Kjell Ahlstedt + + Docs: Use doxygen-extra.css + + * configure.ac: Require mm-common 0.9.7. + * docs/.gitignore: Ignore doxygen-extra.css. + * docs/reference/Doxyfile.in: Use doxygen-extra.css instead of doxygen.css. + +2014-09-11 Kjell Ahlstedt + + doap: Add + +2014-08-12 Kjell Ahlstedt + + test_lambda: Fix for MS Visual C++ 2013 + + * tests/test_lambda.cc: Don't rely on implicit conversion from std::ostream + to bool. Instead, hide a problematic slot return type with sigc::hide_return(). + Bug #734368. + +2014-08-08 Kjell Ahlstedt + + Add an include in limit_reference.h + + * sigc++/macros/limit_reference.h.m4: limit_reference.h must include + visit_each.h, with the primary definition of template struct visitor. + https://mail.gnome.org/archives/libsigc-list/2014-August/msg00001.html + +2014-08-01 Andre Klapper + + doap: add + +2014-08-01 Olav Vitters + + doap: link tarball name and git module + +2014-07-31 Kjell Ahlstedt + + 2.3.2 + +2014-07-31 Kjell Ahlstedt + + Remove .gitattributes + + * .gitattributes: Instructed git to use a custom merge function for + merging ChangeLog. Might have been useful, but it's not any more. + +2014-07-30 Olav Vitters + + doap category core + +2014-07-29 Ryan Beasley + + Tests: Enable C++11 lambda expressions with MS Visual Studio 2012 and later + + * tests/test_cpp11_lambda.cc: + * tests/test_track_obj.cc: Compile C++11 lambda expressions if + _MSC_VER >= 1700. Bug #733752. + +2014-07-28 Kjell Ahlstedt + + Documentation: Emphasize that signals are ref counted + + * sigc++/signal_base.h: Emphasize that a sigc::signal holds a pointer to + a ref counted signal_impl. Bug #611941. + +2014-07-27 Kjell Ahlstedt + + Add test_visit_each to MSVC_Net2010 + + * MSVC_Net2010/filelist.am: Add new project files. + * MSVC_Net2010/libsigc++2.sln: Add new project. + * MSVC_Net2010/tests/test_visit_each/: New test case. Bug #724496. + +2014-07-27 Kjell Ahlstedt + + Tests: Add test_visit_each + + * tests/.gitignore: + * tests/Makefile.am: Add test_visit_each. + * tests/test_visit_each.cc: New file. Bug #724496. + +2014-07-27 Kjell Ahlstedt + + Replace visit_each() overloads by struct visitor<> + + Note: This patch breaks API for some users, but it does not break ABI. + Only users who have added their own visit_each() overloads are affected by + the API break. Their programs will still compile, but there will be run-time + errors, if they rely on auto-disconnection of slots. + Updated instructions for users who implement their own adaptors are found in + the description of sigc::adapts<>. + + * sigc++/adaptors/bound_argument.h: + * sigc++/adaptors/macros/adaptor_trait.h.m4: + * sigc++/adaptors/macros/bind.h.m4: + * sigc++/adaptors/macros/bind_return.h.m4: + * sigc++/adaptors/macros/compose.h.m4: + * sigc++/adaptors/macros/exception_catch.h.m4: + * sigc++/adaptors/macros/hide.h.m4: + * sigc++/adaptors/macros/retype.h.m4: + * sigc++/adaptors/macros/retype_return.h.m4: + * sigc++/adaptors/macros/track_obj.h.m4: + * sigc++/adaptors/lambda/macros/base.h.m4: + * sigc++/adaptors/lambda/macros/group.h.m4: + * sigc++/adaptors/lambda/macros/operator.h.m4: + * sigc++/functors/macros/mem_fun.h.m4: + * sigc++/macros/limit_reference.h.m4: + * sigc++/visit_each.h: Replace overloads of visit_each<>() by + specializations of struct visitor<> with a specialized member function + do_visit_each<>(). Qualify all calls to visit_each() with sigc:: to avoid + argument-dependent lookup. + * sigc++/functors/macros/slot.h.m4: Qualify the calls to visit_each_type() + with sigc:: to avoid argument-dependent lookup. + * tests/test_functor_trait.cc: Fix the expected result now when the test + really works. + Thanks to Ryan Beasley , bug #724496. + +2014-07-25 Kjell Ahlstedt + + signal_impl::notify(): Don't delete signal_impl during erase() + + * sigc++/signal_base.cc: signal_impl::notify() and sweep(): Don't delete + signal_impl while its slot list is being manipulated. Without this fix, + tests/test_bind_refptr crashes in MS Visual C++ in debug mode. + The behaviour without the fix is risky, and shall be avoided. Bug #564005. + +2014-07-24 Kjell Ahlstedt + + Update the signal_impl::notify() documentation + + * sigc++/signal_base.h: Update the signal_impl::notify() documentation. + It should have been updated when notify() was updated. Bug #167714. + +2014-07-24 Kjell Ahlstedt + + Add a maintainer in the DOAP file + +2014-07-18 Kjell Ahlstedt + + Update MSVC_Net2010 + + * MSVC_Net2010/filelist.am: Add new project files. + * MSVC_Net2010/libsigc++2.sln: Add new projects. + * MSVC_Net2010/libsigc++2.vcxproj.filters: + * MSVC_Net2010/libsigc++2.vcxproj: Update the list of header files. + * MSVC_Net2010/tests/test_*/test_*.vcxproj.filters: + * MSVC_Net2010/tests/test_*/test_*.vcxproj: Add testutilities.[h|cc]. + * MSVC_Net2010/tests/test_accum_iter/: + * MSVC_Net2010/tests/test_bind_ref/: + * MSVC_Net2010/tests/test_bind_refptr/: + * MSVC_Net2010/tests/test_copy_invalid_slot/: + * MSVC_Net2010/tests/test_cpp11_lambda/: + * MSVC_Net2010/tests/test_custom/: + * MSVC_Net2010/tests/test_lambda/: + * MSVC_Net2010/tests/test_limit_reference/: + * MSVC_Net2010/tests/test_slot_disconnect/: + * MSVC_Net2010/tests/test_track_obj/: New test case projects. Bug #724496. + +2014-07-14 Kjell Ahlstedt + + Fix 'make check' with clang++ and --enable-warnings=fatal + + * tests/test_cpp11_lambda.cc: + * tests/test_deduce_result_type.cc: + * tests/test_track_obj.cc: Don't define functions which are not used. + The clang++ compiler considers unused functions an error, when libsigc++ is + configured with --enable-warnings=fatal. Bug #724496. + +2013-10-28 Kjell Ahlstedt + + Documentation: Talk less about std::function + + * sigc++/functors/macros/slot.h.m4: + * sigc++/functors/slot_base.h: Remove the examples with std::function. + Add an example with a C++11 lambda expression. + https://mail.gnome.org/archives/libsigc-list/2013-October/msg00003.html + +2013-10-27 Kjell Ahlstedt + + Update .gitignore files + + * build/.gitignore: + * tests/.gitignore: Ignore files generated by automake 1.13 and 'make check'. + +2013-10-26 Kjell Ahlstedt + + Documentation: Mention std::function and std::bind() in more comments + + * sigc++/functors/macros/functor_trait.h.m4: Mention that + SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE does not support functors + with overloaded operator()(). + * sigc++/adaptors/macros/track_obj.h.m4: + * sigc++/functors/macros/slot.h.m4: + * sigc++/functors/slot_base.h: + * sigc++/signal_base.h: Mention std::function as an alternative to + sigc::slot. + * sigc++/macros/signal.h.m4: connect(): Describe why the result of + std::bind() can't be connected directly to a signal. + +2013-10-26 Kjell Ahlstedt + + Fix test_cpp11_lambda for gcc 4.8 + + * tests/test_cpp11_lambda.cc: Remove an unneccesary std::ref(). + Show that std::bind() can be assigned to a slot, if it's combined with + std::function. + +2013-07-30 Kjell Ahlstedt + + signal_base, signal_impl: Speed up disconnection of slots. + + * sigc++/signal_base.cc: Tell signal_impl::notify() which slot is being + disconnected. Execution time is then usually O(1) instead of O(n), where n + is the size of the slot list. Disconnect all connected slots when a signal is + deleted. Disconnect slots before they are erased from a signal's slot list. + Bug #167714. + +2013-07-03 José Alburquerque + + Move to a generated ChangeLog. + +2013-07-02 José Alburquerque + + Auto-generate the ChangeLog from the git log for 'make dist'. + + * Makefile.am: Include the dist-changelog.am file copied in build/ + from mm-common so that the ChangeLog is automatically generated from + the git commit messages on 'make dist'. + +2013-05-01 Kjell Ahlstedt + + Don't use __file__ in the FIREWALL m4 macro. + + * sigc++/adaptors/lambda/macros/group.h.m4: + * sigc++/adaptors/macros/*.h.m4: + * sigc++/functors/macros/*.h.m4: + * sigc++/macros/class_slot.h.m4: + * sigc++/macros/hide.h.m4: + * sigc++/macros/limit_reference.h.m4: + * sigc++/macros/method_slot.h.m4: + * sigc++/macros/retype.h.m4: + * sigc++/macros/slot.h.m4: Replace __FIREWALL__ with _FIREWALL(filename). + * sigc++/macros/template.macros.m4: Replace __FIREWALL__ with _FIREWALL, + taking a parameter. Don't use __file__ to generate the name of the C++ + preprocessor macro. __file__ may expand to an absolute path, containing + almost all sorts of special characters and being excessively long. + Bug #699168. + +2013-04-11 Kjell Ahlstedt + + Use DOXYGEN_SHOULD_SKIP_THIS consistently. + + * docs/reference/Doxyfile.in: EXTRACT_ALL=YES, like in most mm packages. + * sigc++/sigc++.h: Mention that the reference manual contains only some of + the template specializations. + * sigc++/adaptors/bound_argument.h: + * sigc++/adaptors/lambda/macros/base.h.m4: + * sigc++/adaptors/lambda/macros/group.h.m4: + * sigc++/adaptors/macros/adaptor_trait.h.m4: + * sigc++/adaptors/macros/bind.h.m4: + * sigc++/adaptors/macros/bind_return.h.m4: + * sigc++/adaptors/macros/compose.h.m4: + * sigc++/adaptors/macros/deduce_result_type.h.m4: + * sigc++/adaptors/macros/exception_catch.h.m4: + * sigc++/adaptors/macros/hide.h.m4: + * sigc++/adaptors/macros/retype.h.m4: + * sigc++/adaptors/macros/retype_return.h.m4: + * sigc++/adaptors/macros/track_obj.h.m4: + * sigc++/functors/macros/functor_trait.h.m4: + * sigc++/functors/macros/mem_fun.h.m4: + * sigc++/macros/limit_reference.h.m4: + * sigc++/type_traits.h: + * sigc++/visit_each.h: Use DOXYGEN_SHOULD_SKIP_THIS to mark what Doxygen + shall not extract. + +2013-03-20 Kjell Ahlstedt + + Suppress erroneous links in documentation. + + * sigc++/adaptors/lambda/macros/base.h.m4: + * sigc++/adaptors/lambda/macros/group.h.m4: + * sigc++/adaptors/lambda/macros/select.h.m4: Doxygen links std::bind to + sigc::bind. Suppress these links. No link is better than the wrong link. + +2013-03-19 Kjell Ahlstedt + + Deprecate libsigc++ lambdas, sigc::group(), sigc::var(). + + * configure.ac: Add MM_ARG_DISABLE_DEPRECATED_API(SIGCXX). + * sigc++/adaptors/lambda/macros/base.h.m4: + * sigc++/adaptors/lambda/macros/group.h.m4: + * sigc++/adaptors/lambda/macros/lambda.cc.m4: + * sigc++/adaptors/lambda/macros/operator.h.m4: + * sigc++/adaptors/lambda/macros/select.h.m4: Deprecate everything. + * sigc++/macros/template.macros.m4: Add deprecation macros. + * sigc++config.h.in: Add #undef SIGCXX_DISABLE_DEPRECATED. + * tests/test_lambda.cc: Skip test if SIGCXX_DISABLE_DEPRECATED is defined. + Bug #672555. + +2013-02-26 Kjell Ahlstedt + + Add track_obj() and test_track_obj. + + * sigc++/.gitignore: Add adaptors/track_obj.h. + * sigc++/adaptors/adaptors.h: Add sigc++/adaptors/track_obj.h. + * sigc++/adaptors/lambda/macros/group.h.m4: + * sigc++/adaptors/macros/adaptor_trait.h.m4: Mention track_obj() in the + documentation. + * sigc++/adaptors/macros/track_obj.h.m4: New file. + * sigc++/filelist.am: Add track_obj.h.m4 and track_obj.h. + * tests/.gitignore: + * tests/Makefile.am: Add test_track_obj. + * tests/test_cpp11_lambda.cc: Use track_obj() to test auto-disconnection. + * tests/test_track_obj.cc: New test case. + Bug #672555. + +2013-01-07 Kjell Ahlstedt + + Documentation: Fix many warnings from Doxygen. + + * configure.ac: Require mm-common 0.9.6 or later. + * docs/reference/Doxyfile.in: Don't warn for undocumented classes and structs. + * sigc++/adaptors/macros/bind.h.m4: + * sigc++/adaptors/macros/bind_return.h.m4: + * sigc++/adaptors/macros/compose.h.m4: + * sigc++/adaptors/macros/hide.h.m4: + * sigc++/connection.h: + * sigc++/macros/limit_reference.h.m4: Make all parameter names in @param + commands equal to the corresponding names in the function declarations. + * sigc++/signal_base.h: Remove an extraneous period that confuses Doxygen. + * sigc++/type_traits.h: Add a missing @code/@endcode pair. + +2012-10-18 Kjell Ahlstedt + + Test cases: Report pass/fail with exit status. + + * tests/testutilities.[h|cc]: New files. Code common to all test cases. + * tests/*.cc: Use class TestUtilities. Don't print anything + if the test passes. Return EXIT_FAILURE if the test fails. + * tests/Makefile.am: Add testutilities.[h|cc] to all test cases. + Bug #684956. + +2012-10-18 Murray Cumming + + 2.3.1 + +2012-10-18 Murray Cumming + + Update the Doxyfile.in syntax. + + * docs/reference/Doxyfile.in: By running doxygen -u + on it. + +2012-10-17 Kjell Ahlstedt + + Add some missing newin{}. + + * docs/reference/Doxyfile.in: Add ALIASES newin. + * sigc++/functors/macros/functor_trait.h.m4: Add newin{2,2,11} to + SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE. + * sigc++/signal_base.h: Add newin{2,4} to signal_impl::blocked(), block() and + signal_base::blocked(), block(), unblock(). Bug #153780. + +2012-10-12 Kjell Ahlstedt + + signal_base: Add blocked(), block(), unblock(). + + * sigc++/signal_base.[h|cc]: Add signal_impl::blocked(), block() and + signal_base::blocked(), block(), unblock(). Bug #153780. + +2012-09-23 Murray Cumming + + 2.2.11 + +2012-09-20 Andris Pavenis + + Fix comma operator in lambda expressions. + + * sigc++/adaptors/lambda/macros/operator.h.m4: Add lambda_action<> + specialization for comma operator (operator,()). + * tests/test_cpp11_lambda.cc: + * tests/test_lambda.cc: Add a test case for the comma operator. Bug #342911. + +2012-09-19 Kjell Ahlstedt + + Add SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE. + + * sigc++/adaptors/lambda/macros/base.h.m4: + * sigc++/adaptors/lambda/macros/group.h.m4: + * sigc++/functors/macros/functor_trait.h.m4: + * tests/test_cpp11_lambda.cc: Replace the preprocessor macro + SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH(C_keyword) with + SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE. Bug #672555. + +2012-09-10 Kjell Ahlstedt + + Correct a bug number in ChangeLog. + +2012-09-10 Kjell Ahlstedt + + Use std::size_t and std::ptrdiff_t. + + * sigc++/macros/signal.h.m4: Use std::size_t and std::ptrdiff_t instead + of ::size_t and ::ptrdiff_t. Only the std versions are required to be + declared in . + * sigc++/signal_base.h: Use std::size_t instead of ::size_t. (I did not change + MSVC++-only code in this file and other files.) + +2012-09-07 Kjell Ahlstedt + + Fix 'make check' with gcc 4.7. + + * sigc++/adaptors/lambda/macros/base.h.m4: Define sigc::unwrap_lambda_value() + before it's used in sigc::lambda::operator[]() and operator=(). + * sigc++/adaptors/lambda/macros/group.h.m4: Fix the C++11 examples in the + documentation as in test_cpp11_lambda.cc. + * tests/test_cpp11_lambda.cc: Only variables with automatic storage duration + shall be captured in C++11 lambda expressions. + +2012-08-28 Kjell Ahlstedt + + Update .gitignore and tests/.gitignore + + * .gitignore: Add *~ (gedit's backup files). + * tests/.gitignore: Add missing executable test files. + +2012-08-28 Kjell Ahlstedt + + Add SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH for C++11 lambda expressions. + + * sigc++/functors/macros/functor_trait.h.m4: Add the preprocessor macro + SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH(C_keyword), which makes it possible to + assign C++11 lambda expressions with any return type to slots. + Thanks to Chow Loong Jin, who posted similar code on libsigc-list. + * sigc++/adaptors/lambda/macros/base.h.m4: + * sigc++/adaptors/lambda/macros/group.h.m4: Add information on C++11 lambda + expressions to the documentation of lambda expressions and sigc::group(). + * tests/Makefile.am: Add test_cpp11_lambda.cc. + * tests/test_cpp11_lambda.cc: New test case, showing that most uses of + libsigc++'s lambda expressions can be replaced by standard C++11 lambda + expressions. Bug #672555. + +2012-03-19 Kjell Ahlstedt + + Enable test_lambda in 'make check'. + + * tests/Makefile.am: Enable test_lambda in 'make check'. + * tests/test_lambda.cc: Comment out the tests with sigc::ref() in lambda + functions' parameter lists. See Bug #669128. + +2012-02-29 Andre Klapper + + Add missing bug-database entry to DOAP file + +2011-09-22 Krzesimir Nowak + + Don't use obsolete macros. + + * autogen.sh: Warn about everything during autoreconf. + * build/cxx.m4: + * build/cxx_std.m4: Replaced AC_TRY_COMPILE with AC_COMPILE_IFELSE. + * configure.ac: Use LT_INIT. + +2011-07-25 Murray Cumming + + 2.2.10 + +2011-07-21 Thomas Rydzynski + + Mention visit_each() in the documentation of sigc::adapts. + + * sigc++/adaptors/macros/adaptor_trait.h.m4: Mention that a user-supplied + adaptor must be accompanied by a specialization of template function + visit_each(). Correct some minor errors in the example of a user-supplied + adaptor. Bug #486373. + +2011-07-20 Murray Cumming + + Missing changes from the previous commit. + +2011-07-19 Kjell Ahlstedt + + Add a test case for the previous commit. + + * tests/Makefile.am: + * tests/test_bind_refptr.cc: A version of this test is also in glibmm. + Note that this includes a copy/paste of RefPtr. + See Bug #564005#14 + +2011-07-19 Kjell Ahlstedt + + slot_rep: Avoid access to deleted object in notify(). + + * sigc++/functors/slot_base.cc: slot_rep::notify() calls disconnect() before + destroy(). If disconnect() has deleted the slot_rep object, destroy() is not + called. Bug #564005. + +2011-05-24 Olav Vitters + + Use tar-ustar instead of tar-pax to ensure OpenBSD compatibility + +2011-03-08 Murray Cumming + + 2.2.9 + +2011-02-22 Kjell Ahlstedt + + trackable: Avoid calling the same callback function twice + + * sigc++/trackable.cc: Invalidate a callback function entry in + trackable_callback_list::remove_callback() when the list is being cleared. + Bug 589202. + +2011-02-04 Kalev Lember + + Fix the build with GCC 4.6 + + * sigc++/signal_base.h: Include for size_t. + +2010-10-12 David King + + Update .gitignore and tests/.gitignore + +2010-10-12 David King + + Documentation changes + + * *.h.m4: Minor changes to documentation to fix up code example + formatting, by removing the additional two spaces of indentation. + Additionally, fix some spelling and grammar mistakes and typos. + +2010-09-26 Armin Burgmeier + + Add support for 64 bit to MSVC project files + +2010-09-27 Armin Burgmeier + + * MSVC_Net2005/libsigc++2.sln: + * MSVC_Net2005/libsigc++2.vcproj: + * MSVC_Net2005/tests/test_accumulated/test_accumulated.vcproj: + * MSVC_Net2005/tests/test_bind/test_bind.vcproj: + * MSVC_Net2005/tests/test_bind_return/test_bind_return.vcproj: + * MSVC_Net2005/tests/test_compose/test_compose.vcproj: + * MSVC_Net2005/tests/test_deduce_result_type/test_deduce_result_type.vcproj: + * MSVC_Net2005/tests/test_disconnect/test_disconnect.vcproj: + * MSVC_Net2005/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcproj: + * MSVC_Net2005/tests/test_exception_catch/test_exception_catch.vcproj: + * MSVC_Net2005/tests/test_functor_trait/test_functor_trait.vcproj: + * MSVC_Net2005/tests/test_hide/test_hide.vcproj: + * MSVC_Net2005/tests/test_mem_fun/test_mem_fun.vcproj: + * MSVC_Net2005/tests/test_ptr_fun/test_ptr_fun.vcproj: + * MSVC_Net2005/tests/test_retype/test_retype.vcproj: + * MSVC_Net2005/tests/test_retype_return/test_retype_return.vcproj: + * MSVC_Net2005/tests/test_signal/test_signal.vcproj: + * MSVC_Net2005/tests/test_size/test_size.vcproj: + * MSVC_Net2005/tests/test_slot/test_slot.vcproj: + * MSVC_Net2005/tests/test_trackable/test_trackable.vcproj: + * MSVC_Net2008/libsigc++2.sln: + * MSVC_Net2008/libsigc++2.vcproj: + * MSVC_Net2008/tests/test_accumulated/test_accumulated.vcproj: + * MSVC_Net2008/tests/test_bind/test_bind.vcproj: + * MSVC_Net2008/tests/test_bind_return/test_bind_return.vcproj: + * MSVC_Net2008/tests/test_compose/test_compose.vcproj: + * MSVC_Net2008/tests/test_deduce_result_type/test_deduce_result_type.vcproj: + * MSVC_Net2008/tests/test_disconnect/test_disconnect.vcproj: + * MSVC_Net2008/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcproj: + * MSVC_Net2008/tests/test_exception_catch/test_exception_catch.vcproj: + * MSVC_Net2008/tests/test_functor_trait/test_functor_trait.vcproj: + * MSVC_Net2008/tests/test_hide/test_hide.vcproj: + * MSVC_Net2008/tests/test_mem_fun/test_mem_fun.vcproj: + * MSVC_Net2008/tests/test_ptr_fun/test_ptr_fun.vcproj: + * MSVC_Net2008/tests/test_retype/test_retype.vcproj: + * MSVC_Net2008/tests/test_retype_return/test_retype_return.vcproj: + * MSVC_Net2008/tests/test_signal/test_signal.vcproj: + * MSVC_Net2008/tests/test_size/test_size.vcproj: + * MSVC_Net2008/tests/test_slot/test_slot.vcproj: + * MSVC_Net2008/tests/test_trackable/test_trackable.vcproj: + * MSVC_Net2010/libsigc++2.vcxproj: + * MSVC_Net2010/tests/test_accumulated/test_accumulated.vcxproj: + * MSVC_Net2010/tests/test_bind/test_bind.vcxproj: + * MSVC_Net2010/tests/test_bind_return/test_bind_return.vcxproj: + * MSVC_Net2010/tests/test_compose/test_compose.vcxproj: + * MSVC_Net2010/tests/test_deduce_result_type/test_deduce_result_type.vcxproj: + * MSVC_Net2010/tests/test_disconnect/test_disconnect.vcxproj: + * MSVC_Net2010/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcxproj: + +2010-09-26 Armin Burgmeier + + Add test_accumulated to the MSVC projects + +2010-09-27 Armin Burgmeier + + * MSVC_Net2005/libsigc++2.sln: + * MSVC_Net2005/tests/test_accumulated/test_accumulated.vcproj: + * MSVC_Net2008/libsigc++2.sln: + * MSVC_Net2008/tests/test_accumulated/test_accumulated.vcproj: Add + test_accumulated to the MSVC projects. + +2010-09-20 Armin Burgmeier + + Added MSVC 2010 project files + +2010-09-19 Armin Burgmeier + + * MSVC_Net2010/filelist.am: + * MSVC_Net2010/libsigc++2.sln: + * MSVC_Net2010/libsigc++2.vcxproj: + * MSVC_Net2010/libsigc++2.vcxproj.filters: + * MSVC_Net2010/sigc.rc.in: + * MSVC_Net2010/tests/test_accumulated/test_accumulated.vcxproj: + * MSVC_Net2010/tests/test_accumulated/test_accumulated.vcxproj.filters: + * MSVC_Net2010/tests/test_bind/test_bind.vcxproj: + * MSVC_Net2010/tests/test_bind/test_bind.vcxproj.filters: + * MSVC_Net2010/tests/test_bind_return/test_bind_return.vcxproj: + * MSVC_Net2010/tests/test_bind_return/test_bind_return.vcxproj.filters: + * MSVC_Net2010/tests/test_compose/test_compose.vcxproj: + * MSVC_Net2010/tests/test_compose/test_compose.vcxproj.filters: + * MSVC_Net2010/tests/test_deduce_result_type/test_deduce_result_type.vcxproj: + * MSVC_Net2010/tests/test_deduce_result_type/test_deduce_result_type.vcxproj.filters: + * MSVC_Net2010/tests/test_disconnect/test_disconnect.vcxproj: + * MSVC_Net2010/tests/test_disconnect/test_disconnect.vcxproj.filters: + * MSVC_Net2010/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcxproj: + * MSVC_Net2010/tests/test_disconnect_during_emit/test_disconnect_during_emit.vcxproj.filters: + * MSVC_Net2010/tests/test_exception_catch/test_exception_catch.vcxproj: + * MSVC_Net2010/tests/test_exception_catch/test_exception_catch.vcxproj.filters: + * MSVC_Net2010/tests/test_functor_trait/test_functor_trait.vcxproj: + * MSVC_Net2010/tests/test_functor_trait/test_functor_trait.vcxproj.filters: + * MSVC_Net2010/tests/test_hide/test_hide.vcxproj: + * MSVC_Net2010/tests/test_hide/test_hide.vcxproj.filters: + * MSVC_Net2010/tests/test_mem_fun/test_mem_fun.vcxproj: + * MSVC_Net2010/tests/test_mem_fun/test_mem_fun.vcxproj.filters: + * MSVC_Net2010/tests/test_ptr_fun/test_ptr_fun.vcxproj: + * MSVC_Net2010/tests/test_ptr_fun/test_ptr_fun.vcxproj.filters: + * MSVC_Net2010/tests/test_retype/test_retype.vcxproj: + * MSVC_Net2010/tests/test_retype/test_retype.vcxproj.filters: + * MSVC_Net2010/tests/test_retype_return/test_retype_return.vcxproj: + * MSVC_Net2010/tests/test_retype_return/test_retype_return.vcxproj.filters: + * MSVC_Net2010/tests/test_signal/test_signal.vcxproj: + * MSVC_Net2010/tests/test_signal/test_signal.vcxproj.filters: + * MSVC_Net2010/tests/test_size/test_size.vcxproj: + * MSVC_Net2010/tests/test_size/test_size.vcxproj.filters: + * MSVC_Net2010/tests/test_slot/test_slot.vcxproj: + * MSVC_Net2010/tests/test_slot/test_slot.vcxproj.filters: + * MSVC_Net2010/tests/test_trackable/test_trackable.vcxproj: + * MSVC_Net2010/tests/test_trackable/test_trackable.vcxproj.filters: + + * Makefile.am: + * configure.ac: Added project files for Visual Studio 2010. + +2010-06-05 David King + + Small website updates + + * docs/index.html: Remove broken namespace links. + * docs/website/doc.shtml: Link to library.gnome.org tutorial and API + reference. + +2010-06-04 Murray Cumming + + 2.2.8 + +2010-06-04 Murray Cumming + + Manual: Add an id=index attribute in case that helps library.gnome.org. + + * docs/manual/libsigc_manual.xml: Add it to the tag. + +2010-05-04 Murray Cumming + + 2.2.7 + +2010-05-04 Murray Cumming + + Documentation improvements. + + * docs/manual/libsigc_manual.xml: Remove Marshallers section because + it is apparently outdated and there is no example code to test it. + This fixes bug #417924 (Michael Ekstrand) + Also changed LibSigC++ to libsigc++ for consistency. + * sigc++/sigc++.h: Main page text: Rearranged slightly. + +2010-04-27 David King + + Improvements to main page documentation + + * sigc++/sigc++.h: Minor improvements. + +2010-04-23 David King + + Add main page to Doxygen documentation + + * docs/Makefile.am: Parse sigc++/sigc++.h for documentation. + * sigc++/sigc++.h: Add main page to Doxygen documentation. + +2010-04-23 David King + + Fix the functors Doxygen group in the m4 files + + * sigc++/functors/macros/functor_trait.h.m4: + * sigc++/functors/macros/mem_fun.h.m4: + * sigc++/functors/macros/ptr_fun.h.m4: Rename functors to + sigcfunctors. + +2010-04-16 Murray Cumming + + 2.2.6 + +2010-04-16 Murray Cumming + + Docs: Fix the functors group and the link from the overview. + + * docs/website/doc.shtml: Revert this to point to the overview page at + docs/indeex.html, which I have manually uploaded to the website, until + we add this overview to the doxygen-generated documentation itself. + * sigc++/functors/slot_base.h: + * sigc++/visit_each.h: Rename the functors doxygen group to sigcfunctors, + because doxygen seems to confuse it with the one in libstdc++. + * docs/index.html: Update the links. + +2010-04-16 Murray Cumming + + Website: Fix the Makefile so upload works with sourceforge again. + +2010-04-06 Murray Cumming + + Website: Update the reference API link. + + * docs/website/doc.shtml: Update the reference API link to use + library.gnome.org. We should make sure that the tutorial docbook is there + too. + * docs/website/devel.shtml: Remove CVS-specific instructions, quickly + mentioning the git module instead. + However, the Makefile must be updated to cope with sourceforge's changes. + I was not able to upload this yet. + +2010-03-29 Murray Cumming + + 2.2.5 + +2010-01-06 Daniel Elstner + + Use non-blurry font for dot graph labels + + * docs/reference/Doxyfile.in (SHOW_INCLUDE_FILES): Enable. + (SHOW_USED_FILES): Disable. + (DOT_FONTNAME): Change from FreeSans to Sans, as the hinting for the + former appears to be rather bad. + (TEMPLATE_RELATIONS): Disable to reduce noise. + +2009-12-29 Murray Cumming + + Accumulators: Allow return types that are different to the signal's. + + * sigc++/macros/signal.h.m4: signal_emit*: Correct the slot_iterator_buf_type + and slot_reverse_iterator_buf_type typedefs to allow accumulators with + return types that are different to the signal's return type. + * tests/Makefile.am: Reenable test_accumulated, so we can test the fix. + It should be manually disabled if building on AIX (if the AIX problem cannot + be fixed properly). + * tests/test_accumulated.cc: Add an accumulator with a return type that is + different to the signal's return type. In this case it's a vector listing + all results. + Bug #586436. + +2009-12-27 Daniel Elstner + + Disable collaboration graphs in documentation + + * docs/reference/Doxyfile.in (CLASS_DIAGRAMS): Enable. Contrary to + what the Doxygen documentation says, no dot class inheritance graphs + will be generated if both CLASS_DIAGRAMS and COLLABORATION_GRAPH are + set to NO. + (COLLABORATION_GRAPH), (GROUP_GRAPHS): Turn off additional graphs to + reduce the noise. + +2009-10-26 Armin Burgmeier + + Fix build with MSVC + +2009-10-26 Armin Burgmeier + + * sigc++config.h: Move the first five definitions to the !SIGC_MSC + ifdef block, so MSVC does not see them and only uses the definitions + from the SIGC_MSC block. This fixes the build with MSVC. + +2009-09-19 Daniel Elstner + + Support Automake silent rules + + * configure.ac: Call the AM_SILENT_RULES macro if it is defined. + * docs/doc-manual.am, sigc++/Makefile.am: Prefix the commands of + custom rules with $(AM_V_GEN) or $(AM_V_at) in order to support + the silent rules feature of Automake. + +2009-09-18 Michael Hasselmann + + Documentation cleanup: sigc::hide() always only hides one signal argument + + * sigc++/adaptors/macros/hide.h.m4: The documentation stated that sigc::hide() + could discard multiple signal arguments when in fact the whole API only allows + control over one (dummy) signal argument at a time. The "multiple argument + hiding" example lives in it own section now to make it clearer you have to nest + sigc::hide() for that. + +2009-09-13 Daniel Elstner + + Enable verbose output of autoreconf + + * autogen.sh: Pass --verbose option to autoreconf. + +2009-09-07 Daniel Elstner + + Delete obsolete MAINTAINERS file + +2009-09-02 Daniel Elstner + + Bump version to 2.2.4.2 and update NEWS + + * configure.ac (AC_INIT): Increment version number to 2.2.4.2. + (MM_PREREQ): Require mm-common 0.7.2. + * NEWS: Write news entry for libsigc++ 2.2.4.2. + +2009-09-02 Daniel Elstner + + Document namespace sigc briefly + + * sigc++/signal_base.h (sigc): Prepend documentation comment to + provide a brief description of namespace sigc, so that Doxygen + will recognize the namespace as documented. + +2009-08-31 Daniel Elstner + + Update Doxygen configuration for Doxygen 1.6.1 + + * docs/reference/Doxyfile.in: Update configuration template using + Doxygen 1.6.1. + (SORT_MEMBERS_CTORS_1ST): Enable. + +2009-08-31 Daniel Elstner + + Protect space after comma in M4 output + + * sigc++/macros/template.macros.m4 (_LOOP_SEP): Triple-quote the + list separator in this hairy construct, since the macro definition + itself is not quoted at all and the space after the comma got lost + in the output. This, in turn, produced overlong lines in the HTML + reference documentation. + +2009-08-28 Daniel Elstner + + Update news entry for libsigc++ 2.2.4.1 release + + * NEWS: Update top entry for release 2.2.4.1 of libsigc++. + (2.2.4): Correct spelling of Frédéric Péters' name. + +2009-08-27 Daniel Elstner + + Use shared mm-common Doxygen style sheet + + * configure.ac (MM_PREREQ): Require mm-common 0.7. + * docs/Makefile.am (dist_noinst_DATA): List doxygen.css. + * docs/reference/Doxyfile.in (HTML_STYLESHEET): Assign path + to the shared doxygen.css provided by mm-common. + +2009-08-27 Daniel Elstner + + Remove header and footer HTML fragments + + * docs/reference/libsigc_{header,footer}.html_fragment: Delete + files. These custom fragments were an unnecessary maintenance + hassle. Also, the files were out of date with respect to the + encoding and CSS classes used by Doxygen. + * docs/reference/Doxyfile.in (HTML_HEADER), (HTML_FOOTER): Set + to the empty string. + (PROJECT_NAME): Substitute @PACKAGE_NAME@. + (PROJECT_NUMBER): Substitute @PACKAGE_VERSION@. It does look + nicer in the generated HTML pages, and is probably also less + confusing. + (SORT_GROUP_NAMES): Enable for predictability. + +2009-08-27 Daniel Elstner + + Change version of upcoming release to 2.2.4.1 + + * configure.ac (AC_INIT): Adjust version number to 2.2.4.1. + * NEWS: Correct version of top news entry to 2.2.4.1. + +2009-08-26 Daniel Elstner + + Bump version to 2.2.5 and update NEWS + + * configure.ac (AC_INIT): Increment version number to 2.2.5. + * NEWS: Write news entry for libsigc++ 2.2.5. + +2009-08-26 Daniel Elstner + + Reenable hierarchy graphs for each class + + * docs/reference/Doxyfile.in (COLLABORATION_GRAPH): Set option + to YES to enable the per-class inheritance graphs. + +2009-08-25 Daniel Elstner + + Have Automake check NEWS and use bzip2 + + * configure.ac (AM_INIT_AUTOMAKE): Add options check-news and + dist-bzip2. + +2009-08-25 Daniel Elstner + + Update NEWS for libsigc++ 2.2.4 release + +2009-08-25 Daniel Elstner + + Bump version to 2.2.4 and require mm-common 0.6.1 + + * configure.ac (AC_INIT): Increase version number to 2.2.4. + (MM_PREREQ): Require mm-common 0.6.1 for the updated default + location of the reference documentation. + +2009-08-25 Daniel Elstner + + Change documentation host to library.gnome.org + + * README, docs/manual/libsigc_manual.xml: Adjust links to the + reference documentation in the text. + * docs/Makefile.am (pubdocbase), (htmlrefpub): Remove override + and use the updated mm-common default values. + * sigc++{,-uninstalled}.pc.in (htmlrefpub): Adjust link. + +2009-08-24 Daniel Elstner + + Add id="content" element to documentation index + + * docs/reference/libsigc_header.html_fragment: Start
element + with attribute id="content" to match the other C++ binding modules. + * docs/reference/libsigc_footer.html_fragment: Close
element. + +2009-08-20 Daniel Elstner + + Use new version component substitutions + + * MSVC_Net200[58]/sigc.rc.in: Replace the no longer defined + @FP_*_VERSION@ substitutions by the new @SIGCXX_*_VERSION@ + substitutions for the version number components. These are + defined by MM_INIT_MODULE() from mm-common. + +2009-08-20 Daniel Elstner + + Substitute API version in filenames dynamically + + * sigc++.pc.in: Rename file from sigc++-2.0.pc.in. + * sigc++-uninstalled.pc.in: Rename file from + sigc++-2.0-uninstalled.pc.in. + * MSVC_Net200[58]/sigc.rc.in: Rename files from sigc-2.0.rc.in + and use @SIGCXX_API_VERSION@ substitution for the API version. + Also replace @VERSION@ with @PACKAGE_VERSION@. + * MSVC_Net200[58]/libsigc++2.{sln,vcproj}: Remove version from + the project name and filenames. + * MSVC_Net200[58]/filelist.am: Remove version from filenames. + * configure.ac (AC_CONFIG_FILES): Insert ${SIGCXX_MODULE_NAME} + into output filenames and remove the version from the input + filenames. + * Makefile.am: Use $(SIGCXX_MODULE_NAME) in pkg-config file + names instead of hard-coding the API version. + * sigc++/Makefile.am (lib_LTLIBRARIES): Instead of hard-coding + the libtool archive name, substitute @SIGCXX_API_VERSION@ into + it, as well as into the derived variable names. + +2009-08-17 Daniel Elstner + + Set libtool version information + + * sigc++/Makefile.am (libsigc_2_0_la_LDFLAGS): Add libtool option + -version-info 0:0:0 to specify the version information explicitly. + +2009-08-16 Daniel Elstner + + Remove unused parameter names for correctness + + * tests/test_copy_invalid_slot.cc, tests/test_custom.cc, + tests/test_deduce_result_type.cc, tests/test_functor_trait.cc, + tests/test_limit_reference.cc: Remove the names of unused function + parameters from the prototype, in order to get libsigc++ to build + with fatal compiler warnings. + +2009-08-16 Daniel Elstner + + Rename scripts/ to build/ for consistency + + * build/: Rename directory from scripts/ for consistency with most + of the other modules that switched to the new build infrastructure. + * Makefile.am (ACLOCAL_AMFLAGS): Adjust M4 include directory. + * README: Adjust a reference to scripts/ in the text. + * configure.ac (AC_CONFIG_AUX_DIR): Copy auxiliary files to build/. + (AC_CONFIG_MACRO_DIR): Place Autoconf M4 files into build/. + * docs/Makefile.am: Include $(top_srcdir)/build/doc-reference.am. + +2009-08-16 Daniel Elstner + + Copy log entry into legacy ChangeLog file + +2009-08-16 Daniel Elstner + + Update for latest mm-common 0.4 + + * configure.ac (MM_PREREQ): Require mm-common 0.4. + (MM_INIT_MODULE): Omit now optional version number argument. + (MM_CONFIG_DOCTOOL_DIR): Copy the documentation utilities into docs/ + instead of scripts/. + * Makefile.am (dist_noinst_DATA): Remove documentation utilities. + * sigc++-2.0.pc.in (htmlrefpub): Append trailing slash. + * sigc++-2.0-uninstalled.pc.in (htmlrefpub): ditto, + * docs/Makefile.am (htmlrefpub): ditto. + (doc_input): Perform a VPATH search for each input file, to correctly + handle the case of rebuilding the documentation of a tarball release + which includes the generated sources. + (dist_noinst_DATA): List documentation utilities. + +2009-08-11 Daniel Elstner + + Do not recurse into MSVC subdirectories + + * MSVC_Net200[58]/filelist.am: New Automake include files, defining + the lists of files to ship from the MSVC project directories. + * MSVC_Net200[58]/Makefile.am: Delete recursive Makefile.am files. + * Makefile.am: Include MSVC_Net200[58]/filelist.am. + (dist_noinst_DATA): Distribute MSVC project files. + (SUBDIRS): Do not recurse into the MSVC_Net200[58] subdirectories. + * configure.ac (AC_CONFIG_FILES): Remove the output files + MSVC_Net200[58]/Makefile.am from the list. + (AC_CONFIG_COMMANDS): Copy sigc++config.h into the MSVC project + directories at the end of config.status. + +2009-08-11 Daniel Elstner + + Remove now superfluous doctool overrides + + * docs/Makefile.am: Remove overrides for the documentation + utilities, since MM_CONFIG_DOCTOOL_DIR() already takes care + of setting MMDOCTOOLDIR to the local directory. + * sigc++-2.0.pc.in (datadir): Substitute value, just in case. + +2009-08-10 Daniel Elstner + + List mm-common files in scripts/.gitignore + +2009-08-10 Daniel Elstner + + Have mm-common-prepare install the doc utils + + * configure.ac: Call MM_CONFIG_DOCTOOL_DIR([scripts]) to set + up the destination directory for mm-common-prepare to copy + the documentation utilities to. + * scripts/doc-install.pl: Delete file. + * scripts/doc-postprocess.pl: ditto, + * scripts/tagfile-to-devhelp2.xsl: ditto. + +2009-08-09 Daniel Elstner + + Refresh doc-install and doc-postprocess copies + + * scripts/doc-install.pl, scripts/doc-postprocess.pl: Copy + latest versions from the mm-common module. + * docs/Makefile.am (doc_install), (doc_postprocess): Include + $(PERL) interpreter command in front of the script name. + +2009-08-08 Daniel Elstner + + Disable extraction of undocumented identifiers + + * docs/reference/Doxyfile.in (EXTRACT_ALL): Change setting to + NO, and adapt a number of related options accordingly. The + result is a net loss of about 300 generated .html files. The + roughly 450 files which remain now are still an insanely high + number, though. + (PREDEFINED): Predefine the Autoconf configuration defines to + nudge Doxygen towards documenting the canonical code paths. + +2009-08-07 Daniel Elstner + + Use #error explicitly instead of broken code + + * sigc++config.h.in: Do use the #error preprocessor directive, + instead of an errornous piece of code. This code does not need + the same level of obfuscation as an Autoconf feature test. + +2009-08-07 Daniel Elstner + + Change bug report URL to point to Bugzilla + + * configure.ac (AC_INIT): Change the bug-report argument to the + URL for filing a new libsigc++ bug on bugzilla.gnome.org. Also + name the website URL as fifth argument. It will simply be ignored + if the installed Autoconf does not support this new feature. + +2009-08-07 Daniel Elstner + + Do not enable -pedantic mode by default + + * configure.ac (MM_ARG_ENABLE_WARNINGS): Remove -pedantic from the + list of compiler flags to use at warning level "min" (the default). + +2009-08-07 Daniel Elstner + + Correct M4 forbidden tokens pattern + + * configure.ac (m4_pattern_forbid): Take into account that the + pattern is applied to tokens, not lines. Also catch unexpanded + calls to underscore-prefixed private macros. + +2009-08-06 Daniel Elstner + + Transition to new mm-common build infrastructure + + * autogen.sh: Replace with a minimal script that simply executes + mm-common-prepare, autoreconf and configure. + * configure.ac: Get rid of an enormous amount of old cruft. Use + macros from the new mm-common module to set up Doxygen for building + the documentation. Add option to enable more compiler warnings. + * sigc++-2.0-uninstalled.pc.in: New pkg-config data file to allow + linking to an uninstalled libsigc++. + * sigc++-2.0.pc.in: Modernize. Provide the location of the + installed reference documentation and the Doxygen tag file. + * sigc++config.h.in: Modernize and update for new build + infrastructure. + * Makefile.am, */Makefile.am: Modernize and adapt to the new C++ + binding build infrastructure in the mm-common module. + * sigc++/filelist.am: New Automake include file. Defines lists + of C++ and M4 source files. + * docs/Makefile.am: Rewrite using doc-reference.am from the + mm-common module. + * docs/doc-manual.am: New Automake include file for building the + libsigc++ Docbook manual. + * docs/images/Makefile.am: Remove file. + * docs/manual/Makefile.am: ditto, + * docs/reference/Makefile.am: ditto. + * docs/Makefile_web.am_fragment: Remove for now, to be taken care + of later. + * docs/reference/Doxyfile.in: Modernize and adapt to new build + infrastructure. + * docs/reference/beautify_docs.pl: Remove and use the more recent + scripts/doc-postprocess.pl instead. + * libsigc++-2.0.spec.in: Remove, to be resurrected only if someone + complains. + * scripts/Makefile.am: Remove file. Distribute the files from the + toplevel Makefile.am instead. + * scripts/cxx_std.m4: Add missing third argument to AC_DEFINE(). + * scripts/doc-install.pl: New file, copied from mm-common. + * scripts/doc-postprocess.pl: ditto, + * scripts/tagfile-to-devhelp2.xsl: ditto. + +2009-06-24 Daniel Elstner + + Add Description of a Project (DOAP) file + +2008-11-13 Murray Cumming + + Correct the download link so it shows all versions, not just 2.0. + +2008-11-13 Murray Cumming + + * docs/website/stable.shtml: Correct the download link so it shows all + versions, not just 2.0. + + svn path=/trunk/; revision=302 + +2008-10-15 Murray Cumming + + Increased version + + svn path=/trunk/; revision=301 + +2008-10-08 Armin Burgmeier + + Changed output name to match the new naming convention. + +2008-10-08 Armin Burgmeier + + * MSVN_Net2005/libsigc++2.vcproj: Changed output name to match the new + naming convention. + + * MSVC_Net2008/: Added MSVC 2008 project files. These are basically + the same as for MSVC 2005, but converted to MSVC 2008 projects. + + * configure.ac: + * Makefile.am: Added the new files to the build. + + svn path=/trunk/; revision=300 + +2008-08-08 Armin Burgmeier + + Enable the disconnect_during_emit test by default. + +2008-08-08 Armin Burgmeier + + * MSVC_Net2005/libsigc++2.sln: Enable the disconnect_during_emit test + by default. + + * MSVC_Net2005/libsigc++2.vcproj: Renamed the generated debug database + file to sigc-2.0d.pdb (the default), to stay consistent with the *mm + wrapper libraries. + + svn path=/trunk/; revision=299 + +2008-08-08 Armin Burgmeier + + Moved from MSVC_Net2003. + +2008-08-08 Armin Burgmeier + + * MSVC_Net2005/: Moved from MSVC_Net2003. + + * MSVC_Net2005/libsigc++2.sln: + * MSVC_Net2005/libsigc++2.vcproj: + * MSVC_Net2005/tests/*/*.vcproj: Converted the Visual Studio 2003 + project files to 2005 ones. + + * MSVC_Net2005/Makefile.am: + * Makefile.am: + * configure.ac: Adapted build files accordingly. + + svn path=/trunk/; revision=298 + +2008-04-06 Cedric Gustin + + Removed ATL/MFC header files dependency as afxres.h is not part of the + + 2008-04-06 Cedric Gustin + + * MSVC_Net2003/sigc-2.0.rc.in: Removed ATL/MFC header files + dependency as afxres.h is not part of the Microsoft Platform + SDK provided with Visual C++ Express 2008. + Bug #503933. + + svn path=/trunk/; revision=297 + +2008-03-10 Murray Cumming + + Increased version + + svn path=/trunk/; revision=296 + +2008-02-28 Murray Cumming + + Increased version + + svn path=/trunk/; revision=295 + +2008-02-28 Elaine Xiong + + Add ifdefs around uses of reverse_iterator to really fix the build with + +2008-02-28 Elaine Xiong + + * sigc++/macros/signal.h.m4: + * tests/test_accum_iter.cc: Add ifdefs around uses of + reverse_iterator to really fix the build with recent + versions of Sun CC. + Bug #302098. + + svn path=/trunk/; revision=294 + +2008-02-22 Murray Cumming + + Increased version + + svn path=/trunk/; revision=293 + +2008-01-01 Ryan Hill + + Include the cstdlib and cstring headers to fix the build with the gcc 4.3 + +2008-01-01 Ryan Hill + + * tests/test_copy_invalid_slot.cc: Include the cstdlib + and cstring headers to fix the build with the gcc 4.3 + pre-release. Bug #454882. + + svn path=/trunk/; revision=292 + +2007-12-09 Murray Cumming + + Added some includes to fix the build in some environments, such as when + +2007-08-31 Murray Cumming + + * tests/test_copy_invalid_slot.cc: Added some includes to + fix the build in some environments, such as when using Sun CC. + Thanks to Vladimir Marek in bug #469872. + + svn path=/trunk/; revision=291 + +2007-09-10 Murray Cumming + + Mark version in ChangeLog + + svn path=/trunk/; revision=290 + +2007-09-10 Murray Cumming + + Added MAINTAINERS file + + svn path=/trunk/; revision=288 + +2007-08-14 Murray Cumming + + Increase version + + svn path=/trunk/; revision=286 + +2007-08-14 Murray Cumming + + Removed this header. + +2007-08-14 Murray Cumming + + * sigc++/Makefile.am: + * sigc++/compatibility.h: Removed this header. + * sigc++/bind.h: + * sigc++/bind_return.h: + * sigc++/connection.h: + * sigc++/macros/class_slot.h.m4: + * sigc++/macros/hide.h.m4: + * sigc++/macros/method_slot.h.m4: + * sigc++/macros/object_slot.h.m4: + * sigc++/macros/retype.h.m4: + * sigc++/macros/signal.h.m4: + * sigc++/macros/slot.h.m4: + * sigc++/object.h: + * sigc++/retype_return.h: Removed deprecated + compatibility API, to probably fix the build with + some compilers, such as some versions of the Sun Forte C++ + CC compiler. This API has been deprecated April 2004, and + is not widely used, so it seems safe to do this now. + + * tests/Makefile.am: + * tests/test_compatibility.cc: Removed this test. + + svn path=/trunk/; revision=285 + +2007-07-28 Michael Elkstrand + + slot_iterator_buf, slot_reverse_iterator_buf: Added typedefs for + +2007-07-28 Michael Elkstrand + + * sigc++/macros/signal.h.m4: slot_iterator_buf, + slot_reverse_iterator_buf: Added typedefs for + value_type, reference, and pointer, so that these + iterators are more like standard C++ iterators, so they can + be used with standard C++ algorithms. + * tests/Makefile.am: + * tests/test_accum_iter.cc: Added a test for this. + Bug #417926. + + svn path=/trunk/; revision=284 + +2006-11-14 Daniel Elstner + + Wholly replace this script with a critter from one of my personal + + * autogen.sh: Wholly replace this script with a critter from one + of my personal projects, with slight modifications. This one does + some sophisticated stuff like probing version numbers of available + automake and aclocal executables, in order to choose the right one + accordingly. All this is necessary to make the build system work + robustly in custom environments such as Maemo where automake-1.9 + doesn't come preinstalled. + +2006-06-20 Murray Cumming + + Revert the previous changes, because none is used in the exported symbol + +2006-06-20 Murray Cumming + + * sigc++/adaptors/macros/bind.h.m4: + * sigc++/adaptors/macros/retype.h.m4: + * sigc++/functors/macros/functor_trait.h.m4: + * sigc++/functors/macros/slot.h.m4: + * sigc++/macros/retype.h.m4: + * sigc++/macros/signal.h.m4: Revert the previous changes, because none is + used in the exported symbol names from gtkmm, so this would break the ABI + of gtkmm. + +2006-06-06 Régis Duchesne + + Renamed 'nil' to 'none' to allow an Objective-C++ compiler to compile the + + 2006-05-26 Régis Duchesne + + * sigc++/adaptors/macros/bind.h.m4: + * sigc++/adaptors/macros/retype.h.m4: + * sigc++/functors/macros/functor_trait.h.m4: + * sigc++/functors/macros/slot.h.m4: + * sigc++/macros/retype.h.m4: + * sigc++/macros/signal.h.m4: + Renamed 'nil' to 'none' to allow an Objective-C++ compiler to compile + the library header files. + +2005-12-21 Murray Cumming + + Make remaining reverse_iterator_buf operator--() methods return by + +2005-12-21 Murray Cumming + + * sigc++/macros/signal.h.m4: Make remaining + reverse_iterator_buf operator--() methods + return by reference, like the operator++() methods. + Bug #304402 from John Profic. + +2005-12-20 Murray Cumming + + Make all operator--() methods return by reference, like the operator++() + +2005-12-20 Murray Cumming + + * sigc++/macros/signal.h.m4: Make all operator--() methods + return by reference, like the operator++() methods. + Bug #304402 from John Profic. + +2005-12-14 John Profic + + Fix compilation problem in the last patch. + + 2005-12-14 John Profic + + * sigc++/macros/signal.h.m4: Fix compilation problem in + the last patch. + +2005-12-14 John Profic + + Added emit_reverse(). + + 2005-12-14 John Profic + + * sigc++/macros/signal.h.m4: Added emit_reverse(). + +2005-12-14 Murray Cumming + + mark branch in ChangeLog + +2005-12-01 Murray Cumming + + slot_base::disconnect(): Set call_ to 0, to invalidate the slot, even if + + 2005-12-01 Murray Cumming + + * sigc++/functors/slot_base.cc: + slot_base::disconnect(): Set call_ to 0, + to invalidate the slot, even if parent_ is 0. + I think parent_ is, for instance, a signal, but + disconnect should still work on a slot that is not + connected to a signal, because a slot can be invoked + directly. + Fixes bug #311057 from James Lin. + +2005-12-01 Murray Cumming + + Added test case from bug #311057. + + 2005-12-01 Murray Cumming + + * tests/Makefile.am: + * tests/test_slot_disconnect.cc: Added test + case from bug #311057. + +2005-11-16 Philipp Berndt + + Make member exception_catch_functor::catcher_ + +2005-11-16 Philipp Berndt + + * sigc++/adaptors/macros/exception_catch.h.m4: Make member + exception_catch_functor::catcher_ + public so that it can be accessed by visit_each() + (bug fixed for generalization on 2004-11-06) + ~ + +2005-08-17 Murray Cumming + + Increased version. Forgot to commit this a few days ago. + +2005-08-01 Neal E. Coombes + + Updated the documentation for temp_slot_list as requested in bug #303896. + +2005-08-01 Neal E. Coombes + + * sigc++/signal_base.h: Updated the documentation for temp_slot_list + as requested in bug #303896. + +2005-08-01 Murray Cumming + + Added missing ) in call to sun_forte_workaround(), fixing build on SUN + +2005-07-13 Murray Cumming + + * sigc++/adaptors/hide.h.m4: Added missing + ) in call to sun_forte_workaround(), fixing + build on SUN Forte 5.5. Bug #312020. + +2005-08-01 Bruno Martinez + + Renamed ::sigc::is_base_and_derived::internal to + + 2005-08-19 Bruno Martinez + + * sigc++/type_traits.h: Renamed + ::sigc::is_base_and_derived::internal to + ::sigc::is_base_and_derived::internal_class + in order to avoid conflict with + namespace internal. + +2005-07-13 Murray Cumming + + fix typo. + +2005-07-13 Murray Cumming + + Correct mentions of 1.2 stuff instead of 2.0. Patch in bug #310213 from + +2005-07-13 Murray Cumming + + * docs/manual/libsigc_manual.xml: Correct mentions of + 1.2 stuff instead of 2.0. Patch in bug #310213 from + pebble.org.uk. + +2005-07-13 Murray Cumming + + Fixed typo found by Antonio Coralles. + +2005-07-13 Murray Cumming + + * docs/manual/libsigc_manual.xml: Fixed typo + found by Antonio Coralles. + +2005-07-09 Murray Cumming + + Did the same (see last commit) for slot_const_iterator and + +2005-07-09 Murray Cumming + + * sigc++/macros/signal.h.m4: Did the same (see + last commit) for slot_const_iterator and + slot_iterator_buf. + +2005-07-09 Murray Cumming + + slot_iterator: operator--() now returns value, not reference, like + +2005-07-09 Murray Cumming + + * sigc++/macros/signal.h.m4: slot_iterator: + operator--() now returns value, not reference, like + operator++() already did. This caused crashes when + using --no-inline with g++. Bug #308651 by + Michael Andres. + +2005-07-04 Murray Cumming + + Increased version + +2005-07-04 Philip Langdale + + Add a setter typedef to compose*_functor and use it instead of the + +2005-07-04 Philip Langdale + + * sigc++/adaptors/macros/compose.h.m4: Add a setter typedef to + compose*_functor and use it instead of the (incorrect) getter + typedef in the compose* specialization of visit_each<>(). + This corrects the lifetime management of slots created with + compose(). Bug #308433. + +2005-06-13 Marek Rouchal + + Specify int return type for main(), to be more ISO C++ compliant. Bug + +2005-06-13 Marek Rouchal + + * tests/test_deduce_result_type.cc: Specify int return type + for main(), to be more ISO C++ compliant. Bug #307478. + +2005-06-13 Andris Pavenis + + sigc++/adaptors/lambda/macros/select.h.m4 Specify only a type (not a + + 2005-06-11 Andris Pavenis + + * sigc++/adaptors/lambda/macros/base.h.m4: + * sigc++/adaptors/lambda/macros/select.h.m4 + * sigc++/adaptors/macros/hide.h.m4: Specify only a type (not a + parameter name) for unused member function parameters + +2005-06-12 Paul Pogonyshev + + Add test for whether the compiler allows referencing to member functions + +2005-06-12 Paul Pogonyshev + + * configure.ac: + * scripts/cxx.m4: + * sigc++config.h.in: Add test for whether the compiler allows + referencing to member functions of the class/structure being + declared from a definition of a static member variable. + Supposedly a generic solution for GCC 3.2 compilation problems. + + * sigc++/type_traits.h: Define SIGC_WRAP_IS_BASE_CLASS_ based on + results of the above test. + (struct is_base_and_derived): Wrap up is_base_class_() functions + in an internal class if SIGC_WRAP_IS_BASE_CLASS_ is defined. + +2005-06-10 Murray Cumming + + Use CALL_SIZE instead of hard-coded 7s and 6s. + +2005-06-10 Murray Cumming + + * sigc++/adaptors/macros/bind.h.m4: + * sigc++/functors/macros/slot.h.m4: + * sigc++/macros/signal.h.m4: Use CALL_SIZE instead of + hard-coded 7s and 6s. + +2005-06-10 Murray Cumming + + Increased version + +2005-06-10 Murray Cumming + + Make the limit_derived_target::with_type inner class an outer class, to + +2005-06-10 Murray Cumming + + * sigc++/visit_each.h: Make the + limit_derived_target::with_type inner class an outer class, + to satisfy the SUN CC 5.7 compiler, though I think it is a + compiler bug. Bug #302098 has the test case. + +2005-06-10 Murray Cumming + + Make the limit_derived_target::with_type inner class an outer class, to + +2005-06-10 Murray Cumming + + * sigc++/visit_each.h: Make the + limit_derived_target::with_type inner class an outer class, + to satisfy the SUN CC 5.7 compiler, though I think it is a + compiler bug. Bug #302098 has the test case. + +2005-06-09 Murray Cumming + + Increased version + +2005-06-07 Murray Cumming + + Removed missing call to missing macro from configure.in + +2005-06-07 Murray Cumming + + Specify the actual class when using test_int(), instead of the derived + + 2005-06-07 Murray Cumming + + * tests/test_compatibility.cc: Specify the actual class when + using test_int(), instead of the derived class, to fix the build + on SUN Forte CC 5.5. Patch from Friedemann Kleint in + Bug #305647 + +2005-06-07 Murray Cumming + + signal_emit::emit(): Use scope to ensure a certain order of destruction of + + 2005-06-07 Murray Cumming + + * sigc++/macros/signal.h.m4: signal_emit::emit(): Use scope to + ensure a certain order of destruction of the member variables, to + avoid a leak on MSVC++. Patch by Andreas Ames in Bug #306249. + +2005-06-07 Murray Cumming + + Added comments about commenting-out SIGC_TYPEDEF_REDEFINE_ALLOWED when + + 2005-06-07 Murray Cumming + + * sigc++/macros/signal.h.m4: Added comments about commenting-out + SIGC_TYPEDEF_REDEFINE_ALLOWED when using SUN Forte CC 5.7, + because I can not seem to create a test for it. + +2005-06-07 Murray Cumming + + Added check for the non-standard SUN Forte reverse_iterator<>, and used + + 2005-06-07 Murray Cumming + + * configure.ac: + * scripts/cxx_std.m4: + * sigc++/macros/signal.h.m4: + * sigc++config.h.in: Added check for + the non-standard SUN Forte reverse_iterator<>, + and used it. This is based on the same stuff in + gtkmm. + +2005-06-07 Murray Cumming + + limit_derived_target(): Just some whitespace changes. + + 2005-06-07 Murray Cumming + + * sigc++/visit_each.h: limit_derived_target(): Just some whitespace + changes. + +2005-06-07 Murray Cumming + + limit_derived_target(): Just some whitespace changes. + + 2005-06-07 Murray Cumming + + * sigc++/visit_each.h: limit_derived_target(): Just some whitespace + changes. + +2005-06-04 Neal E. Coombes + + Modified temp_slot_list to be a temporary view into a slot list. Instead + +2005-05-16 Neal E. Coombes + + * sigc++/signal_base.h: Modified temp_slot_list to be a temporary view + into a slot list. Instead of emptying the original it now simply tacks + a placeholder to the end of the original. It then uses this as it's + 'end' iterator. This should allow for conscious recursiveness, as well + as inserting a slot to any position in the slot list during emittion. + See bug #303896. + +2005-06-04 Friedemann Kleint + + visit_each() template specializations: Mention the bool + + 2005-06-04 Friedemann Kleint + + * sigc++/macros/limit_reference.h.m4: + visit_each() template specializations: + Mention the bool I_derives_trackable + template type, to fix the build on Solaris + Forte 5.5. + +2005-05-10 Murray Cumming + + Increased version + +2005-05-10 Murray Cumming + + Added missing include + +2005-05-10 Régis Duchesne + + New class that just stores a reference, and makes sure that if the + + 2005-05-06 Régis Duchesne + + * sigc++/macros/limit_reference.h.m4 (added): + * sigc++/Makefile.am: + New class that just stores a reference, and makes sure that if the + reference derives from trackable, then the trackable reference will be + used instead of the derived reference in visit_each(). + * sigc++/functors/macros/mem_fun.h.m4: Better fix for bug #169225 by + Régis Duchesne and Christian Hammond, based on the new limit_reference + class. + * sigc++/adaptors/bound_argument.h (added): New class (built upon the + new limit_reference class) that handles all 3 kinds of bound arguments: + by value, by reference, and by constant reference. References are + unwrapped in the bound_argument's constructor. + * sigc++/adaptors/macros/bind.h.m4: Fix for bug #302327 by Régis + Duchesne. Bound arguments now need to know whether they are passed by + reference or not. So bind() now builds bind_functor instances using + 'reference_wrapper' types, instead of 'Foo &' types. The + bind_functor code is modified to compensate. + * sigc++/adaptors/macros/bind_return.h.m4: Similar fix for a similar + bug (unfiled) with bound return arguments. + * sigc++/reference_wrapper.h: + * sigc++/type_traits.h: + The reference_wrapper class is only used in bound_argument.h. Put + correct but unused code under #if 0. + * sigc++/adaptors/lambda/base.h: This file needs reference_wrapper.h, + but was incorrectly relying on type_traits.h to include it. + * tests/Makefile.am: + * tests/test_virtualbase_delete.cc (deleted): + * tests/test_virtualbase_delete_ref_param.cc (deleted): + * tests/test_limit_reference.cc (added): + Replaced test_virtualbase_delete*.cc with a simpler + test_limit_reference.cc which checks for all 3 aspects of the same bug + in one file. + * tests/test_bind_ref.cc: Slots must use 'Foo &' types. We were lucky + this broken usage worked before this change. The change in + type_traits.h made this bug obvious, by preventing the code to compile. + * tests/test_bind_return.cc: After my change, bind() and bind_return() + must use 'reference_wrapper' types. + * tests/test_custom.cc: Made this test a no-op (so it does not perturb + 'make check' on released versions of the library) and made it a + template ready to be modified by hackers. + +2005-05-04 Murray Cumming + + Added missing file + +2005-05-01 Murray Cumming + + Added test case + +2005-05-01 Murray Cumming + + slot_base::slot_base(src): If the source slot_base has a null rep->call_, + + 2005-05-01 Murray Cumming + + * sigc++/functors/slot_base.cc: + slot_base::slot_base(src): If the source + slot_base has a null rep->call_, meaning that the + slot is invalid, just return a default-constructed + slot, to prevent the crash shown in + tests/tests_copy_invalid_slot.cc. Bug #302515 by + Régis Duchesne. + +2005-05-01 Murray Cumming + + Added test + +2005-05-01 Murray Cumming + + bound_*<>: Add a new is_base_and_derived parameter to the + + 2005-05-01 Murray Cumming + + * sigc++/functors/macros/mem_fun.h.m4: bound_*<>: + Add a new is_base_and_derived + parameter to the template and thereby provide a + specialization for T_Obj types that derive from + sigc::trackable. This prevents a crash when casting + from the derived type to sigc::trackable after the + derived destructor has run. This cast can sometimes + fail when using multiple inheritance, at least with + g++. Bug #169225 by Régis Duchesne and Christian + Hammond. + * sigc++/type_traits.h: Add documenation for + the internal is_base_and_derived<> template, which + allows us to specialize other templates for certain + template types. + +2005-04-28 Murray Cumming + + Added comments for users of g++ 3.2. + + 2005-04-28 Murray Cumming + + * sigc++/type_traits.h: Added comments for users of + g++ 3.2. + +2005-04-28 Murray Cumming + + Added simplified test case from bug #169225. We have a patch to make this + + 2005-04-28 Murray Cumming + + * tests/Makefile.am: + * tests/test_virtualbase_delete.cc: Added + simplified test case from bug #169225. We have a patch + to make this succeed but I am not ready to commit it + just yet. + +2005-04-27 Murray Cumming + + Added a place to put extra test code, so I don't have to keep installing + + 2005-04-27 Murray Cumming + + * tests/Makefile.am: + * tests/test_custom.cc: + Added a place to put extra test code, so I don't have + to keep installing my crazy libsigc++ versions. + +2005-04-27 Murray Cumming + + Revert back to the non-explicit template call, because we can not specify + + 2005-04-27 Murray Cumming + + * sigc++/visit_each.h: Revert back to the non-explicit + template call, because we can not specify the + template specialization so easily, because the + specializations have different numbers of types. + * tests/Makefile/am: + * tests/test_bind_ref.cc: Add a simple test only for + sigc::ref disconnection. + +2005-04-26 Murray Cumming + + Use the explicit template specialization, needed for Tru64 and AIX + + 2005-04-26 Murray Cumming + + * sigc++/visit_each.h: Use the explicit template + specialization, needed for Tru64 and AIX compilers. + This causes a crash in some uses of sigc::ref() + (when using g++ 3.3.4 or 3.3.5 , but not with 3.4) but + seems to fix a crash in some uses of multiple inheritance + (bug #169225). + * tests/test_bind.cc: Comment out the crashing (not with + g++ 3.4) use of sigc::ref() with an explanatory comment. + +2005-04-25 Murray Cumming + + tiny comment change + +2005-03-31 Murray Cumming + + Increased version + +2005-03-18 Murray Cumming + + Updated the list of supported compilers. + + 2005-03-18 Murray Cumming + + * index.shtml: Updated the list of supported + compilers. + +2005-03-18 Murray Cumming + + Remove links to the sourceforge download page, because we do not use it. + + 2005-03-18 Murray Cumming + + * fragments/footer.html_fragment: + * fragments/html_declaration.html_fragment: + * link.shtml: Remove links to the sourceforge + download page, because we do not use it. + * notes.shtml: Removed this. It is not linked + from anywhere anyway. + +2005-03-09 Cedric Gustin + + Fixed typo in today's date. + + 2005-03-09 Cedric Gustin + + * ChangeLog: Fixed typo in today's date. + +2005-03-09 Cedric Gustin + + Moved MSVC_Net2003 directory to SUBDIRS. Added blank.cpp to EXTRA_DIST. + + 2005-01-24 Cedric Gustin + + * Makefile.am: Moved MSVC_Net2003 directory to SUBDIRS. + * MSVC_Net2003/Makefile.am: Added blank.cpp to EXTRA_DIST. + * MSVC_Net2003/libsigc++2_msvcNet2003.sln: Removed + test_accumulated and test_lambda projects as the tests are + disabled in the standard, configure-based build. + * MSVC_Net2003/MSVC_Net2003/libsigc++2_msvcNet2003.vcproj: + Generate a PDB file in the Debug target. + +2005-03-04 Murray Cumming + + Mention actual supported compilers. Removed broken examples links. Change + +2005-03-05 Murray Cumming + + * docs/website/stable.html: Mention actual supported compilers. + * docs/website/docs.html: Removed broken examples links. Change + reference link to the reference overview page. + +2005-02-23 Murray Cumming + + Make slot_base::operator=() public, to fix the build with SUN Forte C++ + +2005-02-23 Murray Cumming + + * sigc++/functors/slot_base.h: Make slot_base::operator=() public, to + fix the build with SUN Forte C++ 5.5 and Tru64. + +2005-02-22 Murray Cumming + + Increased version + +2005-02-20 Murray Cumming + + #included to avoid an unresolved symbol error with the Tru64 + +2005-02-20 Murray Cumming + + * tests/test_slot.cc, test_disconnect.cc: #included to avoid + an unresolved symbol error with the Tru64 compiler. Solutio found by + Tim Mooney in bug #161503. + +2005-02-20 Murray Cumming + + #included to avoid an unresolved symbol error with the Tru64 + +2005-02-20 Murray Cumming + + * tests/test_slot.cc, test_disconnect.cc: #included to avoid + an unresolved symbol error with the Tru64 compiler. Solutio found by + Tim Mooney in bug #161503. + +2005-02-20 Martin Schulze + + Add some documentation. + +2005-02-20 Martin Schulze + + * sigc++/signal_base.h: Add some documentation. + +2005-02-20 Martin Schulze + + Reset deferred_ flag to false in signal_impl::sweep() (Neal E. Coombes). + +2005-02-20 Martin Schulze + + * sigc++/signal_base.cc: Reset deferred_ flag to false in + signal_impl::sweep() (Neal E. Coombes). Partly fixes bug + #167714. + +2005-02-11 Martin Schulze + + Set the correct group in post-html. + +2005-02-11 Martin Schulze + + * docs/manual/Makefile.am: Set the correct group in post-html. + +2005-02-11 Murray Cumming + + Fix typo in url for reference docs. Found by James Lin. + +2005-02-11 Murray Cumming + + * docs/website/doc.shtml: Fix typo in url for reference docs. Found by + James Lin. + +2005-02-11 Murray Cumming + + reverted stuff I did not mean to commit + +2005-02-11 Murray Cumming + + Fix typo in url for reference docs. Found by James Lin. + +2005-02-11 Murray Cumming + + * docs/website/doc.shtml: Fix typo in url for reference docs. Found by + James Lin. + +2005-02-06 Murray Cumming + + temp_slot_list::begin(), end(): Actually return the iterators. + +2005-02-06 Murray Cumming + + * sigc++/signal_base.h: temp_slot_list::begin(), end(): Actually + return the iterators. + +2005-02-04 Neal E. Coombes + + Add temp_slot_list struct to facilitate allowing new connections to a + + 2005-02-03 Neal E. Coombes + + * sigc++/signal_base.h: Add temp_slot_list struct to facilitate + allowing new connections to a signal during an emittion without + affecting that emittion. + * sigc++/macros/signal.h.m4: Use the new struct temp_slot_list + to + prevent connections made during an emittion from being called in + the + same emittion (which has the potential of causing things like + infinite loops). This guarantees an emittion will be finite, as + well + as maintaining any order of emittion guarantees that may have + already + been in place. + +2005-02-02 Murray Cumming + + Updated NEWS + +2005-02-02 Murray Cumming + + Increase version + +2005-02-02 Murray Cumming + + Reenabled tests + +2005-02-01 Murray Cumming + + Add sigc::var<>() documentation, from Roger Ferrer Ibáñez in bug + +2005-02-01 Murray Cumming + + * sigc++/adapators/macros/base.h.m4: Add sigc::var<>() documentation, + from Roger Ferrer Ibáñez in bug #149483. + +2005-02-01 Murray Cumming + + In the template specializations of visit_each(): As before, specify the + +2005-02-01 Murray Cumming + + * sigc++/adaptors/macros/compose.h.m4: In the template specializations + of visit_each(): As before, specify the specific other template + specializations of visit_each that we use. Needed by AIX. + * tests/Makefile.am: Reenabled most tests, because AIX can now + build them. + +2005-02-01 Murray Cumming + + [murrayc@localhost libsigc++2]$ more ChangeLog 2005-02-01 Murray Cumming + + * sigc++/visit_each.h: visit_each_type(): Specify the specific + template specialization of visit_each<>() to use. The AIX compiler, + and possibly the Tru64 compiler, need this extra hint. + +2005-02-01 Murray Cumming + + Define bind_functor::operator() inline because the AIX compiler/linker + +2005-02-01 Murray Cumming + + * bind.h.m4: Define bind_functor::operator() inline because the AIX + compiler/linker sometimes fails to find it when it is defined + outside of the class. + +2005-02-01 Murray Cumming + + 2.0.8: + +2005-01-30 Murray Cumming + + * sigc++/type_traits.h: is_base_and_derived: Added + avoid_gcc3_warning_(), to avoid an incorrect warning when using + g++ 3.3.5 + +2005-01-30 Murray Cumming + + is_base_and_derived: Added avoid_gcc3_warning_(), to avoid an incorrect + +2005-01-30 Murray Cumming + + * sigc++/type_traits.h: is_base_and_derived: Added + avoid_gcc3_warning_(), to avoid an incorrect warning when using + g++ 3.3.5 + +2005-01-30 Liza Klerck + + Add a sigc:: namespace prefix to the nested use of visit_each(), to avoid + +2005-01-28 Liza Klerck + + * sigc++/functors/macros/mem_fun.h.m4: Add a sigc:: namespace + prefix to the nested use of visit_each(), to avoid ambiguity when + using 2 versions of the libsigc++ API inside different namespace. + +2005-01-27 Murray Cumming + + Add a sigc:: namespace prefix to the nested use of visit_each(), to avoid + +2005-01-27 Murray Cumming + + * sigc++/adaptors/macros/adaptor_trait.h.m4: Add a sigc:: namespace + prefix to the nested use of visit_each(), to avoid ambiguity when + using 2 versions of the libsigc++ API inside different namespace, + which is not very advisable anyway. Bug #165222 from + liza at trdlnk.com. + +2005-01-26 Murray Cumming + + Increased version + +2005-01-25 Murray Cumming + + Updated NEWS + +2005-01-24 Cedric Gustin + + Moved the SIGC_USING_STD macro definition out of the SIGC_CONFIGURE + + 2005-01-24 Cedric Gustin + + * sigc++config.h.in : Moved the SIGC_USING_STD macro definition + out of the SIGC_CONFIGURE section. We also need it for MSVC. + * MSVC_Net2003/.cvsignore : Added .def and .aps files + * MSVC_Net2003/Makefile.am: Rewrote rule for local copy of + sigc++config.h (required for 'make distcheck'). + * MSVC_Net2003/libsigc++2_msvcNet2003.sln: Added test_retype and + test_disconnect_during_emit tests. + * MSVC_Net2003/tests/test_disconnect_during_emit/*, + MSVC_Net2003/tests/test_retype/*: Initial commit. + +2005-01-21 Murray Cumming + + Disabled the test_accumulator, test_bind, and test_compose tests, and part + +2005-01-21 Murray Cumming + + * tests/: Disabled the test_accumulator, test_bind, and test_compose + tests, and part of test_mem_fun because the AIX xlC compiler can not + build them, but it can still do most things, including the examples. + See the comments in tests/Makefile.am. + +2005-01-21 Murray Cumming + + non-member operator()(): Specify the extra nil arguments in the templated + +2005-01-21 Murray Cumming + + * sigc++/adaptors/bind.h.m4: non-member operator()(): Specify the + extra nil arguments in the templated class name prefix. Oddly, the + AIX xlC compiler says that the type of the first parameter does not + match the template if you don't do this. + +2005-01-21 Murray Cumming + + is_base_and_derived struct: Move the is_base_class_() functions out of the + +2005-01-21 Murray Cumming + + * sigc++/type_traits.h: is_base_and_derived struct: Move the + is_base_class_() functions out of the inner class, because the AIX + xlC compiler does not like that - see the comments in the code. + * sigc++/adaptors/bind.h.m4: Add the extra nil template types to + the template specializations, as in slot and signal. + +2005-01-21 Murray Cumming + + slot and signal template specialization for various numbers of template + +2005-01-21 Murray Cumming + + * sigc++/functors/macros/slot.h.m4, sigc++/macros/signal.h.m4: + slot and signal template specialization for + various numbers of template args: In the class slot line, specify + all the remaining template types as null, instead of expecting the + compiler to guess them in itself. This partly fixes the build on + AIX with the xlC compiler. Bug #164685. + +2005-01-19 Murray Cumming + + struct is_base_and_derived: Make the test inner struct a friend, so that + +2005-01-19 Murray Cumming + + * sigc++/type_traits: struct is_base_and_derived: Make the test inner + struct a friend, so that it can use the big inner struct. This is + required by the Tru64 compiler. + * sigc++/adaptors/lambda/base.h: Put the unwrap_lambda_value() + definitions at the top, because Tru64 (understandably) needs them to + be declared before use. + +2005-01-19 Murray Cumming + + Added cxx_std.m4, with a test copied from glibmm/scripts/cxx_std.m4 to + +2005-01-19 Murray Cumming + + * scripts/: Added cxx_std.m4, with a test copied from + glibmm/scripts/cxx_std.m4 to check if the compiler has the std:: + namespace. + * sigcconfig.h: #undef the new #define and add SIGC_USING_STD(), + like GLIBMM_USING_STD, to put stuff in the std:: namespace when it + is not there already, + * configure.in: Used the new test. + * tests/*: Uses SIG_USING_STD() for every std:: thing that we use. + This is needed by the Tru64 and HP-UX compilers when using their + defaults. + +2005-01-19 Murray Cumming + + Added cxx_std.m4, with a test copied from glibmm/scripts/cxx_std.m4 to + +2005-01-19 Murray Cumming + + * scripts/: Added cxx_std.m4, with a test copied from + glibmm/scripts/cxx_std.m4 to check if the compiler has the std:: + namespace. + * sigcconfig.h: #undef the new #define and add SIGC_USING_STD(), + like GLIBMM_USING_STD, to put stuff in the std:: namespace when it + is not there already, + * configure.in: Used the new test. + * tests/*: Uses SIG_USING_STD() for every std:: thing that we use. + This is needed by the Tru64 and HP-UX compilers when using their + defaults. + +2005-01-19 Murray Cumming + + AC_INIT(): Provide the extra tarball name parameter, so that it does not + +2005-01-19 Murray Cumming + + * configure.in: AC_INIT(): Provide the extra tarball name parameter, + so that it does not create a libsigc--- tarball. + +2005-01-19 Murray Cumming + + AC_INT(): Use libsigc++ instead of sigc++, attempting to get the correct + +2005-01-19 Murray Cumming + + * configure.in: AC_INT(): Use libsigc++ instead of sigc++, attempting + to get the correct tarball name. + +2005-01-18 Murray Cumming + + Used the autoconf 2.93 and AM_INIT_AUTOMAKE() technique to specify ustar + +2005-01-18 Murray Cumming + + * configure.in: Used the autoconf 2.93 and AM_INIT_AUTOMAKE() + technique to specify ustar format for the tarball, to prevent files + with long file names from appearing at the top of the tarball. + Based on the same fix in gtkmm 2.6. + +2005-01-18 Murray Cumming + + Specify the base class when using the rep_ member variable. This stops the + +2005-01-18 Murray Cumming + + * sigc++/functors/macros/slot_h.m4: Specify the base class when + using the rep_ member variable. This stops the HP-UX aCC compiler + from saying that a Nonstatic member is referenced in a nested class, + local class or static member initializer. Bug #150719. + +2005-01-18 Murray Cumming + + Bug #159597 - patch from e97_far at e.kth.se to replace C-style casts with + +2005-01-18 Murray Cumming + + * Bug #159597 - patch from e97_far at e.kth.se to replace C-style + casts with reinterpret_cast<> and static_cast<> to avoid warnings. + +2005-01-17 Murray Cumming + + Specifying html/index.html instead of just the html directory as a target + +2005-01-17 Murray Cumming + + * docs/manual/Makefile.am: Specifying html/index.html instead of + just the html directory as a target seems to fix distcheck problems. + I can also now confirm that the install works on solaris, when using + gmake, though not when using make. + +2005-01-17 Murray Cumming + + Add built files to DISTCLEANFILES to fix the distcheck. Specify in paths, + +2005-01-17 Murray Cumming + + * MSVC_Net2004/Makefile.am: Add built files to DISTCLEANFILES to fix + the distcheck. + * docs/reference/Makefile.am, manual/Makefile.am: Specify in + paths, to fix distcheck of the manual, and maybe fix install problems + on Solaris. + +2005-01-11 Murray Cumming + + Updated the text about binary packages. Link to the 2.0 documentation + +2005-01-11 Murray Cumming + + * docs/website/stable.html: Updated the text about binary packages. + * docs/website/docs.html: Link to the 2.0 documentation instead of the + 1.2 documentation. + +2005-01-11 GregSchussman + + Clean up punctuation, make definitions complete sentences, and add + +2004-12-17 GregSchussman + + * glossary.shtml: Clean up punctuation, make definitions complete + sentences, and add clarifications for certain definitions according to + what Murray Cumming's suggestions and answers to my questions. + Bug #161580. + +2005-01-11 Murray Cumming + + Added manual, copied from the libsigc++-1.2 cvs module, and updated it for + +2005-01-11 Murray Cumming + + * docs/: Added manual, copied from the libsigc++-1.2 cvs module, + and updated it for the new 2.0 API. + +2005-01-11 Murray Cumming + + Added website, copied from the libsigc++-1.2 cvs module. We will use it + +2005-01-11 Murray Cumming + + * docs/: Added website, copied from the libsigc++-1.2 cvs module. + We will use it from here from now on. + +2004-12-12 Cedric Gustin + + parse version tags at configure time (for sigc-2.0.rc). New resource file. + + 2004-12-11 Cedric Gustin + + * configure.ac : parse version tags at configure time (for + sigc-2.0.rc). + * MSVC_Net2003/sigc-2.0.rc.in : New resource file. + * MSVC_Net2003/Makefile.am: include sigc-2.0.rc in distribution. + +2004-12-08 Cedric Gustin + + get sigc++config.h from $(top_builddir) instead of $(top_srcdir). + + 2004-12-08 Cedric Gustin + + * MSVC_Net2003/Makefile.am: get sigc++config.h from $(top_builddir) + instead of $(top_srcdir). + +2004-12-08 Cedric Gustin + + copy sigc++config.h from $(top_srcdir) at build time. sigc++config.h + + 2004-12-08 Cedric Gustin + + * MSVC_Net2003/Makefile.am: copy sigc++config.h from $(top_srcdir) + at build time. sigc++config.h removed from CVS. + +2004-12-08 Cedric Gustin + + Renamed libsigc++ target to sigc-2.0d.dll (Debug) and sigc-2.0.dll + + 2004-12-08 Cedric Gustin + + * MSVC_Net2003/*/*.vcproj: Renamed libsigc++ target to + sigc-2.0d.dll (Debug) and sigc-2.0.dll (Release). Added + $(SolutionDir) and $(SolutionDir)\.. to "Additional Include + Directories" in tests projects. + * sigc++config.h.in: Rewrote dllexport/dllimport macros for + MSVC, for better consistency with glibmm/gtkmm. + * MSVC_Net2003/Makefile.am: copy sigc++config.h from $(top_srcdir) + at build time. + +2004-11-27 Murray Cumming + + Revert the AC_PROG_LIBTOOL change, so that this builds with actually + +2004-11-27 Murray Cumming + + * configure.in: Revert the AC_PROG_LIBTOOL change, so that this builds + with actually released libtool versions, and in jhbuild, so that it + gets testing. + +2004-11-06 Martin Schulze + + Make catcher_ member public so that it can be accessed by visit_each() + +2004-11-06 Martin Schulze + + * sigc++/adaptors/macros/exception_catch.h.m4: Make catcher_ + member + public so that it can be accessed by visit_each() (bug reported + on + ml by Philip Langdale ). + +2004-10-24 Martin Schulze + + Link with the "multithreaded DLL" runtime libraries and enable RTTI for + +2004-10-24 Martin Schulze + + * + MSVC_Net2003/*/*.vcproj: Link with the "multithreaded DLL" + runtime + libraries and enable RTTI for the MSVC build + (patch from Timothy M. Shead ). + * MSVC_Net2003/*/.cvsignore: Hide generated build files from cvs + (patch from Timothy M. Shead ). + +2004-10-12 Martin Schulze + + Update ChangeLog (add '2.0.6:'). + +2004-10-12 Martin Schulze + + Fix project files to compile out-of-the-box and add dummy file so that .cc + +2004-10-12 Martin Schulze + + * MSVC_Net2003/*/*.vcproj, MSVC_Net2003/blank.cpp: Fix project + files + to compile out-of-the-box and add dummy file so that .cc files + get + recognized as c++ code files (patch from Timothy M. Shead). + +2004-10-12 Martin Schulze + + If SIGC_NEW_DELETE_IN_LIBRARY_ONLY is defined, implement + + 2004-10-10 Martin Schulze + + * sigc++/signal_base.{h,cc}, sigc++/functors/slot_base.{h,cc}, + sigc++/functors/macros/slot.h.m4: If + SIGC_NEW_DELETE_IN_LIBRARY_ONLY + is defined, implement signal_base::operator new/delete and + slot_rep::operator new/delete (suggested by Timothy M. Shead). + Remove old work-around from 2004-10-02 since it didn't work. + +2004-10-07 Martin Schulze + + Update for libtool 1.5a (with support for Intel C++). Remove bogus + + 2004-10-07 Martin Schulze + + * configure.ac: Update for libtool 1.5a (with support for Intel C++). + * MSVC_Net2003/sigc++config.h: Remove bogus '#define' + (reported by Timothy M. Shead ). + +2004-10-02 Martin Schulze + + Bump version number to 2.0.6. Add ChangeLog summary for version 2.0.6. + + 2004-10-02 Martin Schulze + + * configure.ac: Bump version number to 2.0.6. + * NEWS: Add ChangeLog summary for version 2.0.6. + +2004-10-02 Martin Schulze + + Update tests/.cvsignore (Martin) + +2004-10-02 Martin Schulze + + Rename (typed_)slot_rep::detach to (typed_)slot_rep::destroy. Call the + + 2004-10-02 Martin Schulze + + * sigc++/functors/slot_base.{h,cc}, + sigc++/functors/macros/slot.h.m4: + Rename (typed_)slot_rep::detach to (typed_)slot_rep::destroy. + Call the dtor of the functor stored in typed_slot_rep from + destroy(). + A cleaner solution would be to add an additional "virtual" + function + that calls 'delete' or a real virtual dtor. However, this would + be + less efficient and might break the ABI. (Fixes #152323.) + +2004-10-02 Martin Schulze + + Define and use new macro SIGC_NEW_DELETE_IN_LIBRARY_ONLY to ABI-compatibly + + 2004-10-02 Martin Schulze + + * sigc++config.h.in, MSVC_Net2003/sigc++config.h, + sigc++/signal_base.cc, sigc++/functors/slot_base.{h,cc}, + sigc++/functors/macros/slot.h.m4: Define and use new macro + SIGC_NEW_DELETE_IN_LIBRARY_ONLY to ABI-compatibly move + all calls to new and delete into non-inline library code. + +2004-09-26 Martin Schulze + + Add a missing template keyword in the definition of + + 2004-09-26 Martin Schulze + + * sigc++/adaptors/lambda/macros/group.h.m4: Add a missing + template keyword in the definition of deduce_result_type::type + (hopefully fixes #152327). + +2004-09-26 Martin Schulze + + Use correct bound_mem_functor variants for const (volatile) methods (fixes + + 2004-09-26 Martin Schulze + + * sigc++/macros/object_slot.h.m4: Use correct bound_mem_functor + variants for const (volatile) methods (fixes #148744). + +2004-09-01 Martin Schulze + + Correct link to lambda module. + + 2004-09-01 Martin Schulze + + * docs/index.html: Correct link to lambda module. + +2004-09-01 Martin Schulze + + update .cvsignore + +2004-09-01 Martin Schulze + + Update compatibility section. + + 2004-09-01 Martin Schulze + + * README: Update compatibility section. + +2004-09-01 Martin Schulze + + 2.0.5: + + 2004-09-01 Martin Schulze + + * MSVC_Net2003/Makefile.am: Add sigc++config.h to EXTRA_DIST. + * configure.ac: Bump version number to 2.0.5. + * NEWS: Add ChangeLog summary for version 2.0.5. + +2004-08-21 Martin Schulze + + Use sigc::var("\n") instead of sigc::ref("\n"). Comment out the affected + + 2004-08-21 Martin Schulze + + * tests/test_lambda.cc: Use sigc::var("\n") instead of + sigc::ref("\n"). + Comment out the affected lines, nevertheless. + Sun FORTE and Compaq C++ can handle neither sigc::ref("\n") nor + sigc::var("\n"). I see more chances fixing sigc::var("\n"). + * sigc++/adaptors/lambda/macros/base.h.m4: Add a comment about a + possible work around for sigc::var("\n") compiler problems. + * tests/test_compatibility.cc: Remove a 'const' keyword that + prevents + the test case from compiling with the Sun FORTE. + * tests/test_trackable.cc: Remove a 'virtual' keyword and an + unused + variable to avoid compiler warnings. + * NEWS: Add ChangeLog summary for version 2.0.4. + +2004-08-09 Murray Cumming + + tiny ChangeLog fix + +2004-08-04 James Lin + + Added SIGC_API qualifier to all externally-visible non-template + + 2004-08-03 James Lin + + * Added SIGC_API qualifier to all externally-visible + non-template + classes/structs. + * Added #include to the files that use + SIGC_API. + * Added empty SIGC_API definition to sigc++config.h.in for + non-MSVC + compilers. I'm not sure if this is the right place to put this + (probably not). + * Added MSVC-specific sigc++config.h to the MSVC project + directory. + (The comment in it probably should be edited.) + * Changed MSVC project settings to output a multi-threaded DLL, + set + the include paths to work (hopefully) out-of-the-box. Disabled + precompiled headers, since they just complicate things and + shouldn't be necessary for such a relatively project. + +2004-08-03 James Lin + + Added SIGC_API qualifier to all externally-visible non-template + + 2004-08-03 James Lin + + * Added SIGC_API qualifier to all externally-visible + non-template + classes/structs. + * Added #include to the files that use + SIGC_API. + * Added empty SIGC_API definition to sigc++config.h.in for + non-MSVC + compilers. I'm not sure if this is the right place to put this + (probably not). + * Added MSVC-specific sigc++config.h to the MSVC project + directory. + (The comment in it probably should be edited.) + * Changed MSVC project settings to output a multi-threaded DLL, + set + the include paths to work (hopefully) out-of-the-box. Disabled + precompiled headers, since they just complicate things and + shouldn't be necessary for such a relatively project. + +2004-08-01 Martin Schulze + + Remove type_trait<>::instance() (was unimplemented and unused; caused + + 2004-08-01 Martin Schulze + + * sigc++/type_traits.h: Remove type_trait<>::instance() + (was unimplemented and unused; caused problems with the MSVC). + +2004-07-23 Martin Schulze + + Fix typo concerning distribution of libsigc++-2.0.spec. Mention our + + 2004-07-23 Martin Schulze + + * Makefile.am: Fix typo concerning distribution of + libsigc++-2.0.spec. + * AUTHORS: Mention our contributors for platforms Sun FORTE and + Intel C++. + +2004-07-15 Martin Schulze + + Don't call operator()() in sun_forte_workaround(); rather copy + + 2004-07-15 Martin Schulze + + * *.h.m4: Don't call operator()() in sun_forte_workaround(); rather copy + operator()(). Calling operator()() makes a copy of the arguments causing + wrong results if an argument type is a reference. Hopefully fixes #147311. + +2004-07-15 Martin Schulze + + Break "std::cout << [expr] << a << std::endl;" into "std::cout << [expr]; + + 2004-07-15 Martin Schulze + + * tests/test_lambda.cc: Break "std::cout << [expr] << a << std::endl;" + into "std::cout << [expr]; std::cout << a << std::endl;". + I hope this fixes #147313 where the right values for "[expr]" but wrong + values for "a" were written to std::cout for some compiler with optimizations + turned off. + +2004-07-15 Martin Schulze + + Correct return type deduction of lambda expressions in + + 2004-07-15 Martin Schulze + + * sigc++/adaptors/lambda/macros/operator.h.m4: Correct return type deduction + of lambda expressions in lambda_operator*::operator()(). Might be related to + bug #147313. + * sigc++/adaptors/lambda/macros/group.h.m4: Use m4 macro _P_(). + +2004-07-15 Martin Schulze + + Add configure check SIGC_OPERATOR_OVERLOAD_AMBUGUITY for a SUN FORTE + + 2004-07-15 Martin Schulze + + * scripts/cxx.m4, sigc++config.h.in, configure.ac, + sigc++/adaptors/lambda/macros/operator.h.m4, tests/test_lambda.cc: + Add configure check SIGC_OPERATOR_OVERLOAD_AMBUGUITY for a SUN FORTE + compiler problem (bug #147391). Use it to decide whether the lambda + action operators may be overloaded (not doing so restricts the API slightly). + * sigc++/adaptors/lambda/macros/operator.h.m4: Add some doxygen comments + and remove attic code. + * sigc++/adaptors/lambda/macros/base.h.m4: + Add templates unwrap_lambda_type and unwrap_lambda_value() to support + the non-overloaded lambda action operators. Also add some doxygen comments + and remove attic code. + * sigc++/adaptors/lambda/macros/group.h.m4: Fix a bug that resulted in + gargabe values being passed on to the functor contained in the group adaptor + (partly fixes #147313). + +2004-07-11 Martin Schulze + + Split SIGC_CXX_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD into + + 2004-07-11 Martin Schulze + + * scripts/cxx.m4, sigc++config.h.in, configure.ac, *.h.m4: + Split SIGC_CXX_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD + into SIGC_CXX_GCC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD + and SIGC_CXX_MSVC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD. + Remove LIBSIGC_TEMPLATE_PREFIX. Add template keyword to + SIGC_WORKAROUND_OPERATOR_PARENTHESES depending on the configure + checks. + Should fix the compiler problems with MSVC. + +2004-07-11 Martin Schulze + + Use sigc::ptr_fun instead of std::ptr_fun. (fixes bug #144846) + + 2004-07-11 Martin Schulze + + * examples/hello_world.cc: Use sigc::ptr_fun instead of + std::ptr_fun. + (fixes bug #144846) + +2004-07-11 Eric Bourque + + new file patched generate spec file ignore generated file (Martin Schulze) + + 2004-07-11 Eric Bourque + + * libsigc++-2.0.spec.in: new file + * configure.ac : patched generate spec file + * .cvsignore: ignore generated file (Martin Schulze) + * Makefile.am: distribute spec file (Martin Schulze) + +2004-07-11 Murray Cumming + + Added some comments. operator=(): Check for self-asignment, though I do + +2004-07-11 Murray Cumming + + * sigc++/connection.cc: Added some comments. + * sigc++/trackable.cc: operator=(): Check for self-asignment, though I + do not know of any actual bug that this fixes. Added some comments. + * sigc++/trackable.h Added some doxygen documentation. + +2004-07-09 Murray Cumming + + Added test_disconnect_during_emit.cc, to prove that this works. + +2004-07-09 Murray Cumming + + * tests/: Added test_disconnect_during_emit.cc, to prove that this + works. + +2004-07-08 Murray Cumming + + foo::operator(int): return a value. The SUN Forte 5.5 compiler complains + +2004-07-08 Murray Cumming + + * sigc++/tests/test_retype_return.cc: foo::operator(int): return a + value. The SUN Forte 5.5 compiler complains about this, as it should. + +2004-07-08 Murray Cumming + + class signal*: Rename the slot_list typedef to slot_list_type, because + +2004-07-08 Murray Cumming + + * sigc++/macros/signal.h.m4: class signal*: Rename the slot_list + typedef to slot_list_type, because there is already a template class + called slot_type. SUN Forte 5.5 seems to complain about this and I am + not surprised. The old typdef is still there for backwards + compatibility, except when building with SUN Forte. + +2004-07-07 Murray Cumming + + SIGC_CXX_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD(): Don't define the + +2004-07-07 Murray Cumming + + * scripts/cxx.m4: SIGC_CXX_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD(): + Don't define the SIGC_TEMPLATE_SPECIALIZATOIN_OPERATOR_OVERLOAD C + macro at all if the test fails. This might fix the build on SUN Forte. + * sigc++/functors/macros/mem_fun.h.m4: Default constructor: Initialize + the func_ptr_ member variable. I have no evidence that this solves any + problems, but it worried me. + * sigc++/functors/slot_base.h: operator bool(): Correct documentation, + to use @code instead of + * sigc++/macros/signal.h.m4: Remove the documentation for the + parameters named first and last, because they do not exist. + +2004-05-31 Martin Schulze + + Add '--force'-flag to the 'libtoolize'-command (bug #143425). + +2004-05-31 Martin Schulze + + * autogen.sh: Add '--force'-flag to the 'libtoolize'-command (bug #143425). + +2004-05-30 Martin Schulze + + Bump version number to 2.0.3. Add ChangeLog summary for version 2.0.3. Fix + +2004-05-30 Martin Schulze + + * configure.ac: Bump version number to 2.0.3. + * NEWS: Add ChangeLog summary for version 2.0.3. + * sigc++/macros/signal.h.m4: Fix segfault on emission of unconnected sig + nal. + * tests/test_signal.cc, tests/test_accumulated.cc: Emit unconnected sign + al. + * sigc++/macros/object_slot.h.m4: Suppress compiler warning at + dynamic_cast<>-test (tested by Christof Petig/Timothy M. Shead). + +2004-05-23 Martin Schulze + + Bump version number to 2.0.2. Add ChangeLog summary for version 2.0.2. + +2004-05-22 Martin Schulze + + * configure.ac: Bump version number to 2.0.2. + * NEWS: Add ChangeLog summary for version 2.0.2. + +2004-05-20 Martin Schulze + + If a custom accumulator is specified invoke it on signal emission even if + +2004-05-20 Martin Schulze + + * sigc++/macros/signal.h.m4: If a custom accumulator is specified + invoke it on signal emission even if the signal's slot list is empty. + (This used to be the case in libsigc++-1.2 as pointed out by Timothy.) + +2004-05-20 Martin Schulze + + Suppress compiler warning at dynamic_cast<>-test (suggested by Timothy M. + +2004-05-20 Martin Schulze + + * sigc++/macros/object_slot.h.m4: Suppress compiler warning at + dynamic_cast<>-test (suggested by Timothy M. Shead). + +2004-05-01 Martin Schulze + + Updated for libsigc++-2.0. + +2004-05-01 Martin Schulze + + * README: Updated for libsigc++-2.0. + +2004-04-28 Martin Schulze + + Bump version number to 2.0.1. Add ChangeLog summary for version 2.0.1. + +2004-04-27 Martin Schulze + + * configure.ac: Bump version number to 2.0.1. + * NEWS: Add ChangeLog summary for version 2.0.1. + * sigc++/adaptors/lambda/macros/base.h.m4: Fixed documentation. + * sigc++/adaptors/macros/bind.h.m4: Hide work-arounds from doxygen. + * scripts/cxx.m4, sigc++config.h.in, configure.ac, + sigc++/adaptors/macros/bind.h.m4: Removed configure check. It + showed that the Apple gcc can also compile the sophisticated version + of the work-around. + +2004-04-26 Martin Schulze + + Modified test for SigC::Object inheritance so that it also works if + +2004-04-26 Martin Schulze + + * sigc++/macros/object_slot.h.m4: Modified test for SigC::Object + inheritance so that it also works if SigC::Object is virtual base. + (Fixes bug 141094 reported by Jonathan Brandmeyer) + +2004-04-26 Martin Schulze + + Updated the configure check. It would probably have succeeded on the + +2004-04-26 Martin Schulze + + * scripts/cxx.m4: Updated the configure check. It would probably + have succeeded on the Apple. + +2004-04-26 Martin Schulze + + Add work-arounds for bind<-1>::deduce_result_type compilation error on + +2004-04-26 Martin Schulze + + * sigc++/adaptors/macros/bind.h.m4: Add work-arounds for + bind<-1>::deduce_result_type compilation error on Apple gcc 3.3. + * scripts/cxx.m4, sigc++config.h.in, configure.ac: Add configure + check for the compilation error above. + * sigc++/adaptors/lambda/macros/operator.h.m4: Replace _A with + _Aa. _A is a reserved keyword on Apple gcc 3.3 (Spundun Bhatt). + (fixes bug #10444 reported by Spundun Bhatt) + +2004-04-19 Martin Schulze + + Fixed serious bug in signal_base::impl(): Only reference a newly created + +2004-04-19 Martin Schulze + + * sigc++/signal_base.cc: Fixed serious bug in signal_base::impl(): + Only reference a newly created object (initial reference). + (This fixes bug #140269 reported by Andris.) + +2004-04-19 Murray Cumming + + Updated the operator() template check, because it failed with gcc 3.4 + +2004-04-19 Murray Cumming + + * scripts/cxx.m4: Updated the operator() template check, because it + failed with gcc 3.4 (from cvs). Apparently the template keyword can + only be used from another template. + +2004-04-12 Martin Schulze + + Bump version number to 2.0.0. Add ChangeLog summary for version 2.0.0. + +2004-04-06 Martin Schulze + + * configure.ac: Bump version number to 2.0.0. + * NEWS: Add ChangeLog summary for version 2.0.0. + * TODO, AUTHORS: Bring up to date. + * sigc++-2.0.pc.in, Makefile.am: 1.9 -> 2.0 + * Added more documentation. + +2004-04-10 Murray Cumming + + Implement blocked() to avoid undefined symbol linker error. + +2004-04-10 Murray Cumming + + * sigc++/connection.[h|cc]: Implement blocked() to avoid undefined + symbol linker error. + +2004-04-07 Murray Cumming + + dist the scripts directory. + +2004-04-08 Murray Cumming + + * dist the scripts directory. + +2004-04-06 Martin Schulze + + Bump version number to 1.9.16. Add ChangeLog summary for version 1.9.16. + +2004-04-06 Martin Schulze + + * configure.ac: Bump version number to 1.9.16. + * NEWS: Add ChangeLog summary for version 1.9.16. + +2004-04-02 Murray Cumming + + Make block() and unblock() always return a value, to fix compiler + +2004-04-02 Murray Cumming + + * sigc++/connection.cc: Make block() and unblock() always return a + value, to fix compiler warnings. Patch from bug #138620 by + Alexander Nedotsukov. + +2004-04-02 Murray Cumming + + * Fix the compile of examples/member_method.cc. Bug #131701 from + Kirill Smelkov. I also made the examples build as part of the regular + build. + +2004-04-02 Murray Cumming + + Remove every undef apart from the one we need, to avoid clashes, because + +2004-04-02 Murray Cumming + + * sigc++config.h.m4: Remove every undef apart from the one we need, to + avoid clashes, because we #include this in a public header. + +2004-03-25 Murray Cumming + + Rename the template_keyword check to template_specialization, because the + +2004-03-25 Murray Cumming + + * scripts/cxx.m4, configure.in, sigc++config.h.in: Rename the + template_keyword check to template_specialization, because the problem + is with or without the keyword. + * sigc++/adaptors/macros/adaptor_trait.h.m4: Define + SIGC_WORKAROUND_OPERATOR_PARENTHESES, which calls either operator() or + sun_forte_workaround() depending on the result of the compiler test. + * many .m4 files: Add sun_forte_workaround methods that call the + operator() methods. Put them in #ifdefs so that only SUN Forte C++ + sees them. + +2004-03-21 Murray Cumming + + Fix the sigc++config.h.in disting, to fix make distcheck. + +2004-03-22 Murray Cumming + + * Makefile.am, sigc++/Makfile.am: Fix the sigc++config.h.in disting, + to fix make distcheck. + +2004-03-21 Murray Cumming + + Rename config.h.in to sigc++config.h.in so that gtkmm does not include + +2004-03-21 Murray Cumming + + * Rename config.h.in to sigc++config.h.in so that gtkmm does not + include some other config.h at strange times - fixes a problem in + the gtkmm demos. This should really be in the sigc++ directory, but + that seems to add that as an include path, which causes the STL + headers to include sigc++/signal.h instead of some STL signal.h header. + +2004-03-20 Murray Cumming + + Install the config.h platform-specific header. Report the include path for + +2004-03-20 Murray Cumming + + * Makefile.am: Install the config.h platform-specific header. + * sigc++-2.0.pc.in: Report the include path for config.h + +2004-03-19 Murray Cumming + + Added config.h.in, using autoheader, from which config.h will be + +2004-03-20 Murray Cumming + + * Added config.h.in, using autoheader, from which config.h will be + generated, so we can detect compiler features. + * configure.ac: Added AC_CONFIG_HEADER(config.h) to generate config.h + from config.h.in. + * scripts/cxx.m4: Added this directory and file, with a + SIGC_CXX_TEMPLATE_KEYWORD_OPERATOR_OVERLOAD macro that defines + the SIGC_TEMPLATE_KEYWORD_OPERATOR_OVERLOAD C macro. + * autogen.sh: Added -I scripts to the aclocal call, so that it finds + the m4 macro for configure.ac. + * sigc++/adapators/macros/adaptor_trait.h.m4: Include config.h and + use SIGC_TEMPLATE_KEYOWRD_OPERATOR_OVERLOAD. + +2004-03-17 Martin Schulze + + Don't test making functors from overloaded methods with partial template + +2004-03-18 Martin Schulze + + * tests/test_mem_fun.cc, tests/test_ptr_fun.cc: Don't test + making functors from overloaded methods with partial template + specialization. Not portable among different compilers (SUN FORTE). + * adaptors/macros/apdaptor_trait.h.m4: Only gcc seems to use the + notation A.template operator()<...>(...) => adapt preprocessor check + for #define LIBSIGC_TEMPLATE_PREFIX. TODO: replace with configure check. + +2004-03-13 Murray Cumming + + slot_iterator_buf::operator*(): Use blocked() and empty() instead of + +2004-03-13 Murray Cumming + + * g++ 3.4 (pre-release) build fixes: + * sigc++/macros/signal.h.m4: slot_iterator_buf::operator*(): + Use blocked() and empty() instead of non-existant blocked_and_empty(). + * sigc++/functors/macros/mem_fun.h.m4: memfun_functor*::operator()(): + Use this->func_ptr_ instead of just func_ptr_. + * sigc++/adaptors/macros/deduce_result_type.h.m4: Use + T_functor::template deduce_result_type<> instead of just + T_functor::deduce_result_type<>. + * sigc++/adaptors/lambda/macros/base.h.m4, operator.h.m4, group.h.m4:: + Use template keyword again. operator[](): Use this->value_ instead of + just value_. + * sigc++/adaptors/lambda/macros/bind/m4: Use template keyword, and + this-> again. + * sigc++/adaptors/macros/compose.h.m4, hide.h.m4, bind_return.h.m4, + exception_catch.h.m4: + rettype.h.m4, rettype_return.h.m4: Use template keyword,and this-> again + +2004-02-27 Martin Schulze + + Bump version number to 1.9.15. Add ChangeLog summary for version 1.9.15. + +2004-02-27 Martin Schulze + + * configure.ac: Bump version number to 1.9.15. + * NEWS: Add ChangeLog summary for version 1.9.15. + +2004-02-27 Martin Schulze + + Make the unnumbered slot templates' copy ctors use the copy ctors of the + +2004-02-27 Martin Schulze + + * sigc++/functors/macros/slot.h.m4: Make the unnumbered slot templates' + copy ctors use the copy ctors of the base class. Fixes bug #24698. + * tests/test_slot.cc: Test copy ctor (Bryan Forbes). + +2004-02-27 Martin Schulze + + Bring it up-to-date (use sigc::ref). Make it work with the SUN Forte. + +2004-02-27 Martin Schulze + + * tests/type_functor_trait.cc: Bring it up-to-date (use sigc::ref). + Make it work with the SUN Forte. + +2004-02-24 Martin Schulze + + Make is_base_and_derived<> work with the SUN Forte. + +2004-02-24 Martin Schulze + + * sigc++/type_traits.h: Make is_base_and_derived<> work with the SUN Forte. + +2004-02-19 Martin Schulze + + Make is_base_and_derived<> platform independant. Make lambda_core<> ctors + +2004-02-19 Martin Schulze + + * sigc++/type_traits.h: Make is_base_and_derived<> platform independant. + * sigc++/adaptors/lambda/macros/base.h.m4: Make lambda_core<> ctors + explicit. Remove an unused ctor from lambda_core. + +2004-02-14 Martin Schulze + + Move some documentation to slot_base.h. Move some documentation to + +2004-02-14 Martin Schulze + + * sigc++/functors/slot_base.h, sigc++/functors/macros/slot.h.m4: + Move some documentation to slot_base.h. + * sigc++/signal_base.h, sigc++/macros/signal.h.m4: + Move some documentation to signal_base.h. + + API addition: + * sigc++/functors/macros/slot.h.m4: Add numbered slot# templates. + Make unnumbered slot templates inherit from slot#. + + API change: + * sigc++/functors/macros/mem_fun.h.m4: Allow for methods of the object's + base types to be passed into sigc::mem_fun(). (Used to be the case in + libsigc++-1.2). + +2004-02-13 Murray Cumming + + Create and use a typedef for the destroy_notify callback functions, to + +2004-02-13 Murray Cumming + + * sigc++/functors/slot_base.[h|cc], sigc++/trackable.[h|cc]: Create + and use a typedef for the destroy_notify callback functions, to avoid + confusion function pointer declaration syntax in the API. + +2004-02-13 Murray Cumming + + * Moved implementation to .cc files: + * sigc++/functors/: Added slot_base.[h|cc] which contains non-template + code that was previsouly in the generated functors/slot.h and + non-generated slot.cc files. All non-inline implementation is now in + the .cc file. + * sigc++/functors/macros/slot.m4: Removed the code that has been moved + to slot_base.[h|cc]. + * sigc++/: Added signal_base.[h|cc] which contains non-template code + that was previously in the generated signal.h and non-generated + signal.cc file. All non-inline implementation is now in the .cc file. + * sigc++/macros/signal.m4: Removed the code that ahs been moved to + signal.cc + * sigc++/connector.[h|cc]: method implementation moved to the .cc file. + +2004-02-13 Martin Schulze + + Bump version number to 1.9.14. Add ChangeLog summary for version 1.9.14. + +2004-02-13 Martin Schulze + + * configure.ac: Bump version number to 1.9.14. + * NEWS: Add ChangeLog summary for version 1.9.14. + +2004-02-10 Murray Cumming + + slot_base: Added operator bool(), needed to check for a slot that is + +2004-02-09 Murray Cumming + + * sigc++/macros/slot.h.m4: slot_base: Added operator bool(), needed to + check for a slot that is created with the default constructor. This was + present in libsigc++ 1.2 also. + +2004-02-06 Murray Cumming + + Build the docs directory, by adding it to SUBDIRS. Updated to be more + +2004-02-06 Murray Cumming + + * Makefile.am: Build the docs directory, by adding it to SUBDIRS. + * docs/Doxyfile.in: Updated to be more glibmm-like. + * Added some @deprecated doxygen bits. + * sigc++/macros/signal.h.m4: Call base constructor from signal_base + constructor - this is an error-as-warning when building gtkmm. + +2003-11-30 Martin Schulze + + Bump version number to 1.9.13. Add ChangeLog summary for version 1.9.13. + +2003-11-30 Martin Schulze + + * configure.ac: Bump version number to 1.9.13. + * NEWS: Add ChangeLog summary for version 1.9.13. + * Makefile.am, MSVC_Net2003/Makefile.am, configure.ac: + Distribute MS .Net project files. + * sigc++/adaptors/macros/[bind,hide].h.m4: Correct and add + documentation. Make hide_functor ctor explicit. + +2003-11-30 Martin Schulze + + Bump version number to 1.9.13. Add ChangeLog summary for version 1.9.13. + +2003-11-30 Martin Schulze + + * configure.ac: Bump version number to 1.9.13. + * NEWS: Add ChangeLog summary for version 1.9.13. + * Makefile.am, MSVC_Net2003/Makefile.am, configure.ac: + Distribute MS .Net project files. + * sigc++/adaptors/macros/[bind,hide].h.m4: Correct and add + documentation. Make hide_functor ctor explicit. + +2003-11-11 Martin Schulze + + Change to zero-based argument index in numbered bind() and hide() overload + +2003-11-11 Martin Schulze + + * sigc++/adaptors/macros/[bind,hide].h.m4: Change to zero-based + argument index in numbered bind() and hide() overload + (Agreement on the mailing list). + Support binding up to CALL_SIZE arguments with one bind adaptor. + (Requested by joey yandle and others). + Only support binding of multiple arguments in unnumberd overloads + to keep the API simple (Requested by Murray Cumming). + * tests/test_[bind,hide,functor_trait].cc, sigc++/bind.h: + Reflect API changes in compatibility module and test cases. + +2003-11-10 Martin Schulze + + Add unnumbered bind() and hide() overloads to make specifying the argument + +2003-11-10 Martin Schulze + + * sigc++/adaptors/macros/[bind,hide].h.m4: Add unnumbered + bind() and hide() overloads to make specifying the argument + position optional (Proposed by Jeff Franks). + * tests/test_[bind,hide].cc: Test unnumbered bind() and hide(). + * sigc++/adaptors/macros/adaptor_trait.h.m4: + Change "#ifdef MSVC" to "#ifdef _MSC_VER" (Roel Vanhout). + +2003-11-09 Martin Schulze + + Change functor type in typed_slot_rep to + +2003-11-09 Martin Schulze + + * sigc++/functors/macros/slot.h.m4: Change functor type in + typed_slot_rep to adaptor_trait::adaptor_type + and use explicit function template instantiation in + internal::slot_call::call_it(). Avoids copying of arguments + in call_it() and enables binding of object instances + to class methods through bind() (Reported by Jeff Franks). + * tests/test_bind.cc: Test binding object instances to + class methods through bind(). + * sigc++/adaptors/adaptors.h: Include retype[_result].h. + * sigc++/adaptors/macros/adaptor_trait.h.m4: + - Add documentation. + - Mark some c-tors as explicit. + - Remove ununsed operator T_functor&() from adaptor_functor. + * sigc++/adaptors/macros/deduce_result_type.h.m4: + Rewrite parts of the documentation. + * sigc++/adaptors/macros/bind.h.m4: Add documentation. + * sigc++/functors/macros/mem_fun.h.m4: Remove unnecessary + explicit markers. Minor fixes to documentation. + * sigc++/functors/macros/functor_trait.h.m4: + Minor fixes to documentation. + +2003-11-04 Martin Schulze + + Bump version number to 1.9.12. Add ChangeLog summary for version 1.9.12. + +2003-10-26 Martin Schulze + + * configure.ac: Bump version number to 1.9.12. + * NEWS: Add ChangeLog summary for version 1.9.12. + +2003-11-03 Martin Schulze + + Document accumulators. Move slot_iterator_buf into namespace internal. + +2003-11-03 Martin Schulze + + * sigc++/macros/signal.h.m4: Document accumulators. + Move slot_iterator_buf into namespace internal. Since + accumulators have the iterator type as a template argument + there is no need to expose this very internal type. + * sigc++/functors/macros/*.m4: Regroup documentation. + Documentation of the core parts of the library should be + complete by now. + +2003-11-02 Martin Schulze + + Improve documentation of the core parts of the library. Test ptr_fun() + +2003-11-02 Martin Schulze + + * Improve documentation of the core parts of the library. + * tests/test_ptr_fun.cc: Test ptr_fun() with static + member functions. + +2003-11-02 Martin Schulze + + Move all .m4 files into new subdirectories sigc++/[...]/macros. Install + +2003-11-02 Martin Schulze + + * Move all .m4 files into new subdirectories + sigc++/[...]/macros. Install the .m4 files on + "make install" (Reported by Ron Steinke). + +2003-11-02 Martin Schulze + + Move all .m4 files into new subdirectories sigc++/[...]/macros. Install + +2003-11-02 Martin Schulze + + * Move all .m4 files into new subdirectories + sigc++/[...]/macros. Install the .m4 files on + "make install" (Reported by Ron Steinke). + +2003-11-02 Martin Schulze + + Include sigc++/functors/mem_fun.h (Reported by Ron Steinke). + +2003-11-01 Martin Schulze + + * sigc++/[class,method,object]_slot.h.m4: Include + sigc++/functors/mem_fun.h (Reported by Ron Steinke). + +2003-11-01 Martin Schulze + + Add negation operator I have completely overlooked until now. Test + +2003-11-01 Martin Schulze + + * sigc++/adaptors/lambda/operator.h.m4: Add negation + operator I have completely overlooked until now. + * sigc++/tests/test_lambda.cc: Test negation operator. + +2003-11-01 Martin Schulze + + - Use a shorter notation for ..._mem_function variants. - Change order of + +2003-11-01 Martin Schulze + + * sigc++/[class_slot,method_slot,object_slot,hide].h.m4, + sigc++/signal.h.m4, sigc++/functors/mem_fun.h.m4: + - Use a shorter notation for ..._mem_function variants. + - Change order of mem_funcotr<>'s template arguments to + match std::mem_fun_t and to be more consistent with adaptors. + - Use ::sigc::slot's implicit ctor in compatibility module. + * sigc++/adaptors/lambda/operator.h.m4: Change some + lambda action names to match action names in std. + + API addition: + * sigc++/adaptors/retype.h.m4: New file adding + adaptor retype. + * sigc++/Makefile.am: Build and distribute new file. + * tests/test_retype.cc: New file testing adaptor retype. + * MSVC_Net2003/tests/test_retype/test_reytype.vcproj, + tests/Makefile.am: Build and distribute new test case. + +2003-11-01 Martin Schulze + + - Use a shorter notation for ..._mem_function variants. - Change order of + +2003-11-01 Martin Schulze + + * sigc++/[class_slot,method_slot,object_slot,hide].h.m4, + sigc++/signal.h.m4, sigc++/functors/mem_fun.h.m4: + - Use a shorter notation for ..._mem_function variants. + - Change order of mem_funcotr<>'s template arguments to + match std::mem_fun_t and to be more consistent with adaptors. + - Use ::sigc::slot's implicit ctor in compatibility module. + * sigc++/adaptors/lambda/operator.h.m4: Change some + lambda action names to match action names in std. + + API addition: + * sigc++/adaptors/retype_return.h.m4: New file adding + adaptor retype. + * sigc++/Makefile.am: Build and distribute new file. + * tests/test_retype.cc: New file testing adaptor retype. + * MSVC_Net2003/tests/test_retype/test_reytype.vcproj, + tests/Makefile.am: Build and distribute new test case. + +2003-11-01 Martin Schulze + + New directory containing project files for Visual Studio .Net 2003. + +2003-11-01 Martin Schulze + + * MSVC_Net2003: New directory containing project + files for Visual Studio .Net 2003. + Credits to Roel Vanhout ! + +2003-11-01 Martin Schulze + + Use LIBSIGC_TEMPLATE_PREFIX in explicit function template instantiations. + +2003-11-01 Martin Schulze + + * sigc++/retype.h.m4: Use LIBSIGC_TEMPLATE_PREFIX + in explicit function template instantiations. + * sigc++/type_traits.h: Add template specialization + for arrays (T_type[N]) to disable non-working member + type_trait::instance(). + * sigc++/visit_each.h: Remove more disturbing + limit_derived_target<>::operator() overloads. + (Should have noticed earlier that they are unnecessary.) + * sigc++/adaptors/deduce_result_type.h.m4, + sigc++/adaptors/lambda/operator.h.m4, + sigc++/functors/functor_trait.h.m4, + tests/test_[bind,compose,exception_catch,hide,lambda].cc: + Completely removed support for typeof(). We don't need + it any more and it is completely non-standard! + +2003-10-31 Cedric Gustin + + Added test of win32 platform. Commented out AM_DISABLE_SHARED (DLLs are + + 2003-10-30 Cedric Gustin + + * configure.ac: Added test of win32 platform. Commented + out AM_DISABLE_SHARED (DLLs are shared libraries). + * sigc++/Makefile.am: added a few LDFLAGS for win32 + DLLs. + +2003-10-30 Martin Schulze + + Add SigC::Signal#<>::slot(). Comment out make_slot() work-around. Remove + +2003-10-30 Martin Schulze + + * sigc++/signal.h.m4: Add SigC::Signal#<>::slot(). + * sigc++/slot.h.m4: Comment out make_slot() work-around. + * sigc++/adaptors/bind.h.m4: Remove unnecessary brackets + in template argument lists. They are confusing MSVC. + * sigc++/adaptors/*.h.m4, sigc++/adaptors/lambda/*.h.m4: + Use LIBSIGC_TEMPLATE_PREFIX in explicit function + template instantiations. + * sigc++/tests/test_*.cc: + - Include where std::string is used. + - Use double instead of float. + +2003-10-27 Martin Schulze + + Cleanup. Bring it up to date. + +2003-10-27 Martin Schulze + + * sigc++/retype.h.m4: Cleanup. + * TODO: Bring it up to date. + +2003-10-26 Martin Schulze + + Bump version number to 1.9.11. Add ChangeLog summary for version 1.9.11. + +2003-10-26 Martin Schulze + + * configure.ac: Bump version number to 1.9.11. + * NEWS: Add ChangeLog summary for version 1.9.11. + +2003-10-26 Martin Schulze + + Compatiblity module: Move definition of compatiblity classes SigC::SignalN + +2003-10-26 Martin Schulze + + Compatiblity module: + * sigc++/signal.h.m4: Move definition of compatiblity + classes SigC::SignalN to here. + * sigc++/connection.h: + - Add connection::connected(). + - Add compatibility typedef SigC::Connection. + * sigc++/bind.h, sigc++/bind_return.h, + sigc++/class_slot.h.m4, sigc++/hide.h.m4, + sigc++/method_slot.h.m4, sigc++/object.h, + sigc++/object_slot.h.m4, sigc++/retype.h.m4, + sigc++/retype_return.h sigc++/slot.h.m4, + sigc++/compatibility.h: + New files to complete compatibility module. + Split content of compatibility.h.m4 among the new files. + * sigc++/compatibility.h.m4: Removed. + * Makefile.am: Build and distribute new files. + * tests/test_compatibility.cc: Test new stuff. + + Fixes: + * sigc++/functors/slot.h.m4: Fix copy constructor and + operator=() of slot template. + * sigc++/adaptors/bind.h.m4: Fix deduce_result_type + template specializations. bind<0>() probably compiles + with gcc-3.3, now. + +2003-10-25 Martin Schulze + + Fixes: + +2003-10-26 Martin Schulze + + Fixes: + * sigc++/functors/slot.{cc,h.m4}: + - Fix notification process: don't defer detaching of a + slot from all referred trackables during signal emission! + - Size optimization: replace virtual functions from + struct typed_slot_rep with function pointers in slot_rep + (reduces size of a typical typed_slot_rep instantiation + by 30% !!!). + * tests/test_slot.cc: Test sigc::slot more thoroughly. + * sigc++/functors/mem_fun.h.m4: Fix visit_each(). + * sigc++/adaptos/bind_return.h.m4: Add support for + sigc::ref(). + * tests/test_bind_return.cc: Use sigc::ref(). + * sigc++/signal.h.m4: Avoid compiler warning about + uninitialized variable r_ in emit(). + * sigc++/visit_each.h: Cleanup. + + API additions: + * sigc++/adpators/lambda/operators.h.m4: Add + lambda actions sigc::{reinterpret,static,dynamic}_cast_ + to support explicit parameter conversion. + * tests/test_lambda.cc: Test sigc::static_cast_. + * sigc++/adaptors/retype_return.h.m4: New file adding + adaptor retype_return (and hide_return). + * sigc++/Makefile.am: Build and distribute new file. + * tests/test_retype_return.cc: New file testing + adaptor retype_return (and hide_return). + * tests/Makefile.am: Build and distribute new test case. + +2003-10-24 Martin Schulze + + update .cvsignore files + +2003-10-24 Martin Schulze + + Remove disturbing limit_derived_target<>::operator() overloads. Add + +2003-10-25 Martin Schulze + + * sigc++/visit_each.h: Remove disturbing + limit_derived_target<>::operator() overloads. + * sigc++/adaptors/bind.h.m4: Add support for sigc::ref(). + * tests/test_bind.cc: Test sigc::ref(). + * sigc++/adaptors/lambda/{operator,group,base}.h.m4: + - Move support for sigc::ref() from lambda_core<> into + lambda operator and lambda group creator functions. + - Add missing visit_each() overload for lambda<> template. + * tests/test_lambda.cc: Test auto-disconnection. + TODO: Fix a strange bug that leads to "Bus error" + during auto-disconnection. + +2003-10-23 Martin Schulze + + Bump version number to 1.9.10. Add ChangeLog summary for version 1.9.10. + +2003-10-23 Martin Schulze + + * configure.ac: Bump version number to 1.9.10. + * NEWS: Add ChangeLog summary for version 1.9.10. + +2003-10-23 Martin Schulze + + Move definition of struct nil into functor_trait.h. + +2003-10-23 Martin Schulze + + * sigc++/functors/{functor_trait,slot}.h.m4: + Move definition of struct nil into functor_trait.h. + +2003-10-23 Martin Schulze + + Move definition of struct nil into functor_trait.h. + +2003-10-23 Martin Schulze + + * sigc++/functors/{functor_trait,slot}.h.m4: + Move definition of struct nil into functor_trait.h. + +2003-10-23 Martin Schulze + + Disable typeof() compiler checks. Remove unnecessary deduce_result_type<> + +2003-10-23 Martin Schulze + + * configure.ac: Disable typeof() compiler checks. + * sigc++/adaptors/bind.h.m4: Remove unnecessary + deduce_result_type<> template specializations. + +2003-10-20 Martin Schulze + + Correct order of typedefs for good. (Patch from Jeff Franks.) + +2003-10-20 Martin Schulze + + * sigc++/adaptors/compose.h.m4: + Correct order of typedefs for good. (Patch from Jeff Franks.) + +2003-10-20 Martin Schulze + + Add constructor that takes a sigc::slot_base& to support 3rd-party slot + +2003-10-20 Martin Schulze + + * sigc++/connection.h: Add constructor that takes + a sigc::slot_base& to support 3rd-party slot lists + like they are used in glibmm/gtkmm. + * sigc++/functors/slot.h.m4: Make sigc::slot::call_type public. + (Fixes compile problems reported by Jeff Franks.) + * sig++/type_traits.h: Don't use long long in + sigc::is_base_and_derived. + (Fixes compile problems reported by Jeff Franks.) + * sigc++/adaptors/{bind,compose,hide,exception_catch}.h.m4: + Correct order of typedefs. (Repoted by Jeff Franks.) + * configure.ac: Bump version number to 1.9.9. + * NEWS: Add ChangeLog summary for version 1.9.9. + +2003-10-19 Martin Schulze + + Define doxygen group functors. Bump version number to 1.9.8. Add ChangeLog + +2003-10-19 Martin Schulze + + * sigc++/functors/slot.h.m4: Define doxygen group functors. + * configure.ac: Bump version number to 1.9.8. + * NEWS: Add ChangeLog summary for version 1.9.8. + +2003-10-19 Martin Schulze + + Add announces of versions 1.9.6 and 1.9.7. New file. Defines namespace + +2003-10-19 Martin Schulze + + * NEWS: Add announces of versions 1.9.6 and 1.9.7. + * sigc++/compatibility.h.m4: New file. Defines namespace SigC. + namespace SigC should be API compatible to libsigc++-1.2. + * sigc++/Makefile.am: Build compatibility.h. + * tests/test_compatibility.cc, tests/Makefile.am: + Add test case for compatibility module. + * docs/index.html: Change group names. + * sigc++/sigc++.h: Include connection.h. + * sigc++/connection.{cc,h}: + - Rename dependency to destroy_notify_callback. + - Change parameter name in set_slot() from d to data. + - Fix operator=(): Add "return *this;" + - Get rid of namespace functor. + - Corrections in documentation. + * sigc++/signal.{cc,h.m4}: + - Add reference counter to signal_impl. Replaces "bool destroy_". + - Move signal_base, slot_iterator[_buf], slot_list out of + namespace internal. They are part of the public API. + - Add convenience function signal#::make_slot(). + - Get rid of namespace functor. + - Corrections in documentation. + * sigc++/trackable.{cc,h}: + - Rename dependency to destroy_notify_callback. + - Rename trackable::clear() to trackable::notify_callbacks(). + - Corrections in documentation. + * sigc++/type_traits.h: Add documentation. + * sigc++/visit_each.h: + - Get rid of namespace functor. + - Add documentation. + * sigc++/adaptors[/lambda]/*: Get rid of namespace functor. + * sigc++/functors/{functor_trait.h,ptr_fun.h.m4,mem_fun.h.m4}: + - Get rid of namespace functor. + - Corrections in documentation / add documentation. + * sigc++/functors/slot.{cc,h.m4}: + - Move slot_base out of namespace internal. It's public API. + - Get rid of one-letter-parameter-names. + - Get rid of namespace functor. + - Corrections in documentation. + * tests/*.cc: Get rid of "using namespace ...". + +2003-09-10 Martin Schulze + + Add subscript ([]) and assign (=) operator. I think there are now enough + +2003-09-10 Martin Schulze + + * sigc++/adaptors/lambda/{base,operators}.h.m4: + Add subscript ([]) and assign (=) operator. I think there are now + enough operators available to make any future power user happy. + The only one missing is the comma operator and if we added it + the logical consequence would be to also add if(), switch(), do(), + etc. lambda expressions which are really out of place in libsigc++. + * sigc++/type_traits.h: Fix is_base_and_derived<> for const types. + * tests/test_lambda.cc: Test new operators. + +2003-09-04 Martin Schulze + + Bump version number to 1.9.7. + +2003-09-05 Martin Schulze + + * configure.ac: Bump version number to 1.9.7. + +2003-09-03 Martin Schulze + + - Restructure so that the size of the generated source file stays + +2003-09-03 Martin Schulze + + * sigc++/adaptors/lambda/operator.h.m4: + - Restructure so that the size of the generated source file stays + reasonable for 34 operators: There are only two lambda templates + lambda_operator and lambda_operator_unary. The action is an additional + template parameter. A small template lambda_action[_unary] is specialized + for all actions. + - Add most operators that boost::lambda supports. Missing operators are + "=", "[]", "," and support for pointer arithmetic. I don't know if it's + worth adding these. In libsigc++, the purpose of lambda operators is to + provide some extra functionality for the group adaptor. + * tests/test_lambda.cc: + Test pre-increment, address and dereference operator. + +2003-09-03 Martin Schulze + + New file reference_wrapper.h provides ref() to specify that + +2003-08-31 Martin Schulze + + * sigc++/reference_wrapper.h, sigc++/type_traits.h, sigc++/Makefile.am: + New file reference_wrapper.h provides ref() to specify that adaptors/lambdas + should take a reference to the object passed into ref() instead of a copy. + +2003-08-31 Martin Schulze + + New file reference_wrapper.h provides ref() to specify that + +2003-08-31 Martin Schulze + + * sigc++/reference_wrapper.h, sigc++/type_traits.h, sigc++/Makefile.am: + New file reference_wrapper.h provides ref() to specify that adaptors/lambdas + should take a reference to the object passed into ref() instead of a copy. + * tests/test_lambda.cc: + - Test group() with mem_fun(). + - Use ref() where lambdas should store references to objects. + - Test var() and constant(). + * sigc++/adaptors/lambda/base.h.m4: + - Support ref() in return type deduction. + - Add var() and constant() which create lambdas for usage with lambda operators. + * sigc++/adaptors/lambda/operator.h.m4: + - Fix return type deduction. + - Remove operator{+,-,*,...} overloads added on 2003-08-29. ref() is way cleaner. + * sigc++/adaptors/lambda/group.h.m4, + sigc++/adaptors/bind.h.m4, sigc++/adaptors/compose.h.m4, + sigc++/adaptors/exception_catch.h.m4, sigc++/adaptors/hide.h.m4: + Fix return type deduction. + +2003-08-29 Martin Schulze + + Add more tests. Make _1, _2, ... constant. Add operator{+,-,*,...} + +2003-08-29 Martin Schulze + + * tests/test_lambda.cc: Add more tests. + * sigc++/adaptors/lambda/select.h.m4, sigc++/adaptors/lambda/lambda.cc.m4: + Make _1, _2, ... constant. + * sigc++/adaptors/lambda/operator.h.m4: + Add operator{+,-,*,...} overloads to distinguish between const and non-const objects. + Store references to non-const objects rather than copies. + This allows expressions like e.g. std::cout << _1. + * sigc++/adaptors/lambda/base.h.m4, sigc++/adaptors/lambda/group.h.m4: + Remove void specializations. Functors returning void are tested and work fine. + +2003-08-27 Martin Schulze + + Rename, correct and improve this test case. Build and run + +2003-08-27 Martin Schulze + + * tests/test_callof.cc, tests/test_deduce_result_type.cc: + Rename, correct and improve this test case. + * tests/Makefile.am: Build and run test_deduce_result_type + instead of test_callof. + +2003-08-27 Martin Schulze + + Update TODO. + +2003-08-27 Martin Schulze + + * Update TODO. + +2003-08-27 Martin Schulze + + Remove usage of callof_ignore_arg<>. Remove the first and move + +2003-08-27 Martin Schulze + + * sigc++/adaptors/hide.h.m4: Remove usage of callof_ignore_arg<>. + * sigc++/callof.h.m4, sigc++/adaptors/deduce_result_type.h.m4, + sigc++/functors/functor_trait.h.m4: + Remove the first and move deduce_result_type templates from + functor_trait.h.m4 into new file deduce_result_type.h.m4. + * sigc++/Makefile.am, sigc++/sigc++.h, sigc++/adaptors/adaptor_trait.h.m4: + Build and include sigc++/adaptors/deduce_result_type.h instead of callof.h. + * sigc++/functors/slot.h.m4: Document struct nil. + +2003-08-24 Martin Schulze + + * sigc++/functors/functor_trait.h.m4: Simplify usage of convenience + macro SIGC_FUNCTORS_HAVE_RESULT_TYPE: + namespace sigc{ namespace functor{ SIGC_FUNCTORS_HAVE_RESULT_TYPE }} + +2003-08-24 Martin Schulze + + Merge adaptor return type deduction and typeof() into + +2003-08-24 Martin Schulze + + * sigc++/functors/functor_trait.h,m4, sigc++/adaptors[/lambda]/*.h.m4: + Merge adaptor return type deduction and typeof() into + sigc::functor::deduce_result_type. Use it for all adaptors. + * tests/test_compose.cc: Only test multi-type get-functor if + typeof() if supported. + +2003-08-23 Martin Schulze + + - Remove unnecessary void specializations. In fact, only the one for + +2003-08-24 Martin Schulze + + * sigc++/adaptors[/lambda]/*.h.m4: + - Remove unnecessary void specializations. In fact, only the one + for sigc::functor::exception_catch<> is needed and I don't really + understand why. For the lambda stuff the void specializatoins are + just commented out at the moment. + - Make typeof() optional. Surprisingly, I got the lambda stuff working + without typeof()! The test suite doesn't catch all cases yet, so maybe + some thing are still not working. + TODO: Implement configure check. + * tests/test_bind.cc, tests/test_compose.cc tests/test_exception_catch.cc, + tests/test_hide.cc, tests/test_lambda.cc: + Only test multiple functor return types if typeof() is supported. + +2003-08-06 Martin Schulze + + Add function trackable::clear(). + +2003-08-06 Martin Schulze + + * sigc++/trackable.{cc,h}: Add function trackable::clear(). + +2003-06-24 Andreas Rottmann + + Minor tweaks. + + * TODO: Minor tweaks. + +2003-06-24 Andreas Rottmann + + Minor tweaks. + +2003-06-24 Andreas Rottmann + + Use these variables. Provide doxygen with SRCDIR and TOP_SRCDIR + + * docs/reference/Doxyfile.in: Use these variables. + * docs/reference/Makefile.am (html/index.html): Provide doxygen + with SRCDIR and TOP_SRCDIR environment variables. + + * sigc++/functors/slot.h.m4: Make slot::call_type typedef public; + this fixes a g++ 3.3 error in signal.h. + + * sigc++/signal.h.m4: Make the signal::accumulated class public; + this fixes a g++ 3.3 error in test_accumulated.cc. + +2003-06-24 Andreas Rottmann + + Use these variables. Provide doxygen with SRCDIR and TOP_SRCDIR + + * docs/reference/Doxyfile.in: Use these variables. + * docs/reference/Makefile.am (html/index.html): Provide doxygen + with SRCDIR and TOP_SRCDIR environment variables. + +2003-06-23 Andreas Rottmann + + Make slot::call_type typedef public; this fixes a g++ 3.3 error in signal.h. + +2003-06-23 Andreas Rottmann + + Make the signal::accumulated class public; this fixes a g++ 3.3 error in test_accumulated.cc. + +2003-06-23 Andreas Rottmann + + Added comment author annotation. + +2003-06-23 Andreas Rottmann + + .cvignore additions. + +2003-06-15 Martin Schulze + + Correct typing error in docs. Document the whole thing. + +2003-06-15 Martin Schulze + + * sigc++/functor/slot.h.m4: Correct typing error in docs. + * sigc++/functor/ptr_fun.h.m4: Document the whole thing. + +2003-05-31 Murray Cumming + + Rearranged the groups to make it all a bit more like the libsigc++ 1.2 + +2003-05-31 Murray Cumming + + * Reference documentation: Rearranged the groups to make it all + a bit more like the libsigc++ 1.2 reference documentation. + Corrected some spelling and grammar too. + This needs a lot of work. The text is very hard to read and it's + generally not appropriate for a user of the code who doesn't + care about the internals. But it's not impossible - our examples + should show us what we need to say in the documentation. + We probably need some more groups for the extra stuff, like we do + in libsigc++ 1.2. + +2003-05-30 Martin Schulze + + Fix documentation. Document the whole thing. + +2003-05-29 Martin Schulze + + * sigc++/signal.h.m4: Fix documentation. + * sigc++/connection.h, sigc++/functor/slot.h.m4: + Document the whole thing. + +2003-05-29 Martin Schulze + + - Remove bogus operator() from unnumbered signal<> and + +2003-05-29 Martin Schulze + + * sigc++/signal.h.m4: + - Remove bogus operator() from unnumbered signal<> and + signal<>::accumulated templates. + - Document the whole thing. + + * docs/index.html: Fix some links. + +2003-04-06 Martin Schulze + + Add Doxygen framework. + +2003-04-06 Martin Schulze + + * TODO, configure.ac, Makefile.am, docs/*: + Add Doxygen framework. + +2003-04-05 Martin Schulze + + Move sigc::callof<> to sigc::functor::internal::callof<>. + +2003-04-06 Martin Schulze + + * sigc++/callof.h.m4, sigc++/adaptors/*, tests/test_callof.cc: + Move sigc::callof<> to sigc::functor::internal::callof<>. + + * sigc++/functors/mem_fun.h.m4, tests/test_mem_fun.cc: + Add new types [bound_][const_]volatile_mem_functor, visit_each() + and mem_fun() overloads for volatile qualifier. + Add ctor overloads in bound_*mem_functor and mem_fun() overloads + that take reference instead of pointer. + +2003-03-26 Martin Schulze + + Change "closure" to "slot" throughout sigc++2 (file names, class names, + +2003-03-26 Martin Schulze + + * Change "closure" to "slot" throughout sigc++2 (file names, + class names, member variables, documentation, etc.). + +2003-03-25 Martin Schulze + + Rewrite to reflect recent changes as well as recent discussions. + +2003-03-26 Martin Schulze + + * TODO: Rewrite to reflect recent changes as well as recent discussions. + +2003-03-24 Martin Schulze + + Make the adaptor's data member public so that visit_each() can access it. + +2003-03-24 Martin Schulze + + * sigc++/adaptors/bind_return.h.m4: Make the adaptor's data member + public so that visit_each() can access it. + + * sigc++/adaptors/lambda/*.h.m4: More fixes. Add a note about + malfunctioning typeof() (probably compiler bug in gcc-3.2). + + * tests/*.cc: Test references. Fix compose equivalent in test_lambda. + +2003-03-24 Martin Schulze + + Move detection of function and member method pointers' return types from + +2003-03-24 Martin Schulze + + * sigc++/Makefile.am, sigc++/functors/functor_trait.h[.m4], + sigc++/adaptors/adaptor_trait.h.m4: Move detection of function + and member method pointers' return types from adaptor_trait into + functor_trait. (We'll use functor_trait rather than adaptor_trait for + our lambda stuff.) functor_trait.h needs to be generated from .m4 now. + + * sigc++/functors/functor_trait.h.m4: Add convenience macros: + - SIGC_FUNCTORS_HAVE_RESULT_TYPE indicates that the existance of + T_functor::result_type should be assumed for all unknown functors. + - SIGC_FUNCTOR_TRAIT(T_functor, T_result) explicitly specifies the + result type of a functor. + ("typename functor_trait::result_type") is used to + determine the return type of our adaptors' operator()() overloads. + + * sigc++/adaptors/[lambda/]*.h.m4: Various fixes in visit_each() and + operator()() overloads to make these operator()() overloads usable. + Most of them were just commented out before. Some adaptor types also + have void specializations, now. + + * sigc++/adaptors/lambda/group.h.m4: Change syntax from + "[some_functor] % grp([args])" to "group([some_functor], [args])" + like we agreed on the ml some time ago. + + * sigc++/tests/test_[all adaptors].cc: Test stuff that didn't work + before. + +2003-03-22 Murray Cumming + + Added pgk-config file, from a mystery person in bug #108857 + +2003-03-22 Murray Cumming + + * Added pgk-config file, from a mystery person in bug #108857 + +2003-03-22 Martin Schulze + + Test and show how to use functor_trait for user defined or 3rd-party + +2003-03-22 Martin Schulze + + * tests/test_bind.cc: Test and show how to use functor_trait + for user defined or 3rd-party functors so that a + bind<0>([functor],[arg1])() call with no arguments can return a value. + +2003-03-20 Martin Schulze + + Add explanations. Comment in / create templates callof_safe[#]. + +2003-03-20 Martin Schulze + + * sigc++/callof.h.m4: Add explanations. Comment in / create templates + callof_safe[#]. Unfortunately they don't work for functors with overloaded + operator() so we don't use it for now. At least everything is documented. + + * sigc++/functors/functor_trait.h, sigc++/functors/*.h.m4: Add back + functor_base compiler hint. We're using it now in adaptor_functor<>. + + * sigc++/adaptors/{adaptor_trait,bind}.h.m4: Make operator() overloads + with no arguments return the result of the functor invocation. + Fix multiple bind<0>(). + * tests/test_bind.cc: Test the stuff that's working now. + +2003-03-16 Murray Cumming + + Added sigc++/sigc++.h, like in libsigc++ 1.2 Added member_method example, + +2003-03-16 Murray Cumming + + * Added sigc++/sigc++.h, like in libsigc++ 1.2 + * examples: Added member_method example, which uses a class method + and which demonstrates disconnection. + +2003-03-13 Martin Schulze + + Bump version to 1.9.6. + +2003-03-11 Andreas Rottmann + + Use substitution references instead of $(patsubst). Is shorter and fixes the strange-dirs-in-dist-tarball bug. + +2003-03-09 Martin Schulze + + Add block() capability. + +2003-03-09 Martin Schulze + + * sigc++/connection.h: Add block() capability. + +2003-03-09 Martin Schulze + + Add flag signal_impl::destroy_ and function signal_impl::destroy(). Use + +2003-03-09 Martin Schulze + + * sigc++/signal.{cc,h.m4}: Add flag signal_impl::destroy_ + and function signal_impl::destroy(). Use them to defer + the destruction of the signal_impl object during signal + emission. + + * tests/test_disconnect.cc: Add tests for the connection + class and for deleting signals during emission. + +2003-03-09 Martin Schulze + + - New files that add a connection class. Objects of this class are + +2003-03-09 Martin Schulze + + * sigc++/connection.{cc,h}, sigc++/Makefile.am: + - New files that add a connection class. Objects of this + class are constructed from closure list iterators and can + be used to disconnect the refered closure. As opposed to + iterators they stay valid beyond the lifetime of the closure. + +2003-03-09 Martin Schulze + + - Rename closure_{base,rep}::[set_]dependency_ -> [set_]parent_. - Make + +2003-03-09 Martin Schulze + + * sigc++/functors/closure.{cc,h.m4}, sigc++/signal.cc: + - Rename closure_{base,rep}::[set_]dependency_ -> [set_]parent_. + - Make closure_rep inherit trackable. This allows for + connection objects that stay valid beyond the life time + of the refered closure. + - Make some one-line-functions inline again. + +2003-03-08 Martin Schulze + + BUGFIX in trackable_dep_list::clear() + +2003-03-08 Martin Schulze + + * sigc++/trackable.cc: BUGFIX in trackable_dep_list::clear() + +2003-03-08 Andreas Rottmann + + Ignore `make dist' tarballs. + +2003-03-08 Andreas Rottmann + + The "The New Build System" changes. + +2003-03-08 Andreas Rottmann + + Re-included lambda test. + +2003-03-08 Andreas Rottmann + + Removed. Removed. Removed. Remove the above Makefiles. + + * sigc++/functors/Makfile.am: Removed. + * sigc++/adaptors/Makefile.am: Removed. + * sigc++/adaptors/lambda/Makefile.am: Removed. + * configure.ac (AC_OUTPUT): Remove the above Makefiles. + +2003-03-08 Andreas Rottmann + + Rewritten so we can build lambda cleanly. Removed. + + * sigc++/Makefile.am: Rewritten so we can build lambda cleanly. + * sigc++/Makefile.am_fragment: Removed. + +2003-03-08 Andreas Rottmann + + Typo fix. + +2003-03-07 Martin Schulze + + - signal_emit#<>: New templates replacing signal#<>::caller. The purpose + +2003-03-07 Martin Schulze + + * sigc++/signal.{cc,h.m4}: + - signal_emit#<>: New templates replacing signal#<>::caller. + The purpose of these templates is implementing the emit + function and optimizing signal emission for the case that + no accumulator is used via template specializations. + - default_accumulator<>: Removed. The default for T_accumulator + in signal#<> now is nil. An example how to use accumulators + is available in tests/test_accumulator.cc. + - signal_{base,impl}: Move the implementation of signal_base's + interface to signal_impl. An object of this class is + dynamically allocated when first connecting a closure to + the signal. This drastically reduces the size of empty signals + and allows for future addition of a reference counter to make + it safe to delete a signal during emission. + - Directly work on closure_rep during signal emission. This + seems to be quicker than using the closure templates. + - Document the classes. Restructure the header file a bit. + + * sigc++/functors/closure.h.m4: Make closure_base::rep_ data + member public, so that signal emission can directly work on it. + + * tests/test_size.cc: Add an entry for signal_impl. + +2003-03-07 Martin Schulze + + - closure_base: BUGFIXES in ~closure_base() and operator=(). - Mark some + +2003-03-07 Martin Schulze + + * sigc++/closure.{cc,h.m4}: + - closure_base: BUGFIXES in ~closure_base() and operator=(). + - Mark some functions with the inline keyword. This seems to + help gcc 3.2 to optimize signal emission and (dis)connection. + - Document the classes. Restructure the header file a bit. + +2003-03-07 Martin Schulze + + Make trackable allocate a trackable_dep_list object dynamically when + +2003-03-07 Martin Schulze + + * sigc++/trackable.{cc,h}: Make trackable allocate a + trackable_dep_list object dynamically when adding the first + dependency. (This reduces the size of objects, that are not + refered by a closure by 4 bytes (50%) and increases the size + of objects that are refered by a closure by 4 bytes (50%) + on a 32 bit architecture => This reduces total memory use + when >50% of the trackables are not refered by a closure.) + Document the classes. + +2003-03-06 Andreas Rottmann + + Added new test executables. + +2003-03-05 Martin Schulze + + Add two test cases. test_size is showing the size of public and internal + +2003-03-05 Martin Schulze + + * tests/Makefile.am, tests/test_size.cc, tests/test_accumulated.cc: + Add two test cases. test_size is showing the size of public and + internal structures. (Which apart from empty signals are smaller + than the sizes of the equivalent libsigc++-1.2 structures.) + test_accumulated is a test for the template signal<>::accumulated<> + at the same time showing the use of accumulators in libsigc++2. + +2003-03-05 Martin Schulze + + BUGFIX in template specialization + +2003-03-05 Martin Schulze + + * sigc++/visit_each.h: BUGFIX in template specialization + limit_derive_target::with_type: + Add non-const overloads for static void execute_() avoiding + compile time errors. + +2003-02-25 Andreas Rottmann + + Martin Schulze's disonnect changes. + +2003-02-25 Andreas Rottmann + + Ignore some more auto*-stuff. + +2003-02-25 Andreas Rottmann + + Ignore new diconnect test executable. + +2003-02-25 Andreas Rottmann + + Add testcase with a mixed connection & disconnection sequence. + +2003-02-25 Andreas Rottmann + + Bugfix in signal_base::insert(): Set notification function in the newly created copy of slot_ rather than in slot_ itself. + +2003-02-25 Andreas Rottmann + + Comment in typedefs for iterator types in the signal#<> class template. Make signal#<>::connect() return an iterator for convenience. + +2003-01-23 Murray Cumming + + sigc++/adaptors/lambda is disable temporarily (not built and not + +2003-01-23 Murray Cumming + + * sigc++/adaptors/lambda is disable temporarily (not built and + not distributed) because it gets built before its parent + directory, but #includes generated sources in the parent directory. + +2003-01-22 Murray Cumming + + Added Andreas Rottman's example. + +2003-01-22 Murray Cumming + + * Added Andreas Rottman's example. + +2003-01-22 Murray Cumming + + Applied Andreas Rottman's make dist fixes. + +2003-01-22 Murray Cumming + + * Applied Andreas Rottman's make dist fixes. + +2003-01-22 Murray Cumming + + Added examples directory + +2003-01-15 Murray Cumming + + Added missing files. + +2003-01-14 Murray Cumming + + Added whitespace to make the code more readable. + +2003-01-14 Murray Cumming + + * Added whitespace to make the code more readable. + +2003-01-14 Murray Cumming + + Changed copyrights. + +2003-01-13 Murray Cumming + + No more use of the scripts directory. + +2003-01-13 Murray Cumming + + initial import + diff --git a/INSTALL b/INSTALL new file mode 100644 index 0000000..8865734 --- /dev/null +++ b/INSTALL @@ -0,0 +1,368 @@ +Installation Instructions +************************* + + Copyright (C) 1994-1996, 1999-2002, 2004-2016 Free Software +Foundation, Inc. + + Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. This file is offered as-is, +without warranty of any kind. + +Basic Installation +================== + + Briefly, the shell command './configure && make && make install' +should configure, build, and install this package. The following +more-detailed instructions are generic; see the 'README' file for +instructions specific to this package. Some packages provide this +'INSTALL' file but do not implement all of the features documented +below. The lack of an optional feature in a given package is not +necessarily a bug. More recommendations for GNU packages can be found +in *note Makefile Conventions: (standards)Makefile Conventions. + + The 'configure' shell script attempts to guess correct values for +various system-dependent variables used during compilation. It uses +those values to create a 'Makefile' in each directory of the package. +It may also create one or more '.h' files containing system-dependent +definitions. Finally, it creates a shell script 'config.status' that +you can run in the future to recreate the current configuration, and a +file 'config.log' containing compiler output (useful mainly for +debugging 'configure'). + + It can also use an optional file (typically called 'config.cache' and +enabled with '--cache-file=config.cache' or simply '-C') that saves the +results of its tests to speed up reconfiguring. Caching is disabled by +default to prevent problems with accidental use of stale cache files. + + If you need to do unusual things to compile the package, please try +to figure out how 'configure' could check whether to do them, and mail +diffs or instructions to the address given in the 'README' so they can +be considered for the next release. If you are using the cache, and at +some point 'config.cache' contains results you don't want to keep, you +may remove or edit it. + + The file 'configure.ac' (or 'configure.in') is used to create +'configure' by a program called 'autoconf'. You need 'configure.ac' if +you want to change it or regenerate 'configure' using a newer version of +'autoconf'. + + The simplest way to compile this package is: + + 1. 'cd' to the directory containing the package's source code and type + './configure' to configure the package for your system. + + Running 'configure' might take a while. While running, it prints + some messages telling which features it is checking for. + + 2. Type 'make' to compile the package. + + 3. Optionally, type 'make check' to run any self-tests that come with + the package, generally using the just-built uninstalled binaries. + + 4. Type 'make install' to install the programs and any data files and + documentation. When installing into a prefix owned by root, it is + recommended that the package be configured and built as a regular + user, and only the 'make install' phase executed with root + privileges. + + 5. Optionally, type 'make installcheck' to repeat any self-tests, but + this time using the binaries in their final installed location. + This target does not install anything. Running this target as a + regular user, particularly if the prior 'make install' required + root privileges, verifies that the installation completed + correctly. + + 6. You can remove the program binaries and object files from the + source code directory by typing 'make clean'. To also remove the + files that 'configure' created (so you can compile the package for + a different kind of computer), type 'make distclean'. There is + also a 'make maintainer-clean' target, but that is intended mainly + for the package's developers. If you use it, you may have to get + all sorts of other programs in order to regenerate files that came + with the distribution. + + 7. Often, you can also type 'make uninstall' to remove the installed + files again. In practice, not all packages have tested that + uninstallation works correctly, even though it is required by the + GNU Coding Standards. + + 8. Some packages, particularly those that use Automake, provide 'make + distcheck', which can by used by developers to test that all other + targets like 'make install' and 'make uninstall' work correctly. + This target is generally not run by end users. + +Compilers and Options +===================== + + Some systems require unusual options for compilation or linking that +the 'configure' script does not know about. Run './configure --help' +for details on some of the pertinent environment variables. + + You can give 'configure' initial values for configuration parameters +by setting variables in the command line or in the environment. Here is +an example: + + ./configure CC=c99 CFLAGS=-g LIBS=-lposix + + *Note Defining Variables::, for more details. + +Compiling For Multiple Architectures +==================================== + + You can compile the package for more than one kind of computer at the +same time, by placing the object files for each architecture in their +own directory. To do this, you can use GNU 'make'. 'cd' to the +directory where you want the object files and executables to go and run +the 'configure' script. 'configure' automatically checks for the source +code in the directory that 'configure' is in and in '..'. This is known +as a "VPATH" build. + + With a non-GNU 'make', it is safer to compile the package for one +architecture at a time in the source code directory. After you have +installed the package for one architecture, use 'make distclean' before +reconfiguring for another architecture. + + On MacOS X 10.5 and later systems, you can create libraries and +executables that work on multiple system types--known as "fat" or +"universal" binaries--by specifying multiple '-arch' options to the +compiler but only a single '-arch' option to the preprocessor. Like +this: + + ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ + CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ + CPP="gcc -E" CXXCPP="g++ -E" + + This is not guaranteed to produce working output in all cases, you +may have to build one architecture at a time and combine the results +using the 'lipo' tool if you have problems. + +Installation Names +================== + + By default, 'make install' installs the package's commands under +'/usr/local/bin', include files under '/usr/local/include', etc. You +can specify an installation prefix other than '/usr/local' by giving +'configure' the option '--prefix=PREFIX', where PREFIX must be an +absolute file name. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +pass the option '--exec-prefix=PREFIX' to 'configure', the package uses +PREFIX as the prefix for installing programs and libraries. +Documentation and other data files still use the regular prefix. + + In addition, if you use an unusual directory layout you can give +options like '--bindir=DIR' to specify different values for particular +kinds of files. Run 'configure --help' for a list of the directories +you can set and what kinds of files go in them. In general, the default +for these options is expressed in terms of '${prefix}', so that +specifying just '--prefix' will affect all of the other directory +specifications that were not explicitly provided. + + The most portable way to affect installation locations is to pass the +correct locations to 'configure'; however, many packages provide one or +both of the following shortcuts of passing variable assignments to the +'make install' command line to change installation locations without +having to reconfigure or recompile. + + The first method involves providing an override variable for each +affected directory. For example, 'make install +prefix=/alternate/directory' will choose an alternate location for all +directory configuration variables that were expressed in terms of +'${prefix}'. Any directories that were specified during 'configure', +but not in terms of '${prefix}', must each be overridden at install time +for the entire installation to be relocated. The approach of makefile +variable overrides for each directory variable is required by the GNU +Coding Standards, and ideally causes no recompilation. However, some +platforms have known limitations with the semantics of shared libraries +that end up requiring recompilation when using this method, particularly +noticeable in packages that use GNU Libtool. + + The second method involves providing the 'DESTDIR' variable. For +example, 'make install DESTDIR=/alternate/directory' will prepend +'/alternate/directory' before all installation names. The approach of +'DESTDIR' overrides is not required by the GNU Coding Standards, and +does not work on platforms that have drive letters. On the other hand, +it does better at avoiding recompilation issues, and works well even +when some directory options were not specified in terms of '${prefix}' +at 'configure' time. + +Optional Features +================= + + If the package supports it, you can cause programs to be installed +with an extra prefix or suffix on their names by giving 'configure' the +option '--program-prefix=PREFIX' or '--program-suffix=SUFFIX'. + + Some packages pay attention to '--enable-FEATURE' options to +'configure', where FEATURE indicates an optional part of the package. +They may also pay attention to '--with-PACKAGE' options, where PACKAGE +is something like 'gnu-as' or 'x' (for the X Window System). The +'README' should mention any '--enable-' and '--with-' options that the +package recognizes. + + For packages that use the X Window System, 'configure' can usually +find the X include and library files automatically, but if it doesn't, +you can use the 'configure' options '--x-includes=DIR' and +'--x-libraries=DIR' to specify their locations. + + Some packages offer the ability to configure how verbose the +execution of 'make' will be. For these packages, running './configure +--enable-silent-rules' sets the default to minimal output, which can be +overridden with 'make V=1'; while running './configure +--disable-silent-rules' sets the default to verbose, which can be +overridden with 'make V=0'. + +Particular systems +================== + + On HP-UX, the default C compiler is not ANSI C compatible. If GNU CC +is not installed, it is recommended to use the following options in +order to use an ANSI C compiler: + + ./configure CC="cc -Ae -D_XOPEN_SOURCE=500" + +and if that doesn't work, install pre-built binaries of GCC for HP-UX. + + HP-UX 'make' updates targets which have the same time stamps as their +prerequisites, which makes it generally unusable when shipped generated +files such as 'configure' are involved. Use GNU 'make' instead. + + On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot +parse its '' header file. The option '-nodtk' can be used as a +workaround. If GNU CC is not installed, it is therefore recommended to +try + + ./configure CC="cc" + +and if that doesn't work, try + + ./configure CC="cc -nodtk" + + On Solaris, don't put '/usr/ucb' early in your 'PATH'. This +directory contains several dysfunctional programs; working variants of +these programs are available in '/usr/bin'. So, if you need '/usr/ucb' +in your 'PATH', put it _after_ '/usr/bin'. + + On Haiku, software installed for all users goes in '/boot/common', +not '/usr/local'. It is recommended to use the following options: + + ./configure --prefix=/boot/common + +Specifying the System Type +========================== + + There may be some features 'configure' cannot figure out +automatically, but needs to determine by the type of machine the package +will run on. Usually, assuming the package is built to be run on the +_same_ architectures, 'configure' can figure that out, but if it prints +a message saying it cannot guess the machine type, give it the +'--build=TYPE' option. TYPE can either be a short name for the system +type, such as 'sun4', or a canonical name which has the form: + + CPU-COMPANY-SYSTEM + +where SYSTEM can have one of these forms: + + OS + KERNEL-OS + + See the file 'config.sub' for the possible values of each field. If +'config.sub' isn't included in this package, then this package doesn't +need to know the machine type. + + If you are _building_ compiler tools for cross-compiling, you should +use the option '--target=TYPE' to select the type of system they will +produce code for. + + If you want to _use_ a cross compiler, that generates code for a +platform different from the build platform, you should specify the +"host" platform (i.e., that on which the generated programs will +eventually be run) with '--host=TYPE'. + +Sharing Defaults +================ + + If you want to set default values for 'configure' scripts to share, +you can create a site shell script called 'config.site' that gives +default values for variables like 'CC', 'cache_file', and 'prefix'. +'configure' looks for 'PREFIX/share/config.site' if it exists, then +'PREFIX/etc/config.site' if it exists. Or, you can set the +'CONFIG_SITE' environment variable to the location of the site script. +A warning: not all 'configure' scripts look for a site script. + +Defining Variables +================== + + Variables not defined in a site shell script can be set in the +environment passed to 'configure'. However, some packages may run +configure again during the build, and the customized values of these +variables may be lost. In order to avoid this problem, you should set +them in the 'configure' command line, using 'VAR=value'. For example: + + ./configure CC=/usr/local2/bin/gcc + +causes the specified 'gcc' to be used as the C compiler (unless it is +overridden in the site shell script). + +Unfortunately, this technique does not work for 'CONFIG_SHELL' due to an +Autoconf limitation. Until the limitation is lifted, you can use this +workaround: + + CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash + +'configure' Invocation +====================== + + 'configure' recognizes the following options to control how it +operates. + +'--help' +'-h' + Print a summary of all of the options to 'configure', and exit. + +'--help=short' +'--help=recursive' + Print a summary of the options unique to this package's + 'configure', and exit. The 'short' variant lists options used only + in the top level, while the 'recursive' variant lists options also + present in any nested packages. + +'--version' +'-V' + Print the version of Autoconf used to generate the 'configure' + script, and exit. + +'--cache-file=FILE' + Enable the cache: use and save the results of the tests in FILE, + traditionally 'config.cache'. FILE defaults to '/dev/null' to + disable caching. + +'--config-cache' +'-C' + Alias for '--cache-file=config.cache'. + +'--quiet' +'--silent' +'-q' + Do not print messages saying which checks are being made. To + suppress all normal output, redirect it to '/dev/null' (any error + messages will still be shown). + +'--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + 'configure' can determine that directory automatically. + +'--prefix=DIR' + Use DIR as the installation prefix. *note Installation Names:: for + more details, including other options available for fine-tuning the + installation locations. + +'--no-create' +'-n' + Run the configure checks, but stop before creating any output + files. + +'configure' also accepts some other, not widely useful, options. Run +'configure --help' for more details. diff --git a/MSVC_NMake/Makefile.vc b/MSVC_NMake/Makefile.vc new file mode 100644 index 0000000..cb82ebb --- /dev/null +++ b/MSVC_NMake/Makefile.vc @@ -0,0 +1,57 @@ +# NMake Makefile for building libsigc++ on Windows using Visual Studio + +# The items below this line should not be changed, unless one is maintaining +# the NMake Makefiles. Customizations can be done in the following NMake Makefile +# portions (please see comments in the these files to see what can be customized): +# +# detectenv-msvc.mak +# config-msvc.mak + +!include detectenv-msvc.mak + +# Include the Makefile portions with the source listings +!include ..\sigc++\filelist.am + +# Include the Makefile portion that enables features based on user input +!include config-msvc.mak + +!if "$(VALID_CFGSET)" == "TRUE" + +# We need Visual Studio 2013 or later +!if $(VSVER) < 12 +VALID_MSC = FALSE +!else +VALID_MSC = TRUE +!endif + +!if "$(VALID_MSC)" == "TRUE" + +# Include the Makefile portion to convert the source and header lists +# into the lists we need for compilation and introspection +!include create-lists-msvc.mak + +all: $(LIBSIGC_LIB) $(libsigc_ex) all-build-info + +tests: $(libsigc_tests) all-build-info + +benchmark: all $(libsigc_bench) all-build-info + +# Include the build rules for sources, DLLs and executables +!include generate-msvc.mak +!include build-rules-msvc.mak + +!include install.mak + +!else # "$(VALID_MSC)" == "TRUE" +all: + @echo You need Visual Studio 2013 or later. + +!endif # "$(VALID_MSC)" == "TRUE" + +!else # "$(VALID_CFGSET)" == "TRUE" +all: help + @echo You need to specify a valid configuration, via + @echo CFG=release or CFG=debug +!endif # "$(VALID_CFGSET)" == "TRUE" + +!include info-msvc.mak diff --git a/MSVC_NMake/README.txt b/MSVC_NMake/README.txt new file mode 100644 index 0000000..bb0281c --- /dev/null +++ b/MSVC_NMake/README.txt @@ -0,0 +1,47 @@ +Instructions for building libsigc++ on Visual Studio +==================================================== +Building the libsigc++ on Windows is now supported using Visual Studio +versions 2013 or later in both 32-bit and 64-bit (x64) flavors, +via NMake Makefiles. Due to C++-11 usage, Visual Studio 2012 or +earlier is not supported. + +libsigc++ itself has no external dependencies, but building the +benchmark test program will require an installation of the Boost +C++ libraries. + +The following describes what items are built with the following +targets: + +-all (or no target specified): The libsigc++ DLL and the example programs. +-test: The libsigc++ DLL and the test programs. +-benchmark: The libsigc++ DLL and the benchmark program. + +The following are instructions for performing such a build. A 'clean' target is +provided-it is recommended that one cleans the build and redo the build if any +configuration option changed. An +'install' target is also provided to copy the built items in their appropriate +locations under $(PREFIX), which is described below. + +Invoke the build by issuing the command: +nmake /f Makefile.vc CFG=[release|debug] [PREFIX=...] +where: + +CFG: Required. Choose from a release or debug build. Note that + all builds generate a .pdb file for each .dll and .exe built--this refers + to the C/C++ runtime that the build uses. + +PREFIX: Optional. Base directory of where the third-party headers, libraries + and needed tools can be found, i.e. headers in $(PREFIX)\include, + libraries in $(PREFIX)\lib and tools in $(PREFIX)\bin. If not + specified, $(PREFIX) is set as $(srcroot)\..\vs$(X)\$(platform), where + $(platform) is win32 for 32-bit builds or x64 for 64-bit builds, and + $(X) is the short version of the Visual Studio used, as follows: + 2017: 15 + +Explanation of options, set by