
Hi, I'm experiencing some problems when using Boost.Test from cvs head: 1) Building boost_prg_exec_monitor.dll fails 2) Unresolved external break_exec_path when trying to use auto unit tests 3) BOOST_AUTO_TEST_MAIN no longer names master test suite 4) BOOST_AUTO_TEST_SUITE names not reported in errors 5) No of failures reported are twice as many as actual count Some more details: - Platform is XP SP2, using VC8. (1) The command line and output related to the failing build is attached to this email. (2) Build output included below. I managed to work around this by by explicitly including <boost/test/impl/unit_test_parameters.ipp> in my main module (full contents below). --- output --- 1>------ Build started: Project: rsdbcxxtest, Configuration: Debug Win32 ------ 1>Compiling... 1>main.cpp 1>Linking... 1>libboost_unit_test_framework-mt-gd.lib(exception_safety.obj) : error LNK2019: unresolved external symbol "class boost::unit_test::basic_cstring<char const > __cdecl boost::unit_test::runtime_config::break_exec_path(void)" (?break_exec_path@runtime_config@unit_test@boost@@YA?AV?$basic_cstring@$$CBD@23@XZ) referenced in function "public: __thiscall boost::itest::exception_safety_tester::exception_safety_tester(class boost::unit_test::basic_cstring<char const >)" (??0exception_safety_tester@itest@boost@@QAE@V?$basic_cstring@$$CBD@unit_test@2@@Z) 1>C:\users\jni\prj\kiruna_nmc\src\libs\rsdbcxx\Debug\rsdbcxxtest.exe : fatal error LNK1120: 1 unresolved externals -- end output --- --- main.cpp --- #define BOOST_AUTO_TEST_MAIN "rsdbcxx" #include <boost/test/auto_unit_test.hpp> #include <boost/test/impl/unit_test_parameters.ipp> // !!! Workaround !!! --- end main.cpp --- (3) - (4) If I use something like the following in one of my modules (assuming main.cpp as above), the error will still be reported as originating from the master test suite: --- BOOST_AUTO_TEST_SUITE(Foo); BOOST_AUTO_TEST_CASE(Bar) { BOOST_FAIL("Flunk!"); } BOOST_AUTO_TEST_SUITE_END(); --- (5) The failure above is reported as two failures: --- 1>Running 1 test cases... 1> x.cpp(YY): fatal error in "Bar": Flunk 1>*** 2 failures detected in test suite "Master Test Suite" --- Regards // Johan begin 666 errors.log M0SI<=7-E<G-<:FYI7'!R:EQK:7)U;F%?;FUC7&1E<'-<<W)C7&)O;W-T/D,Z M+W5S97)S+VIN:2]P<FHO:VER=6YA7VYM8R]D97!S+W-R8R]B;V]S="]T;V]L M<R]B=6EL9"]J86U?<W)C+V)I;BYN='@X-EQB:F%M+F5X92 M+7=I=&AO#0IU M="UP>71H;VX@+2UL87EO=70]<WES=&5M("TM;&EB9&ER/4,Z+W5S97)S+VIN M:2]P<FHO:VER=6YA7VYM8R]D97!S+VQI8B]B;V]S=" M+6EN8VQU9&5D:7(] M0SHO=7-E<G,O:FYI+W!R:B]K:7)U;F%?;FUC+V1E<',O:6YC;'5D90T*+7-4 M3T],4STB=F,M.%\P(B M+7=I=&@M=&5S=" M+6)U:6QD9&ER/4,Z+W5S97)S M+VIN:2]P<FHO:VER=6YA7VYM8R]D97!S+V)U:6QD+W1M<"!I;G-T86QL( T* M#0HJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ M*BHJ*BHJ*BHJ*BH-"D)U:6QD:6YG($)O;W-T+DEO<W1R96%M<R!W:71H(&)Z M:7 R('-U<'!O<G0@9&ES86)L960N#0I4;R!E;F%B;&4@8GII<#(L(&-O;G-U M;'0@=&AE($)O;W-T+DEO<W1R96%M<R!D;V-U;65N=&%T:6]N#0HJ*BHJ*BHJ M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ M*BH-"BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ M*BHJ*BHJ*BHJ*BHJ*@T*0G5I;&1I;F<@0F]O<W0N26]S=')E86US('=I=&@@ M>FQI8B!A;F0@9WII<"!S=7!P;W)T(&1I<V%B;&5D+@T*5&\@96YA8FQE('IL M:6(@86YD(&=Z:7 L(&-O;G-U;'0@=&AE($)O;W-T+DEO<W1R96%M<R!D;V-U M;65N=&%T:6]N#0HJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BH-"D)U:6QD:6YG($)O;W-T+E)E9V5X('=I M=&@@=&AE(&]P=&EO;F%L(%5N:6-O9&4O24-5('-U<'!O<G0@9&ES86)L960N M#0I0;&5A<V4@<F5F97(@=&\@=&AE($)O;W-T+E)E9V5X(&1O8W5M96YT871I M;VX@9F]R(&UO<F4@:6YF;W)M871I;VX-"BAA;F0@:68@>6]U(&1O;B=T(&MN M;W<@=VAA="!)0U4@:7,@=&AE;B!Y;W4@<')O8F%B;'D@9&]N)W0@;F5E9"!I M="DN#0HN+BYF;W5N9" X,3<V('1A<F=E=',N+BX-"BXN+G5P9&%T:6YG(#(X M('1A<F=E=',N+BX-"G9C+4QI;FL@0SHO=7-E<G,O:FYI+W!R:B]K:7)U;F%? M;FUC+V1E<',O8G5I;&0O=&UP7&)I;EQB;V]S=%QL:6)S7'1E<W1<8G5I;&1< M8F]O<W1?<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M.%\P7&1E8G5G7')U;G1I M;64M;&EN:RUS=&%T:6-<=&AR96%D:6YG+6UU;'1I7&)O;W-T7W!R9U]E>&5C M7VUO;FET;W(M;70M<V=D+F1L;"!#.B]U<V5R<R]J;FDO<')J+VMI<G5N85]N M;6,O9&5P<R]B=6EL9"]T;7!<8FEN7&)O;W-T7&QI8G-<=&5S=%QB=6EL9%QB M;V]S=%]P<F=?97AE8U]M;VYI=&]R+F1L;%QV8RTX7S!<9&5B=6=<<G5N=&EM M92UL:6YK+7-T871I8UQT:')E861I;F<M;75L=&E<8F]O<W1?<')G7V5X96-? M;6]N:71O<BUM="US9V0N;&EB#0IC<'!?;6%I;BYO8FH@.B!E<G)O<B!,3DLR M,#$Y.B!U;G)E<V]L=F5D(&5X=&5R;F%L('-Y;6)O;" B:6YT(%]?8V1E8VP@ M8W!P7VUA:6XH:6YT+&-H87(@*B J(&-O;G-T*2(@*#]C<'!?;6%I;D! 64%( M2%%!4$%$0%HI(')E9F5R96YC960@:6X@9G5N8W1I;VX@7VUA:6X-"D,Z+W5S M97)S+VIN:2]P<FHO:VER=6YA7VYM8R]D97!S+V)U:6QD+W1M<%QB:6Y<8F]O M<W1<;&EB<UQT97-T7&)U:6QD7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(N9&QL M7'9C+3A?,%QD96)U9UQR=6YT:6UE+6QI;FLM<W1A=&EC7'1H<F5A9&EN9RUM M=6QT:5QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+7-G9"YD;&P@.B!F871A M;"!E<G)O<B!,3DLQ,3(P.B Q('5N<F5S;VQV960@97AT97)N86QS#0I-:6-R M;W-O9G0@*%(I($UA;FEF97-T(%1O;VP@=F5R<VEO;B U+C(N,S<Y,"XR,#$T M#0T*0V]P>7)I9VAT("AC*2!-:6-R;W-O9G0@0V]R<&]R871I;VX@,C P-2X@ M#0T*06QL(')I9VAT<R!R97-E<G9E9"X-#0H-"FUT+F5X92 Z(&=E;F5R86P@ M97)R;W(@8S$P,3 P8C$Z($9A:6QE9"!T;R!L;V%D(&9I;&4@(D,Z+W5S97)S M+VIN:2]P<FHO:VER=6YA7VYM8R]D97!S+V)U:6QD+W1M<%QB:6Y<8F]O<W1< M;&EB<UQT97-T7&)U:6QD7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(N9&QL7'9C M+3A?,%QD96)U9UQR=6YT:6UE+6QI;FLM<W1A=&EC7'1H<F5A9&EN9RUM=6QT M:5QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+7-G9"YD;&PB+B!4:&4@<WES M=&5M(&-A;FYO="!F:6YD('1H92!F:6QE('-P96-I9FEE9"X-#0H-"B @("!# M04Q,(")#.EQD979<:61E7'9S.%Q#;VUM;VXW7%1O;VQS7"XN7"XN7%9#7&)I M;EQV8W9A<G,S,BY"050B(#YN=6P-"B @(" B0SI<9&5V7&ED95QV<SA<0V]M M;6]N-UQ4;V]L<UPN+EPN+EQ60UQB:6Y<;&EN:R(@+VYO;&]G;R O24Y#4D5- M14Y404PZ3D\@+T1%0E5'("]$3$P@+W-U8G-Y<W1E;3IC;VYS;VQE(" O;W5T M.B)#.B]U<V5R<R]J;FDO<')J+VMI<G5N85]N;6,O9&5P<R]B=6EL9"]T;7!< M8FEN7&)O;W-T7&QI8G-<=&5S=%QB=6EL9%QB;V]S=%]P<F=?97AE8U]M;VYI M=&]R+F1L;%QV8RTX7S!<9&5B=6=<<G5N=&EM92UL:6YK+7-T871I8UQT:')E M861I;F<M;75L=&E<8F]O<W1?<')G7V5X96-?;6]N:71O<BUM="US9V0N9&QL M(B O24U03$E".B)#.B]U<V5R<R]J;FDO<')J+VMI<G5N85]N;6,O9&5P<R]B M=6EL9"]T;7!<8FEN7&)O;W-T7&QI8G-<=&5S=%QB=6EL9%QB;V]S=%]P<F=? M97AE8U]M;VYI=&]R+F1L;%QV8RTX7S!<9&5B=6=<<G5N=&EM92UL:6YK+7-T M871I8UQT:')E861I;F<M;75L=&E<8F]O<W1?<')G7V5X96-?;6]N:71O<BUM M="US9V0N;&EB(B @("! (D,Z+W5S97)S+VIN:2]P<FHO:VER=6YA7VYM8R]D M97!S+V)U:6QD+W1M<%QB:6Y<8F]O<W1<;&EB<UQT97-T7&)U:6QD7&)O;W-T M7W!R9U]E>&5C7VUO;FET;W(N9&QL7'9C+3A?,%QD96)U9UQR=6YT:6UE+6QI M;FLM<W1A=&EC7'1H<F5A9&EN9RUM=6QT:5QB;V]S=%]P<F=?97AE8U]M;VYI M=&]R+6UT+7-G9"Y#340B#0H@(" @;70@+6UA;FEF97-T($,Z+W5S97)S+VIN M:2]P<FHO:VER=6YA7VYM8R]D97!S+V)U:6QD+W1M<%QB:6Y<8F]O<W1<;&EB M<UQT97-T7&)U:6QD7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(N9&QL7'9C+3A? M,%QD96)U9UQR=6YT:6UE+6QI;FLM<W1A=&EC7'1H<F5A9&EN9RUM=6QT:5QB M;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+7-G9"YD;&PN;6%N:69E<W0@+6]U M='!U=')E<V]U<F-E.D,Z+W5S97)S+VIN:2]P<FHO:VER=6YA7VYM8R]D97!S M+V)U:6QD+W1M<%QB:6Y<8F]O<W1<;&EB<UQT97-T7&)U:6QD7&)O;W-T7W!R M9U]E>&5C7VUO;FET;W(N9&QL7'9C+3A?,%QD96)U9UQR=6YT:6UE+6QI;FLM M<W1A=&EC7'1H<F5A9&EN9RUM=6QT:5QB;V]S=%]P<F=?97AE8U]M;VYI=&]R M+6UT+7-G9"YD;&P[(S(-"@T*+BXN9F%I;&5D('9C+4QI;FL@0SHO=7-E<G,O M:FYI+W!R:B]K:7)U;F%?;FUC+V1E<',O8G5I;&0O=&UP7&)I;EQB;V]S=%QL M:6)S7'1E<W1<8G5I;&1<8F]O<W1?<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M M.%\P7&1E8G5G7')U;G1I;64M;&EN:RUS=&%T:6-<=&AR96%D:6YG+6UU;'1I M7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(M;70M<V=D+F1L;"!#.B]U<V5R<R]J M;FDO<')J+VMI<G5N85]N;6,O9&5P<R]B=6EL9"]T;7!<8FEN7&)O;W-T7&QI M8G-<=&5S=%QB=6EL9%QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+F1L;%QV8RTX M7S!<9&5B=6=<<G5N=&EM92UL:6YK+7-T871I8UQT:')E861I;F<M;75L=&E< M8F]O<W1?<')G7V5X96-?;6]N:71O<BUM="US9V0N;&EB+BXN#0HN+BYS:VEP M<&5D(#Q 8F]O<W0A8F]O<W0^8F]O<W1?<')G7V5X96-?;6]N:71O<BUM="US M9V0N9&QL(&9O<B!L86-K(&]F(#Q 8F]O<W0A;&EB<R%T97-T(6)U:6QD7&)O M;W-T7W!R9U]E>&5C7VUO;FET;W(N9&QL7'9C+3A?,%QD96)U9UQR=6YT:6UE M+6QI;FLM<W1A=&EC7'1H<F5A9&EN9RUM=6QT:3YB;V]S=%]P<F=?97AE8U]M M;VYI=&]R+6UT+7-G9"YD;&PN+BX-"BXN+G-K:7!P960@/$!B;V]S="%B;V]S M=#YB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+7-G9"YL:6(@9F]R(&QA8VL@ M;V8@/$!B;V]S="%L:6)S(71E<W0A8G5I;&1<8F]O<W1?<')G7V5X96-?;6]N M:71O<BYD;&Q<=F,M.%\P7&1E8G5G7')U;G1I;64M;&EN:RUS=&%T:6-<=&AR M96%D:6YG+6UU;'1I/F)O;W-T7W!R9U]E>&5C7VUO;FET;W(M;70M<V=D+FQI M8BXN+@T*=F,M3&EN:R!#.B]U<V5R<R]J;FDO<')J+VMI<G5N85]N;6,O9&5P M<R]B=6EL9"]T;7!<8FEN7&)O;W-T7&QI8G-<=&5S=%QB=6EL9%QB;V]S=%]P M<F=?97AE8U]M;VYI=&]R+F1L;%QV8RTX7S!<9&5B=6=<=&AR96%D:6YG+6UU M;'1I7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(M;70M9V0N9&QL($,Z+W5S97)S M+VIN:2]P<FHO:VER=6YA7VYM8R]D97!S+V)U:6QD+W1M<%QB:6Y<8F]O<W1< M;&EB<UQT97-T7&)U:6QD7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(N9&QL7'9C M+3A?,%QD96)U9UQT:')E861I;F<M;75L=&E<8F]O<W1?<')G7V5X96-?;6]N M:71O<BUM="UG9"YL:6(-"F-P<%]M86EN+F]B:B Z(&5R<F]R($Q.2S(P,3DZ M('5N<F5S;VQV960@97AT97)N86P@<WEM8F]L(")I;G0@7U]C9&5C;"!C<'!? M;6%I;BAI;G0L8VAA<B J("H@8V]N<W0I(B H/V-P<%]M86EN0$!904A(44%0 M041 6BD@<F5F97)E;F-E9"!I;B!F=6YC=&EO;B!?;6%I;@T*0SHO=7-E<G,O M:FYI+W!R:B]K:7)U;F%?;FUC+V1E<',O8G5I;&0O=&UP7&)I;EQB;V]S=%QL M:6)S7'1E<W1<8G5I;&1<8F]O<W1?<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M M.%\P7&1E8G5G7'1H<F5A9&EN9RUM=6QT:5QB;V]S=%]P<F=?97AE8U]M;VYI M=&]R+6UT+6=D+F1L;" Z(&9A=&%L(&5R<F]R($Q.2S$Q,C Z(#$@=6YR97-O M;'9E9"!E>'1E<FYA;',-"DUI8W)O<V]F=" H4BD@36%N:69E<W0@5&]O;"!V M97)S:6]N(#4N,BXS-SDP+C(P,30-#0I#;W!Y<FEG:'0@*&,I($UI8W)O<V]F M="!#;W)P;W)A=&EO;B R,# U+B -#0I!;&P@<FEG:'1S(')E<V5R=F5D+@T- M"@T*;70N97AE(#H@9V5N97)A;"!E<G)O<B!C,3 Q,#!B,3H@1F%I;&5D('1O M(&QO860@9FEL92 B0SHO=7-E<G,O:FYI+W!R:B]K:7)U;F%?;FUC+V1E<',O M8G5I;&0O=&UP7&)I;EQB;V]S=%QL:6)S7'1E<W1<8G5I;&1<8F]O<W1?<')G M7V5X96-?;6]N:71O<BYD;&Q<=F,M.%\P7&1E8G5G7'1H<F5A9&EN9RUM=6QT M:5QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+6=D+F1L;"(N(%1H92!S>7-T M96T@8V%N;F]T(&9I;F0@=&AE(&9I;&4@<W!E8VEF:65D+@T-"@T*(" @($-! M3$P@(D,Z7&1E=EQI9&5<=G,X7$-O;6UO;C=<5&]O;'-<+BY<+BY<5D-<8FEN M7'9C=F%R<S,R+D)!5"(@/FYU; T*(" @(")#.EQD979<:61E7'9S.%Q#;VUM M;VXW7%1O;VQS7"XN7"XN7%9#7&)I;EQL:6YK(B O;F]L;V=O("])3D-214U% M3E1!3#I.3R O1$5"54<@+T1,3" O<W5B<WES=&5M.F-O;G-O;&4@("]O=70Z M(D,Z+W5S97)S+VIN:2]P<FHO:VER=6YA7VYM8R]D97!S+V)U:6QD+W1M<%QB M:6Y<8F]O<W1<;&EB<UQT97-T7&)U:6QD7&)O;W-T7W!R9U]E>&5C7VUO;FET M;W(N9&QL7'9C+3A?,%QD96)U9UQT:')E861I;F<M;75L=&E<8F]O<W1?<')G M7V5X96-?;6]N:71O<BUM="UG9"YD;&PB("])35!,24(Z(D,Z+W5S97)S+VIN M:2]P<FHO:VER=6YA7VYM8R]D97!S+V)U:6QD+W1M<%QB:6Y<8F]O<W1<;&EB M<UQT97-T7&)U:6QD7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(N9&QL7'9C+3A? M,%QD96)U9UQT:')E861I;F<M;75L=&E<8F]O<W1?<')G7V5X96-?;6]N:71O M<BUM="UG9"YL:6(B(" @($ B0SHO=7-E<G,O:FYI+W!R:B]K:7)U;F%?;FUC M+V1E<',O8G5I;&0O=&UP7&)I;EQB;V]S=%QL:6)S7'1E<W1<8G5I;&1<8F]O M<W1?<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M.%\P7&1E8G5G7'1H<F5A9&EN M9RUM=6QT:5QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+6=D+D--1"(-"B @ M("!M=" M;6%N:69E<W0@0SHO=7-E<G,O:FYI+W!R:B]K:7)U;F%?;FUC+V1E M<',O8G5I;&0O=&UP7&)I;EQB;V]S=%QL:6)S7'1E<W1<8G5I;&1<8F]O<W1? M<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M.%\P7&1E8G5G7'1H<F5A9&EN9RUM M=6QT:5QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+6=D+F1L;"YM86YI9F5S M=" M;W5T<'5T<F5S;W5R8V4Z0SHO=7-E<G,O:FYI+W!R:B]K:7)U;F%?;FUC M+V1E<',O8G5I;&0O=&UP7&)I;EQB;V]S=%QL:6)S7'1E<W1<8G5I;&1<8F]O M<W1?<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M.%\P7&1E8G5G7'1H<F5A9&EN M9RUM=6QT:5QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+6=D+F1L;#LC,@T* M#0HN+BYF86EL960@=F,M3&EN:R!#.B]U<V5R<R]J;FDO<')J+VMI<G5N85]N M;6,O9&5P<R]B=6EL9"]T;7!<8FEN7&)O;W-T7&QI8G-<=&5S=%QB=6EL9%QB M;V]S=%]P<F=?97AE8U]M;VYI=&]R+F1L;%QV8RTX7S!<9&5B=6=<=&AR96%D M:6YG+6UU;'1I7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(M;70M9V0N9&QL($,Z M+W5S97)S+VIN:2]P<FHO:VER=6YA7VYM8R]D97!S+V)U:6QD+W1M<%QB:6Y< M8F]O<W1<;&EB<UQT97-T7&)U:6QD7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(N M9&QL7'9C+3A?,%QD96)U9UQT:')E861I;F<M;75L=&E<8F]O<W1?<')G7V5X M96-?;6]N:71O<BUM="UG9"YL:6(N+BX-"BXN+G-K:7!P960@/$!B;V]S="%B M;V]S=#YB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+6=D+F1L;"!F;W(@;&%C M:R!O9B \0&)O;W-T(6QI8G,A=&5S="%B=6EL9%QB;V]S=%]P<F=?97AE8U]M M;VYI=&]R+F1L;%QV8RTX7S!<9&5B=6=<=&AR96%D:6YG+6UU;'1I/F)O;W-T M7W!R9U]E>&5C7VUO;FET;W(M;70M9V0N9&QL+BXN#0HN+BYS:VEP<&5D(#Q M8F]O<W0A8F]O<W0^8F]O<W1?<')G7V5X96-?;6]N:71O<BUM="UG9"YL:6(@ M9F]R(&QA8VL@;V8@/$!B;V]S="%L:6)S(71E<W0A8G5I;&1<8F]O<W1?<')G M7V5X96-?;6]N:71O<BYD;&Q<=F,M.%\P7&1E8G5G7'1H<F5A9&EN9RUM=6QT M:3YB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+6=D+FQI8BXN+@T*=F,M3&EN M:R!#.B]U<V5R<R]J;FDO<')J+VMI<G5N85]N;6,O9&5P<R]B=6EL9"]T;7!< M8FEN7&)O;W-T7&QI8G-<=&5S=%QB=6EL9%QB;V]S=%]P<F=?97AE8U]M;VYI M=&]R+F1L;%QV8RTX7S!<<F5L96%S95QR=6YT:6UE+6QI;FLM<W1A=&EC7'1H M<F5A9&EN9RUM=6QT:5QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+7,N9&QL M($,Z+W5S97)S+VIN:2]P<FHO:VER=6YA7VYM8R]D97!S+V)U:6QD+W1M<%QB M:6Y<8F]O<W1<;&EB<UQT97-T7&)U:6QD7&)O;W-T7W!R9U]E>&5C7VUO;FET M;W(N9&QL7'9C+3A?,%QR96QE87-E7')U;G1I;64M;&EN:RUS=&%T:6-<=&AR M96%D:6YG+6UU;'1I7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(M;70M<RYL:6(- M"F-P<%]M86EN+F]B:B Z(&5R<F]R($Q.2S(P,3DZ('5N<F5S;VQV960@97AT M97)N86P@<WEM8F]L(")I;G0@7U]C9&5C;"!C<'!?;6%I;BAI;G0L8VAA<B J M("H@8V]N<W0I(B H/V-P<%]M86EN0$!904A(44%0041 6BD@<F5F97)E;F-E M9"!I;B!F=6YC=&EO;B!?;6%I;@T*0SHO=7-E<G,O:FYI+W!R:B]K:7)U;F%? M;FUC+V1E<',O8G5I;&0O=&UP7&)I;EQB;V]S=%QL:6)S7'1E<W1<8G5I;&1< M8F]O<W1?<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M.%\P7')E;&5A<V5<<G5N M=&EM92UL:6YK+7-T871I8UQT:')E861I;F<M;75L=&E<8F]O<W1?<')G7V5X M96-?;6]N:71O<BUM="US+F1L;" Z(&9A=&%L(&5R<F]R($Q.2S$Q,C Z(#$@ M=6YR97-O;'9E9"!E>'1E<FYA;',-"DUI8W)O<V]F=" H4BD@36%N:69E<W0@ M5&]O;"!V97)S:6]N(#4N,BXS-SDP+C(P,30-#0I#;W!Y<FEG:'0@*&,I($UI M8W)O<V]F="!#;W)P;W)A=&EO;B R,# U+B -#0I!;&P@<FEG:'1S(')E<V5R M=F5D+@T-"@T*;70N97AE(#H@9V5N97)A;"!E<G)O<B!C,3 Q,#!B,3H@1F%I M;&5D('1O(&QO860@9FEL92 B0SHO=7-E<G,O:FYI+W!R:B]K:7)U;F%?;FUC M+V1E<',O8G5I;&0O=&UP7&)I;EQB;V]S=%QL:6)S7'1E<W1<8G5I;&1<8F]O M<W1?<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M.%\P7')E;&5A<V5<<G5N=&EM M92UL:6YK+7-T871I8UQT:')E861I;F<M;75L=&E<8F]O<W1?<')G7V5X96-? M;6]N:71O<BUM="US+F1L;"(N(%1H92!S>7-T96T@8V%N;F]T(&9I;F0@=&AE M(&9I;&4@<W!E8VEF:65D+@T-"@T*(" @($-!3$P@(D,Z7&1E=EQI9&5<=G,X M7$-O;6UO;C=<5&]O;'-<+BY<+BY<5D-<8FEN7'9C=F%R<S,R+D)!5"(@/FYU M; T*(" @(")#.EQD979<:61E7'9S.%Q#;VUM;VXW7%1O;VQS7"XN7"XN7%9# M7&)I;EQL:6YK(B O;F]L;V=O("])3D-214U%3E1!3#I.3R O1$Q,("]S=6)S M>7-T96TZ8V]N<V]L92 @+V]U=#HB0SHO=7-E<G,O:FYI+W!R:B]K:7)U;F%? M;FUC+V1E<',O8G5I;&0O=&UP7&)I;EQB;V]S=%QL:6)S7'1E<W1<8G5I;&1< M8F]O<W1?<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M.%\P7')E;&5A<V5<<G5N M=&EM92UL:6YK+7-T871I8UQT:')E861I;F<M;75L=&E<8F]O<W1?<')G7V5X M96-?;6]N:71O<BUM="US+F1L;"(@+TE-4$Q)0CHB0SHO=7-E<G,O:FYI+W!R M:B]K:7)U;F%?;FUC+V1E<',O8G5I;&0O=&UP7&)I;EQB;V]S=%QL:6)S7'1E M<W1<8G5I;&1<8F]O<W1?<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M.%\P7')E M;&5A<V5<<G5N=&EM92UL:6YK+7-T871I8UQT:')E861I;F<M;75L=&E<8F]O M<W1?<')G7V5X96-?;6]N:71O<BUM="US+FQI8B(@(" @0")#.B]U<V5R<R]J M;FDO<')J+VMI<G5N85]N;6,O9&5P<R]B=6EL9"]T;7!<8FEN7&)O;W-T7&QI M8G-<=&5S=%QB=6EL9%QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+F1L;%QV8RTX M7S!<<F5L96%S95QR=6YT:6UE+6QI;FLM<W1A=&EC7'1H<F5A9&EN9RUM=6QT M:5QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+7,N0TU$(@T*(" @(&UT("UM M86YI9F5S="!#.B]U<V5R<R]J;FDO<')J+VMI<G5N85]N;6,O9&5P<R]B=6EL M9"]T;7!<8FEN7&)O;W-T7&QI8G-<=&5S=%QB=6EL9%QB;V]S=%]P<F=?97AE M8U]M;VYI=&]R+F1L;%QV8RTX7S!<<F5L96%S95QR=6YT:6UE+6QI;FLM<W1A M=&EC7'1H<F5A9&EN9RUM=6QT:5QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT M+7,N9&QL+FUA;FEF97-T("UO=71P=71R97-O=7)C93I#.B]U<V5R<R]J;FDO M<')J+VMI<G5N85]N;6,O9&5P<R]B=6EL9"]T;7!<8FEN7&)O;W-T7&QI8G-< M=&5S=%QB=6EL9%QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+F1L;%QV8RTX7S!< M<F5L96%S95QR=6YT:6UE+6QI;FLM<W1A=&EC7'1H<F5A9&EN9RUM=6QT:5QB M;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+7,N9&QL.R,R#0H-"BXN+F9A:6QE M9"!V8RU,:6YK($,Z+W5S97)S+VIN:2]P<FHO:VER=6YA7VYM8R]D97!S+V)U M:6QD+W1M<%QB:6Y<8F]O<W1<;&EB<UQT97-T7&)U:6QD7&)O;W-T7W!R9U]E M>&5C7VUO;FET;W(N9&QL7'9C+3A?,%QR96QE87-E7')U;G1I;64M;&EN:RUS M=&%T:6-<=&AR96%D:6YG+6UU;'1I7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(M M;70M<RYD;&P@0SHO=7-E<G,O:FYI+W!R:B]K:7)U;F%?;FUC+V1E<',O8G5I M;&0O=&UP7&)I;EQB;V]S=%QL:6)S7'1E<W1<8G5I;&1<8F]O<W1?<')G7V5X M96-?;6]N:71O<BYD;&Q<=F,M.%\P7')E;&5A<V5<<G5N=&EM92UL:6YK+7-T M871I8UQT:')E861I;F<M;75L=&E<8F]O<W1?<')G7V5X96-?;6]N:71O<BUM M="US+FQI8BXN+@T*+BXN<VMI<'!E9" \0&)O;W-T(6)O;W-T/F)O;W-T7W!R M9U]E>&5C7VUO;FET;W(M;70M<RYD;&P@9F]R(&QA8VL@;V8@/$!B;V]S="%L M:6)S(71E<W0A8G5I;&1<8F]O<W1?<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M M.%\P7')E;&5A<V5<<G5N=&EM92UL:6YK+7-T871I8UQT:')E861I;F<M;75L M=&D^8F]O<W1?<')G7V5X96-?;6]N:71O<BUM="US+F1L;"XN+@T*+BXN<VMI M<'!E9" \0&)O;W-T(6)O;W-T/F)O;W-T7W!R9U]E>&5C7VUO;FET;W(M;70M M<RYL:6(@9F]R(&QA8VL@;V8@/$!B;V]S="%L:6)S(71E<W0A8G5I;&1<8F]O M<W1?<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M.%\P7')E;&5A<V5<<G5N=&EM M92UL:6YK+7-T871I8UQT:')E861I;F<M;75L=&D^8F]O<W1?<')G7V5X96-? M;6]N:71O<BUM="US+FQI8BXN+@T*=F,M3&EN:R!#.B]U<V5R<R]J;FDO<')J M+VMI<G5N85]N;6,O9&5P<R]B=6EL9"]T;7!<8FEN7&)O;W-T7&QI8G-<=&5S M=%QB=6EL9%QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+F1L;%QV8RTX7S!<<F5L M96%S95QT:')E861I;F<M;75L=&E<8F]O<W1?<')G7V5X96-?;6]N:71O<BUM M="YD;&P@0SHO=7-E<G,O:FYI+W!R:B]K:7)U;F%?;FUC+V1E<',O8G5I;&0O M=&UP7&)I;EQB;V]S=%QL:6)S7'1E<W1<8G5I;&1<8F]O<W1?<')G7V5X96-? M;6]N:71O<BYD;&Q<=F,M.%\P7')E;&5A<V5<=&AR96%D:6YG+6UU;'1I7&)O M;W-T7W!R9U]E>&5C7VUO;FET;W(M;70N;&EB#0IC<'!?;6%I;BYO8FH@.B!E M<G)O<B!,3DLR,#$Y.B!U;G)E<V]L=F5D(&5X=&5R;F%L('-Y;6)O;" B:6YT M(%]?8V1E8VP@8W!P7VUA:6XH:6YT+&-H87(@*B J(&-O;G-T*2(@*#]C<'!? M;6%I;D! 64%(2%%!4$%$0%HI(')E9F5R96YC960@:6X@9G5N8W1I;VX@7VUA M:6X-"D,Z+W5S97)S+VIN:2]P<FHO:VER=6YA7VYM8R]D97!S+V)U:6QD+W1M M<%QB:6Y<8F]O<W1<;&EB<UQT97-T7&)U:6QD7&)O;W-T7W!R9U]E>&5C7VUO M;FET;W(N9&QL7'9C+3A?,%QR96QE87-E7'1H<F5A9&EN9RUM=6QT:5QB;V]S M=%]P<F=?97AE8U]M;VYI=&]R+6UT+F1L;" Z(&9A=&%L(&5R<F]R($Q.2S$Q M,C Z(#$@=6YR97-O;'9E9"!E>'1E<FYA;',-"DUI8W)O<V]F=" H4BD@36%N M:69E<W0@5&]O;"!V97)S:6]N(#4N,BXS-SDP+C(P,30-#0I#;W!Y<FEG:'0@ M*&,I($UI8W)O<V]F="!#;W)P;W)A=&EO;B R,# U+B -#0I!;&P@<FEG:'1S M(')E<V5R=F5D+@T-"@T*;70N97AE(#H@9V5N97)A;"!E<G)O<B!C,3 Q,#!B M,3H@1F%I;&5D('1O(&QO860@9FEL92 B0SHO=7-E<G,O:FYI+W!R:B]K:7)U M;F%?;FUC+V1E<',O8G5I;&0O=&UP7&)I;EQB;V]S=%QL:6)S7'1E<W1<8G5I M;&1<8F]O<W1?<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M.%\P7')E;&5A<V5< M=&AR96%D:6YG+6UU;'1I7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(M;70N9&QL M(BX@5&AE('-Y<W1E;2!C86YN;W0@9FEN9"!T:&4@9FEL92!S<&5C:69I960N M#0T*#0H@(" @0T%,3" B0SI<9&5V7&ED95QV<SA<0V]M;6]N-UQ4;V]L<UPN M+EPN+EQ60UQB:6Y<=F-V87)S,S(N0D%4(B ^;G5L#0H@(" @(D,Z7&1E=EQI M9&5<=G,X7$-O;6UO;C=<5&]O;'-<+BY<+BY<5D-<8FEN7&QI;FLB("]N;VQO M9V\@+TE.0U)%345.5$%,.DY/("]$3$P@+W-U8G-Y<W1E;3IC;VYS;VQE(" O M;W5T.B)#.B]U<V5R<R]J;FDO<')J+VMI<G5N85]N;6,O9&5P<R]B=6EL9"]T M;7!<8FEN7&)O;W-T7&QI8G-<=&5S=%QB=6EL9%QB;V]S=%]P<F=?97AE8U]M M;VYI=&]R+F1L;%QV8RTX7S!<<F5L96%S95QT:')E861I;F<M;75L=&E<8F]O M<W1?<')G7V5X96-?;6]N:71O<BUM="YD;&PB("])35!,24(Z(D,Z+W5S97)S M+VIN:2]P<FHO:VER=6YA7VYM8R]D97!S+V)U:6QD+W1M<%QB:6Y<8F]O<W1< M;&EB<UQT97-T7&)U:6QD7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(N9&QL7'9C M+3A?,%QR96QE87-E7'1H<F5A9&EN9RUM=6QT:5QB;V]S=%]P<F=?97AE8U]M M;VYI=&]R+6UT+FQI8B(@(" @0")#.B]U<V5R<R]J;FDO<')J+VMI<G5N85]N M;6,O9&5P<R]B=6EL9"]T;7!<8FEN7&)O;W-T7&QI8G-<=&5S=%QB=6EL9%QB M;V]S=%]P<F=?97AE8U]M;VYI=&]R+F1L;%QV8RTX7S!<<F5L96%S95QT:')E M861I;F<M;75L=&E<8F]O<W1?<')G7V5X96-?;6]N:71O<BUM="Y#340B#0H@ M(" @;70@+6UA;FEF97-T($,Z+W5S97)S+VIN:2]P<FHO:VER=6YA7VYM8R]D M97!S+V)U:6QD+W1M<%QB:6Y<8F]O<W1<;&EB<UQT97-T7&)U:6QD7&)O;W-T M7W!R9U]E>&5C7VUO;FET;W(N9&QL7'9C+3A?,%QR96QE87-E7'1H<F5A9&EN M9RUM=6QT:5QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+F1L;"YM86YI9F5S M=" M;W5T<'5T<F5S;W5R8V4Z0SHO=7-E<G,O:FYI+W!R:B]K:7)U;F%?;FUC M+V1E<',O8G5I;&0O=&UP7&)I;EQB;V]S=%QL:6)S7'1E<W1<8G5I;&1<8F]O M<W1?<')G7V5X96-?;6]N:71O<BYD;&Q<=F,M.%\P7')E;&5A<V5<=&AR96%D M:6YG+6UU;'1I7&)O;W-T7W!R9U]E>&5C7VUO;FET;W(M;70N9&QL.R,R#0H- M"BXN+F9A:6QE9"!V8RU,:6YK($,Z+W5S97)S+VIN:2]P<FHO:VER=6YA7VYM M8R]D97!S+V)U:6QD+W1M<%QB:6Y<8F]O<W1<;&EB<UQT97-T7&)U:6QD7&)O M;W-T7W!R9U]E>&5C7VUO;FET;W(N9&QL7'9C+3A?,%QR96QE87-E7'1H<F5A M9&EN9RUM=6QT:5QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+F1L;"!#.B]U M<V5R<R]J;FDO<')J+VMI<G5N85]N;6,O9&5P<R]B=6EL9"]T;7!<8FEN7&)O M;W-T7&QI8G-<=&5S=%QB=6EL9%QB;V]S=%]P<F=?97AE8U]M;VYI=&]R+F1L M;%QV8RTX7S!<<F5L96%S95QT:')E861I;F<M;75L=&E<8F]O<W1?<')G7V5X M96-?;6]N:71O<BUM="YL:6(N+BX-"BXN+G-K:7!P960@/$!B;V]S="%B;V]S M=#YB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+F1L;"!F;W(@;&%C:R!O9B \ M0&)O;W-T(6QI8G,A=&5S="%B=6EL9%QB;V]S=%]P<F=?97AE8U]M;VYI=&]R M+F1L;%QV8RTX7S!<<F5L96%S95QT:')E861I;F<M;75L=&D^8F]O<W1?<')G M7V5X96-?;6]N:71O<BUM="YD;&PN+BX-"BXN+G-K:7!P960@/$!B;V]S="%B M;V]S=#YB;V]S=%]P<F=?97AE8U]M;VYI=&]R+6UT+FQI8B!F;W(@;&%C:R!O M9B \0&)O;W-T(6QI8G,A=&5S="%B=6EL9%QB;V]S=%]P<F=?97AE8U]M;VYI M=&]R+F1L;%QV8RTX7S!<<F5L96%S95QT:')E861I;F<M;75L=&D^8F]O<W1? M<')G7V5X96-?;6]N:71O<BUM="YL:6(N+BX-"G9C+4,K*R!#.B]U<V5R<R]J M;FDO<')J+VMI<G5N85]N;6,O9&5P<R]B=6EL9"]T;7!<8FEN7&)O;W-T7&QI M8G-<=&5S=%QB=6EL9%QB;V]S=%]U;FET7W1E<W1?9G)A;65W;W)K+F1L;%QV M8RTX7S!<9&5B=6=<=&AR96%D:6YG+6UU;'1I7&5X8V5P=&EO;E]S869E='DN M;V)J#0IE>&-E<'1I;VY?<V%F971Y+F-P< T*0SI<=7-E<G-<:FYI7'!R:EQK M:7)U;F%?;FUC7&1E<'-<<W)C7&)O;W-T7&)O;W-T+W1E<W0O:6UP;"]E>&-E M<'1I;VY?<V%F971Y+FEP<"@U-#8I(#H@97)R;W(@0S(P-3DZ('-Y;G1A>"!E M<G)O<B Z("=?7V1E8VQS<&5C*&1L;&5X<&]R="DG#0I#.EQU<V5R<UQJ;FE< M<')J7&MI<G5N85]N;6-<9&5P<UQS<F-<8F]O<W1<8F]O<W0O=&5S="]I;7!L M+V5X8V5P=&EO;E]S869E='DN:7!P*#4T-RD@.B!E<G)O<B!#,C$T,SH@<WEN M=&%X(&5R<F]R(#H@;6ES<VEN9R G.R<@8F5F;W)E("=[)PT*0SI<=7-E<G-< M:FYI7'!R:EQK:7)U;F%?;FUC7&1E<'-<<W)C7&)O;W-T7&)O;W-T+W1E<W0O M:6UP;"]E>&-E<'1I;VY?<V%F971Y+FEP<"@U-#<I(#H@97)R;W(@0S(T-#<Z M("=[)R Z(&UI<W-I;F<@9G5N8W1I;VX@:&5A9&5R("AO;&0M<W1Y;&4@9F]R M;6%L(&QI<W0_*0T*0SI<=7-E<G-<:FYI7'!R:EQK:7)U;F%?;FUC7&1E<'-< M<W)C7&)O;W-T7&)O;W-T+W1E<W0O:6UP;"]E>&-E<'1I;VY?<V%F971Y+FEP M<"@U-C$I(#H@97)R;W(@0S(P-3DZ('-Y;G1A>"!E<G)O<B Z("=?7V1E8VQS M<&5C*&1L;&5X<&]R="DG#0I#.EQU<V5R<UQJ;FE<<')J7&MI<G5N85]N;6-< M9&5P<UQS<F-<8F]O<W1<8F]O<W0O=&5S="]I;7!L+V5X8V5P=&EO;E]S869E M='DN:7!P*#4V,BD@.B!E<G)O<B!#,C$T,SH@<WEN=&%X(&5R<F]R(#H@;6ES M<VEN9R G.R<@8F5F;W)E("=[)PT*0SI<=7-E<G-<:FYI7'!R:EQK:7)U;F%? M;FUC7&1E<'-<<W)C7&)O;W-T7&)O;W-T+W1E<W0O:6UP;"]E>&-E<'1I;VY? M<V%F971Y+FEP<"@U-C(I(#H@97)R;W(@0S(T-#<Z("=[)R Z(&UI<W-I;F<@ M9G5N8W1I;VX@:&5A9&5R("AO;&0M<W1Y;&4@9F]R;6%L(&QI<W0_*0T*0SI< M=7-E<G-<:FYI7'!R:EQK:7)U;F%?;FUC7&1E<'-<<W)C7&)O;W-T7&)O;W-T M+W1E<W0O:6UP;"]E>&-E<'1I;VY?<V%F971Y+FEP<"@U-S0I(#H@97)R;W(@ M0S(P-3DZ('-Y;G1A>"!E<G)O<B Z("=?7V1E8VQS<&5C*&1L;&5X<&]R="DG M#0I#.EQU<V5R<UQJ;FE<<')J7&MI<G5N85]N;6-<9&5P<UQS<F-<8F]O<W1< M8F]O<W0O=&5S="]I;7!L+V5X8V5P=&EO;E]S869E='DN:7!P*#4W-2D@.B!E M<G)O<B!#,C$T,SH@<WEN=&%X(&5R<F]R(#H@;6ES<VEN9R G.R<@8F5F;W)E M("=[)PT*0SI<=7-E<G-<:FYI7'!R:EQK:7)U;F%?;FUC7&1E<'-<<W)C7&)O M;W-T7&)O;W-T+W1E<W0O:6UP;"]E>&-E<'1I;VY?<V%F971Y+FEP<"@U-S4I M(#H@97)R;W(@0S(T-#<Z("=[)R Z(&UI<W-I;F<@9G5N8W1I;VX@:&5A9&5R M("AO;&0M<W1Y;&4@9F]R;6%L(&QI<W0_*0T*0SI<=7-E<G-<:FYI7'!R:EQK M:7)U;F%?;FUC7&1E<'-<<W)C7&)O;W-T7&)O;W-T+W1E<W0O:6UP;"]E>&-E M<'1I;VY?<V%F971Y+FEP<"@U.#DI(#H@97)R;W(@0S(P-3DZ('-Y;G1A>"!E M<G)O<B Z("=?7V1E8VQS<&5C*&1L;&5X<&]R="DG#0I#.EQU<V5R<UQJ;FE< M<')J7&MI<G5N85]N;6-<9&5P<UQS<F-<8F]O<W1<8F]O<W0O=&5S="]I;7!L M+V5X8V5P=&EO;E]S869E='DN:7!P*#4Y,"D@.B!E<G)O<B!#,C$T,SH@<WEN M=&%X(&5R<F]R(#H@;6ES<VEN9R G.R<@8F5F;W)E("=[)PT*0SI<=7-E<G-< M:FYI7'!R:EQK:7)U;F%?;FUC7&1E<'-<<W)C7&)O;W-T7&)O;W-T+W1E<W0O M:6UP;"]E>&-E<'1I;VY?<V%F971Y+FEP<"@U.3 I(#H@97)R;W(@0S(T-#<Z M("=[)R Z(&UI<W-I;F<@9G5N8W1I;VX@:&5A9&5R("AO;&0M<W1Y;&4@9F]R M;6%L(&QI<W0_*0T*0SI<=7-E<G-<:FYI7'!R:EQK:7)U;F%?;FUC7&1E<'-< M<W)C7&)O;W-T7&)O;W-T+W1E<W0O:6UP;"]E>&-E<'1I;VY?<V%F971Y+FEP M<"@V,#,I(#H@97)R;W(@0S(S-S4Z("=O<&5R871O<B!D96QE=&4G(#H@<F5D M969I;FET:6]N.R!D:69F97)E;G0@;&EN:V%G90T*(" @(" @("!P<F5D969I M;F5D($,K*R!T>7!E<R H8V]M<&EL97(@:6YT97)N86PI*#(T*2 Z('-E92!D M96-L87)A=&EO;B!O9B G;W!E<F%T;W(@9&5L971E)PT*0SI<=7-E<G-<:FYI M7'!R:EQK:7)U;F%?;FUC7&1E<'-<<W)C7&)O;W-T7&)O;W-T+W1E<W0O:6UP M;"]E>&-E<'1I;VY?<V%F971Y+FEP<"@V,3,I(#H@97)R;W(@0S(S-S4Z("=O M<&5R871O<B!D96QE=&4G(#H@<F5D969I;FET:6]N.R!D:69F97)E;G0@;&EN M:V%G90T*(" @(" @("!#.EQD979<:61E7'9S.%Q60UQ)3D-,541%7&YE=R@Y M,RD@.B!S964@9&5C;&%R871I;VX@;V8@)V]P97)A=&]R(&1E;&5T92<-"D,Z M7'5S97)S7&IN:5QP<FI<:VER=6YA7VYM8UQD97!S7'-R8UQB;V]S=%QB;V]S M="]T97-T+VEM<&PO97AC97!T:6]N7W-A9F5T>2YI<' H-C(S*2 Z(&5R<F]R M($,R,S<U.B G;W!E<F%T;W(@9&5L971E6UTG(#H@<F5D969I;FET:6]N.R!D M:69F97)E;G0@;&EN:V%G90T*(" @(" @("!#.EQD979<:61E7'9S.%Q60UQ) M3D-,541%7&-R=&1B9RYH*#$Q,S4I(#H@<V5E(&1E8VQA<F%T:6]N(&]F("=O M<&5R871O<B!D96QE=&5;72<-"D,Z7'5S97)S7&IN:5QP<FI<:VER=6YA7VYM M8UQD97!S7'-R8UQB;V]S=%QB;V]S="]T97-T+VEM<&PO97AC97!T:6]N7W-A M9F5T>2YI<' H-C,S*2 Z(&5R<F]R($,R,S<U.B G;W!E<F%T;W(@9&5L971E M6UTG(#H@<F5D969I;FET:6]N.R!D:69F97)E;G0@;&EN:V%G90T*(" @(" @ M("!#.EQD979<:61E7'9S.%Q60UQ)3D-,541%7&YE=R@Y-BD@.B!S964@9&5C M;&%R871I;VX@;V8@)V]P97)A=&]R(&1E;&5T95M=)PT*#0H@(" @0T%,3" B M0SI<9&5V7&ED95QV<SA<0V]M;6]N-UQ4;V]L<UPN+EPN+EQ60UQB:6Y<=F-V M87)S,S(N0D%4(B ^;G5L#0H@(" @(D,Z7&1E=EQI9&5<=G,X7$-O;6UO;C=< M5&]O;'-<+BY<+BY<5D-<8FEN7&-L(B O6FTX,# @+6YO;&]G;R O14AS8R M M8R @+41"3T]35%]!3$Q?1%E.7TQ)3DL],2 O6C<@+T]D("]/8C @+T5(<V,@ M+T=2("]-1&0@+UIC.F9O<E-C;W!E("]:8SIW8VAA<E]T("U)(D,Z+W5S97)S M+VIN:2]P<FHO:VER=6YA7VYM8R]D97!S+V)U:6QD+W1M<%QB:6Y<8F]O<W1< M;&EB<UQT97-T7&)U:6QD(B @+4DB0SI<=7-E<G-<:FYI7'!R:EQK:7)U;F%? M;FUC7&1E<'-<<W)C7&)O;W-T(B @+49O(D,Z+W5S97)S+VIN:2]P<FHO:VER M=6YA7VYM8R]D97!S+V)U:6QD+W1M<%QB:6Y<8F]O<W1<;&EB<UQT97-T7&)U M:6QD7&)O;W-T7W5N:71?=&5S=%]F<F%M97=O<FLN9&QL7'9C+3A?,%QD96)U M9UQT:')E861I;F<M;75L=&E<97AC97!T:6]N7W-A9F5T>2YO8FHB("U4<")# M.EQU<V5R<UQJ;FE<<')J7&MI<G5N85]N;6-<9&5P<UQS<F-<8F]O<W1<;&EB M<UQT97-T7&)U:6QD7"XN+W-R8R]E>&-E<'1I;VY?<V%F971Y+F-P<"(-"@T* M+BXN9F%I;&5D('9C+4,K*R!#.B]U<V5R<R]J;FDO<')J+VMI<G5N85]N;6,O M9&5P<R]B=6EL9"]T;7!<8FEN7&)O;W-T7&QI8G-<=&5S=%QB=6EL9%QB;V]S M=%]U;FET7W1E<W1?9G)A;65W;W)K+F1L;%QV8RTX7S!<9&5B=6=<=&AR96%D M:6YG+6UU;'1I7&5X8V5P=&EO;E]S869E='DN;V)J+BXN#0HN+BYS:VEP<&5D M(#Q 8F]O<W0A;&EB<R%T97-T(6)U:6QD7&)O;W-T7W5N:71?=&5S=%]F<F%M M97=O<FLN9&QL7'9C+3A?,%QD96)U9UQT:')E861I;F<M;75L=&D^8F]O<W1? M=6YI=%]T97-T7V9R86UE=V]R:RUM="UG9"Y#340@9F]R(&QA8VL@;V8@/$!B M;V]S="%L:6)S(71E<W0A8G5I;&1<8F]O<W1?=6YI=%]T97-T7V9R86UE=V]R M:RYD;&Q<=F,M.%\P7&1E8G5G7'1H<F5A9&EN9RUM=6QT:3YE>&-E<'1I;VY? M<V%F971Y+F]B:BXN+@T*+BXN<VMI<'!E9" \0&)O;W-T(6QI8G,A=&5S="%B M=6EL9%QB;V]S=%]U;FET7W1E<W1?9G)A;65W;W)K+F1L;%QV8RTX7S!<9&5B M=6=<=&AR96%D:6YG+6UU;'1I/F)O;W-T7W5N:71?=&5S=%]F<F%M97=O<FLM M;70M9V0N9&QL(&9O<B!L86-K(&]F(#Q 8F]O<W0A;&EB<R%T97-T(6)U:6QD M7&)O;W-T7W5N:71?=&5S=%]F<F%M97=O<FLN9&QL7'9C+3A?,%QD96)U9UQT M:')E861I;F<M;75L=&D^8F]O<W1?=6YI=%]T97-T7V9R86UE=V]R:RUM="UG M9"Y#340N+BX-"BXN+G-K:7!P960@/$!B;V]S="%L:6)S(71E<W0A8G5I;&1< M8F]O<W1?=6YI=%]T97-T7V9R86UE=V]R:RYD;&Q<=F,M.%\P7&1E8G5G7'1H M<F5A9&EN9RUM=6QT:3YB;V]S=%]U;FET7W1E<W1?9G)A;65W;W)K+6UT+6=D M+FQI8B!F;W(@;&%C:R!O9B \0&)O;W-T(6QI8G,A=&5S="%B=6EL9%QB;V]S M=%]U;FET7W1E<W1?9G)A;65W;W)K+F1L;%QV8RTX7S!<9&5B=6=<=&AR96%D M:6YG+6UU;'1I/F)O;W-T7W5N:71?=&5S=%]F<F%M97=O<FLM;70M9V0N0TU$ M+BXN#0HN+BYS:VEP<&5D(#Q 8F]O<W0A8F]O<W0^8F]O<W1?=6YI=%]T97-T M7V9R86UE=V]R:RUM="UG9"YD;&P@9F]R(&QA8VL@;V8@/$!B;V]S="%L:6)S M(71E<W0A8G5I;&1<8F]O<W1?=6YI=%]T97-T7V9R86UE=V]R:RYD;&Q<=F,M M.%\P7&1E8G5G7'1H<F5A9&EN9RUM=6QT:3YB;V]S=%]U;FET7W1E<W1?9G)A M;65W;W)K+6UT+6=D+F1L;"XN+@T*+BXN<VMI<'!E9" \0&)O;W-T(6)O;W-T M/F)O;W-T7W5N:71?=&5S=%]F<F%M97=O<FLM;70M9V0N;&EB(&9O<B!L86-K M(&]F(#Q 8F]O<W0A;&EB<R%T97-T(6)U:6QD7&)O;W-T7W5N:71?=&5S=%]F M<F%M97=O<FLN9&QL7'9C+3A?,%QD96)U9UQT:')E861I;F<M;75L=&D^8F]O M<W1?=6YI=%]T97-T7V9R86UE=V]R:RUM="UG9"YL:6(N+BX-"G9C+4,K*R!# M.B]U<V5R<R]J;FDO<')J+VMI<G5N85]N;6,O9&5P<R]B=6EL9"]T;7!<8FEN M7&)O;W-T7&QI8G-<=&5S=%QB=6EL9%QB;V]S=%]U;FET7W1E<W1?9G)A;65W M;W)K+F1L;%QV8RTX7S!<<F5L96%S95QT:')E861I;F<M;75L=&E<97AC97!T M:6]N7W-A9F5T>2YO8FH-"F-L(#H@0V]M;6%N9"!L:6YE('=A<FYI;F<@1#DP M,S4@.B!O<'1I;VX@)T]G)R!H87,@8F5E;B!D97!R96-A=&5D(&%N9"!W:6QL M(&)E(')E;6]V960@:6X@82!F=71U<F4@<F5L96%S90T*97AC97!T:6]N7W-A M9F5T>2YC<' -"D,Z7'5S97)S7&IN:5QP<FI<:VER=6YA7VYM8UQD97!S7'-R M8UQB;V]S=%QB;V]S="]T97-T+VEM<&PO97AC97!T:6]N7W-A9F5T>2YI<' H M-30V*2 Z(&5R<F]R($,R,#4Y.B!S>6YT87@@97)R;W(@.B G7U]D96-L<W!E M8RAD;&QE>'!O<G0I)PT*0SI<=7-E<G-<:FYI7'!R:EQK:7)U;F%?;FUC7&1E M<'-<<W)C7&)O;W-T7&)O;W-T+W1E<W0O:6UP;"]E>&-E<'1I;VY?<V%F971Y M+FEP<"@U-#<I(#H@97)R;W(@0S(Q-#,Z('-Y;G1A>"!E<G)O<B Z(&UI<W-I M;F<@)SLG(&)E9F]R92 G>R<-"D,Z7'5S97)S7&IN:5QP<FI<:VER=6YA7VYM M8UQD97!S7'-R8UQB;V]S=%QB;V]S="]T97-T+VEM<&PO97AC97!T:6]N7W-A M9F5T>2YI<' H-30W*2 Z(&5R<F]R($,R-#0W.B G>R<@.B!M:7-S:6YG(&9U M;F-T:6]N(&AE861E<B H;VQD+7-T>6QE(&9O<FUA;"!L:7-T/RD-"D,Z7'5S M97)S7&IN:5QP<FI<:VER=6YA7VYM8UQD97!S7'-R8UQB;V]S=%QB;V]S="]T M97-T+VEM<&PO97AC97!T:6]N7W-A9F5T>2YI<' H-38Q*2 Z(&5R<F]R($,R M,#4Y.B!S>6YT87@@97)R;W(@.B G7U]D96-L<W!E8RAD;&QE>'!O<G0I)PT* M0SI<=7-E<G-<:FYI7'!R:EQK:7)U;F%?;FUC7&1E<'-<<W)C7&)O;W-T7&)O M;W-T+W1E<W0O:6UP;"]E>&-E<'1I;VY?<V%F971Y+FEP<"@U-C(I(#H@97)R M;W(@0S(Q-#,Z('-Y;G1A>"!E<G)O<B Z(&UI<W-I;F<@)SLG(&)E9F]R92 G M>R<-"D,Z7'5S97)S7&IN:5QP<FI<:VER=6YA7VYM8UQD97!S7'-R8UQB;V]S M=%QB;V]S="]T97-T+VEM<&PO97AC97!T:6]N7W-A9F5T>2YI<' H-38R*2 Z M(&5R<F]R($,R-#0W.B G>R<@.B!M:7-S:6YG(&9U;F-T:6]N(&AE861E<B H M;VQD+7-T>6QE(&9O<FUA;"!L:7-T/RD-"D,Z7'5S97)S7&IN:5QP<FI<:VER M=6YA7VYM8UQD97!S7'-R8UQB;V]S=%QB;V]S="]T97-T+VEM<&PO97AC97!T M:6]N7W-A9F5T>2YI<' H-3<T*2 Z(&5R<F]R($,R,#4Y.B!S>6YT87@@97)R M;W(@.B G7U]D96-L<W!E8RAD;&QE>'!O<G0I)PT*0SI<=7-E<G-<:FYI7'!R M:EQK:7)U;F%?;FUC7&1E<'-<<W)C7&)O;W-T7&)O;W-T+W1E<W0O:6UP;"]E M>&-E<'1I;VY?<V%F971Y+FEP<"@U-S4I(#H@97)R;W(@0S(Q-#,Z('-Y;G1A M>"!E<G)O<B Z(&UI<W-I;F<@)SLG(&)E9F]R92 G>R<-"D,Z7'5S97)S7&IN M:5QP<FI<:VER=6YA7VYM8UQD97!S7'-R8UQB;V]S=%QB;V]S="]T97-T+VEM M<&PO97AC97!T:6]N7W-A9F5T>2YI<' H-3<U*2 Z(&5R<F]R($,R-#0W.B G M>R<@.B!M:7-S:6YG(&9U;F-T:6]N(&AE861E<B H;VQD+7-T>6QE(&9O<FUA M;"!L:7-T/RD-"D,Z7'5S97)S7&IN:5QP<FI<:VER=6YA7VYM8UQD97!S7'-R M8UQB;V]S=%QB;V]S="]T97-T+VEM<&PO97AC97!T:6]N7W-A9F5T>2YI<' H M-3@Y*2 Z(&5R<F]R($,R,#4Y.B!S>6YT87@@97)R;W(@.B G7U]D96-L<W!E M8RAD;&QE>'!O<G0I)PT*0SI<=7-E<G-<:FYI7'!R:EQK:7)U;F%?;FUC7&1E M<'-<<W)C7&)O;W-T7&)O;W-T+W1E<W0O:6UP;"]E>&-E<'1I;VY?<V%F971Y M+FEP<"@U.3 I(#H@97)R;W(@0S(Q-#,Z('-Y;G1A>"!E<G)O<B Z(&UI<W-I M;F<@)SLG(&)E9F]R92 G>R<-"D,Z7'5S97)S7&IN:5QP<FI<:VER=6YA7VYM M8UQD97!S7'-R8UQB;V]S=%QB;V]S="]T97-T+VEM<&PO97AC97!T:6]N7W-A M9F5T>2YI<' H-3DP*2 Z(&5R<F]R($,R-#0W.B G>R<@.B!M:7-S:6YG(&9U M;F-T:6]N(&AE861E<B H;VQD+7-T>6QE(&9O<FUA;"!L:7-T/RD-"D,Z7'5S M97)S7&IN:5QP<FI<:VER=6YA7VYM8UQD97!S7'-R8UQB;V]S=%QB;V]S="]T M97-T+VEM<&PO97AC97!T:6]N7W-A9F5T>2YI<' H-C S*2 Z(&5R<F]R($,R M,S<U.B G;W!E<F%T;W(@9&5L971E)R Z(')E9&5F:6YI=&EO;CL@9&EF9F5R M96YT(&QI;FMA9V4-"B @(" @(" @<')E9&5F:6YE9"!#*RL@='EP97,@*&-O M;7!I;&5R(&EN=&5R;F%L*2@R-"D@.B!S964@9&5C;&%R871I;VX@;V8@)V]P M97)A=&]R(&1E;&5T92<-"D,Z7'5S97)S7&IN:5QP<FI<:VER=6YA7VYM8UQD M97!S7'-R8UQB;V]S=%QB;V]S="]T97-T+VEM<&PO97AC97!T:6]N7W-A9F5T M>2YI<' H-C$S*2 Z(&5R<F]R($,R,S<U.B G;W!E<F%T;W(@9&5L971E)R Z M(')E9&5F:6YI=&EO;CL@9&EF9F5R96YT(&QI;FMA9V4-"B @(" @(" @0SI< M9&5V7&ED95QV<SA<5D-<24Y#3%5$15QN97<H.3,I(#H@<V5E(&1E8VQA<F%T M:6]N(&]F("=O<&5R871O<B!D96QE=&4G#0I#.EQU<V5R<UQJ;FE<<')J7&MI M<G5N85]N;6-<9&5P<UQS<F-<8F]O<W1<8F]O<W0O=&5S="]I;7!L+V5X8V5P M=&EO;E]S869E='DN:7!P*#8R,RD@.B!E<G)O<B!#,C,W-3H@)V]P97)A=&]R M(&1E;&5T95M=)R Z(')E9&5F:6YI=&EO;CL@9&EF9F5R96YT(&QI;FMA9V4- M"B @(" @(" @0SI<9&5V7&ED95QV<SA<5D-<24Y#3%5$15QC<G1D8F<N:"@Q M,3 P*2 Z('-E92!D96-L87)A=&EO;B!O9B G;W!E<F%T;W(@9&5L971E6UTG M#0I#.EQU<V5R<UQJ;FE<<')J7&MI<G5N85]N;6-<9&5P<UQS<F-<8F]O<W1< M8F]O<W0O=&5S="]I;7!L+V5X8V5P=&EO;E]S869E='DN:7!P*#8S,RD@.B!E M<G)O<B!#,C,W-3H@)V]P97)A=&]R(&1E;&5T95M=)R Z(')E9&5F:6YI=&EO M;CL@9&EF9F5R96YT(&QI;FMA9V4-"B @(" @(" @0SI<9&5V7&ED95QV<SA< M5D-<24Y#3%5$15QN97<H.38I(#H@<V5E(&1E8VQA<F%T:6]N(&]F("=O<&5R M871O<B!D96QE=&5;72<-"@T*(" @($-!3$P@(D,Z7&1E=EQI9&5<=G,X7$-O M;6UO;C=<5&]O;'-<+BY<+BY<5D-<8FEN7'9C=F%R<S,R+D)!5"(@/FYU; T* M(" @(")#.EQD979<:61E7'9S.%Q#;VUM;VXW7%1O;VQS7"XN7"XN7%9#7&)I M;EQC;"(@+UIM.# P("UN;VQO9V\@+T5(<V,@+6,@("U$3D1%0E5'("U$3D1% M0E5'("U$0D]/4U1?04Q,7T193E],24Y+/3$@+T]G:71Y("]/,B O1W,@+T]B M,B O14AS8R O1U(@+TU$("]:8SIF;W)38V]P92 O6F,Z=V-H87)?=" M22)# M.B]U<V5R<R]J;FDO<')J+VMI<G5N85]N;6,O9&5P<R]B=6EL9"]T;7!<8FEN M7&)O;W-T7&QI8G-<=&5S=%QB=6EL9"(@("U)(D,Z7'5S97)S7&IN:5QP<FI< M:VER=6YA7VYM8UQD97!S7'-R8UQB;V]S="(@("U&;R)#.B]U<V5R<R]J;FDO M<')J+VMI<G5N85]N;6,O9&5P<R]B=6EL9"]T;7!<8FEN7&)O;W-T7&QI8G-< M=&5S=%QB=6EL9%QB;V]S=%]U;FET7W1E<W1?9G)A;65W;W)K+F1L;%QV8RTX M7S!<<F5L96%S95QT:')E861I;F<M;75L=&E<97AC97!T:6]N7W-A9F5T>2YO M8FHB("U4<")#.EQU<V5R<UQJ;FE<<')J7&MI<G5N85]N;6-<9&5P<UQS<F-< M8F]O<W1<;&EB<UQT97-T7&)U:6QD7"XN+W-R8R]E>&-E<'1I;VY?<V%F971Y M+F-P<"(-"@T*+BXN9F%I;&5D('9C+4,K*R!#.B]U<V5R<R]J;FDO<')J+VMI M<G5N85]N;6,O9&5P<R]B=6EL9"]T;7!<8FEN7&)O;W-T7&QI8G-<=&5S=%QB M=6EL9%QB;V]S=%]U;FET7W1E<W1?9G)A;65W;W)K+F1L;%QV8RTX7S!<<F5L M96%S95QT:')E861I;F<M;75L=&E<97AC97!T:6]N7W-A9F5T>2YO8FHN+BX- M"BXN+G-K:7!P960@/$!B;V]S="%L:6)S(71E<W0A8G5I;&1<8F]O<W1?=6YI M=%]T97-T7V9R86UE=V]R:RYD;&Q<=F,M.%\P7')E;&5A<V5<=&AR96%D:6YG M+6UU;'1I/F)O;W-T7W5N:71?=&5S=%]F<F%M97=O<FLM;70N0TU$(&9O<B!L M86-K(&]F(#Q 8F]O<W0A;&EB<R%T97-T(6)U:6QD7&)O;W-T7W5N:71?=&5S M=%]F<F%M97=O<FLN9&QL7'9C+3A?,%QR96QE87-E7'1H<F5A9&EN9RUM=6QT M:3YE>&-E<'1I;VY?<V%F971Y+F]B:BXN+@T*+BXN<VMI<'!E9" \0&)O;W-T M(6QI8G,A=&5S="%B=6EL9%QB;V]S=%]U;FET7W1E<W1?9G)A;65W;W)K+F1L M;%QV8RTX7S!<<F5L96%S95QT:')E861I;F<M;75L=&D^8F]O<W1?=6YI=%]T M97-T7V9R86UE=V]R:RUM="YD;&P@9F]R(&QA8VL@;V8@/$!B;V]S="%L:6)S M(71E<W0A8G5I;&1<8F]O<W1?=6YI=%]T97-T7V9R86UE=V]R:RYD;&Q<=F,M M.%\P7')E;&5A<V5<=&AR96%D:6YG+6UU;'1I/F)O;W-T7W5N:71?=&5S=%]F M<F%M97=O<FLM;70N0TU$+BXN#0HN+BYS:VEP<&5D(#Q 8F]O<W0A;&EB<R%T M97-T(6)U:6QD7&)O;W-T7W5N:71?=&5S=%]F<F%M97=O<FLN9&QL7'9C+3A? M,%QR96QE87-E7'1H<F5A9&EN9RUM=6QT:3YB;V]S=%]U;FET7W1E<W1?9G)A M;65W;W)K+6UT+FQI8B!F;W(@;&%C:R!O9B \0&)O;W-T(6QI8G,A=&5S="%B M=6EL9%QB;V]S=%]U;FET7W1E<W1?9G)A;65W;W)K+F1L;%QV8RTX7S!<<F5L M96%S95QT:')E861I;F<M;75L=&D^8F]O<W1?=6YI=%]T97-T7V9R86UE=V]R M:RUM="Y#340N+BX-"BXN+G-K:7!P960@/$!B;V]S="%B;V]S=#YB;V]S=%]U M;FET7W1E<W1?9G)A;65W;W)K+6UT+F1L;"!F;W(@;&%C:R!O9B \0&)O;W-T M(6QI8G,A=&5S="%B=6EL9%QB;V]S=%]U;FET7W1E<W1?9G)A;65W;W)K+F1L M;%QV8RTX7S!<<F5L96%S95QT:')E861I;F<M;75L=&D^8F]O<W1?=6YI=%]T M97-T7V9R86UE=V]R:RUM="YD;&PN+BX-"BXN+G-K:7!P960@/$!B;V]S="%B M;V]S=#YB;V]S=%]U;FET7W1E<W1?9G)A;65W;W)K+6UT+FQI8B!F;W(@;&%C M:R!O9B \0&)O;W-T(6QI8G,A=&5S="%B=6EL9%QB;V]S=%]U;FET7W1E<W1? M9G)A;65W;W)K+F1L;%QV8RTX7S!<<F5L96%S95QT:')E861I;F<M;75L=&D^ M8F]O<W1?=6YI=%]T97-T7V9R86UE=V]R:RUM="YL:6(N+BX-"BXN+F9A:6QE M9"!U<&1A=&EN9R Q,"!T87)G971S+BXN#0HN+BYS:VEP<&5D(#$X('1A<F=E '=',N+BX-"@`` ` end

1) Building boost_prg_exec_monitor.dll fails
Fixed
2) Unresolved external break_exec_path when trying to use auto unit tests
Fixed
3) BOOST_AUTO_TEST_MAIN no longer names master test suite
"Feature not a bug" ;) Read update note how you should do this
4) BOOST_AUTO_TEST_SUITE names not reported in errors
"Feature not a bug" ;) With confirmation report only master test suite level name gets mentioned
5) No of failures reported are twice as many as actual count
Fixed Gennadiy

Gennadiy Rozental wrote:
1) Building boost_prg_exec_monitor.dll fails
Fixed
2) Unresolved external break_exec_path when trying to use auto unit tests
Fixed
3) BOOST_AUTO_TEST_MAIN no longer names master test suite
"Feature not a bug" ;) Read update note how you should do this
And the update note is where? Sorry, but I couldn't find it. Please don't tell me that I no longer can specify the name of the master test suite.
4) BOOST_AUTO_TEST_SUITE names not reported in errors
"Feature not a bug" ;) With confirmation report only master test suite level name gets mentioned
So, I'd like to make a new feature request - having the name of the closest encompassing test suite being reported instead (as the default). Or, even better, having the entire hierarchy reported.
5) No of failures reported are twice as many as actual count
Fixed
Thanks for all the fixes, Gennadiy! // Johan

3) BOOST_AUTO_TEST_MAIN no longer names master test suite
"Feature not a bug" ;) Read update note how you should do this
And the update note is where? Sorry, but I couldn't find it.
http://lists.boost.org/Archives/boost/2005/12/98087.php
Please don't tell me that I no longer can specify the name of the master test suite.
No. You could. But I found relying on macro is both inconvinient and unhealthy.
4) BOOST_AUTO_TEST_SUITE names not reported in errors
"Feature not a bug" ;) With confirmation report only master test suite level name gets mentioned
So, I'd like to make a new feature request - having the name of the closest encompassing test suite being reported instead (as the default). Or, even better, having the entire hierarchy reported.
Test suite names gets reported in detailed report format. How would you prefer confirmation reporty should look like? Gennadiy

Gennadiy Rozental wrote:
3) BOOST_AUTO_TEST_MAIN no longer names master test suite
"Feature not a bug" ;) Read update note how you should do this
And the update note is where? Sorry, but I couldn't find it.
Aha, on the list ... I was looking in the documentation and the source. Yes, I've already read that but didn't understand that naming through the macro was unsupported.
Please don't tell me that I no longer can specify the name of the master test suite.
No. You could. But I found relying on macro is both inconvinient and unhealthy.
On the contrary, I found it most convenient (even though the macro name is a bit misleading). Compare: --- w/ macro --- #define BOOST_AUTO_TEST_MAIN "foo" #include <boost/test/auto_unit_test.hpp> --- w/o macro --- #include <boost/test/auto_unit_test.hpp> boost::unit_test::test_suite* init_unit_test_suite( int, char*[] ) { boost::unit_test::framework::master_test_suite().p_name.value = "foo"; return 0; } --- As a side note, why does the above work? I'm not returning a pointer to a test suite.
4) BOOST_AUTO_TEST_SUITE names not reported in errors
"Feature not a bug" ;) With confirmation report only master test suite level name gets mentioned
So, I'd like to make a new feature request - having the name of the closest encompassing test suite being reported instead (as the default). Or, even better, having the entire hierarchy reported.
Test suite names gets reported in detailed report format. How would you prefer confirmation reporty should look like?
Using the above example, and adding the following to another file: --- #include <boost/test/auto_unit_test.hpp> BOOST_AUTO_TEST_SUITE(bar); BOOST_AUTO_TEST_CASE(baz) { BOOST_FAIL("Flunk!!"); } BOOST_AUTO_TEST_SUITE_END(); --- This is what I currently get: --- Running 1 test cases... <some path>/bar.cpp(7): fatal error in "baz": Flunk!! *** 1 failure detected in test suite "foo" --- I can see that there would be a problem adding the specific test suite name to the summary line ("*** ..."), as it assumes only one test suite. How about adding the name to the actual error output: <some path>/bar.cpp(7): fatal error in "foo::bar::baz": Flunk!! I also kind of miss the regular CppUnit output; perhaps the "dotting" output during test runs, the error reports, the summary with X tests, Y assertions, Z failures. What would the simplest steps be to provide something similar using Boost.Test? Perhaps some section in the docs for xUnit users - nailing down how to get the same output / summary using Boost.Test. Never mind if it is better or not - that's largely a matter of taste. // Johan

Please don't tell me that I no longer can specify the name of the master test suite.
No. You could. But I found relying on macro is both inconvinient and unhealthy.
On the contrary, I found it most convenient (even though the macro name is a bit misleading). Compare:
--- w/ macro ---
#define BOOST_AUTO_TEST_MAIN "foo" #include <boost/test/auto_unit_test.hpp>
Note: 1 .You are required to put the name in quotes it fales otherwise 2. Marco name is misleading and nonobvios(BTW proper name now is BOOST_TEST_MAIN) 3. It's usually bad idea to give the same entity two different purposes. It backfire one way or another. 4. It's usually preferable to employ nonmacro mechanisms, unless macro provide real advantage.
--- w/o macro ---
#include <boost/test/auto_unit_test.hpp>
#include <boost/test/unit_test.hpp>
boost::unit_test::test_suite* init_unit_test_suite( int, char*[] ) { boost::unit_test::framework::master_test_suite().p_name.value = "foo"; return 0; }
With alternative init API (to became default 1.35 release) it would look like: bool init_unit_test() { framework::master_test_suite().p_name.value = "foo"; return true; } It doesn't look that bad.
---
As a side note, why does the above work? I'm not returning a pointer to a test suite.
Read an update note.
4) BOOST_AUTO_TEST_SUITE names not reported in errors
"Feature not a bug" ;) With confirmation report only master test suite level name gets mentioned
So, I'd like to make a new feature request - having the name of the closest encompassing test suite being reported instead (as the default). Or, even better, having the entire hierarchy reported.
Test suite names gets reported in detailed report format. How would you prefer confirmation reporty should look like?
Using the above example, and adding the following to another file: ---
#include <boost/test/auto_unit_test.hpp>
BOOST_AUTO_TEST_SUITE(bar); BOOST_AUTO_TEST_CASE(baz) { BOOST_FAIL("Flunk!!"); } BOOST_AUTO_TEST_SUITE_END();
---
This is what I currently get:
--- Running 1 test cases... <some path>/bar.cpp(7): fatal error in "baz": Flunk!!
*** 1 failure detected in test suite "foo" ---
I can see that there would be a problem adding the specific test suite name
It could be achived by supplying custop report formatter. Though you will need to make the whole report youself.
to the summary line ("*** ..."), as it assumes only one test suite. How about adding the name to the actual error output:
<some path>/bar.cpp(7): fatal error in "foo::bar::baz": Flunk!!
Currently it's impossible, bur could be aranged. Though I still do not see whi you couldn't change log level.
I also kind of miss the regular CppUnit output; perhaps the "dotting" output during test runs, the error reports, the summary with X tests, Y assertions, Z failures.
You need t ogive more detailes
What would the simplest steps be to provide something similar using Boost.Test? Perhaps some section in the docs for xUnit users - nailing down how to get the same output / summary using Boost.Test.
Most of the output is configurable by submitting custom report/log formatters. Gennadiy

Gennadiy Rozental wrote:
Please don't tell me that I no longer can specify the name of the master test suite.
No. You could. But I found relying on macro is both inconvinient and unhealthy.
On the contrary, I found it most convenient (even though the macro name is a bit misleading). Compare:
--- w/ macro ---
#define BOOST_AUTO_TEST_MAIN "foo" #include <boost/test/auto_unit_test.hpp>
Note:
1 .You are required to put the name in quotes it fales otherwise 2. Marco name is misleading and nonobvios(BTW proper name now is BOOST_TEST_MAIN)
That's what I said (the misleading part).
3. It's usually bad idea to give the same entity two different purposes. It backfire one way or another.
I agree. How about: #include <boost/test/unit_test.hpp> BOOST_TEST_MASTER_SUITE_NAME(foo);
4. It's usually preferable to employ nonmacro mechanisms, unless macro provide real advantage.
I can agree with that (to a certain degree). [snip]
With alternative init API (to became default 1.35 release) it would look like:
bool init_unit_test() { framework::master_test_suite().p_name.value = "foo"; return true; }
Well, to be pedantic: #include <boost/test/unit_test.hpp> using namespace boost::unit_test; bool init_unit_test() { framework::master_test_suite().p_name.value = "foo"; return true; }
It doesn't look that bad.
Agreed.
---
As a side note, why does the above work? I'm not returning a pointer to a test suite.
Read an update note.
Sure. [snip]
What would the simplest steps be to provide something similar using Boost.Test? Perhaps some section in the docs for xUnit users - nailing down how to get the same output / summary using Boost.Test.
Most of the output is configurable by submitting custom report/log formatters.
I realize that, I was just looking for more of a "cookbook" example ... "Introducing Boost.Test for CppUnit users" perhaps. Most my points above are less than essential - they're all minor details. The main thing is that the bugs I've seen have been fixed, and that the documentation will hopefully be up-to-date in the 1.34 release(?). Thanks // Johan

What would the simplest steps be to provide something similar using Boost.Test? Perhaps some section in the docs for xUnit users - nailing down how to get the same output / summary using Boost.Test.
Most of the output is configurable by submitting custom report/log formatters.
I realize that, I was just looking for more of a "cookbook" example ... "Introducing Boost.Test for CppUnit users" perhaps.
It would be difficult for me personally to create such a page since I never used CppUnit extensively. I do agree it could be mighty useful. Feel free to submit one. Gennadiy

Gennadiy Rozental wrote:
What would the simplest steps be to provide something similar using Boost.Test? Perhaps some section in the docs for xUnit users - nailing down how to get the same output / summary using Boost.Test.
Most of the output is configurable by submitting custom report/log formatters.
I realize that, I was just looking for more of a "cookbook" example ... "Introducing Boost.Test for CppUnit users" perhaps.
Yes! that is exactly what I'd be after too.
It would be difficult for me personally to create such a page since I never used CppUnit extensively. I do agree it could be mighty useful. Feel free to submit one.
I can help with the CppUnit side of things, would love to use Boost.Test, but unless there is a cookbook of some kind, a unit test framework is only just that - (you know one, an run with that). I've just taken up a new role, and have the scope to push different technologies, so this discussion is rather pertinent - not only for me, but for potential users here at work. What can I do to help? Cheers, -- 01.02.2006 Manfred Doudar - Research Engineer National ICT Australia (NICTA) Research School of Information Sciences and Engineering (RSISE) The Australian National University - Canberra, ACT 0200 AUSTRALIA

What can I do to help?
The best help would be to create new page "Introduction for CppUnit Users". If you need information on Boost.Test I am always available. Or you could start new thread: My CppUnit practices and I could come up with corresponding Boost.Test alternatives. Then somebody will need to convert it into doc page. I have a lot on my plate at the moment, so any help appreciated. Gennadiy
participants (3)
-
Gennadiy Rozental
-
Johan Nilsson
-
Manfred Doudar