]>
Commit | Line | Data |
---|---|---|
1 | [/============================================================================== | |
2 | Copyright (C) 2001-2010 Joel de Guzman | |
3 | Copyright (C) 2001-2005 Dan Marsden | |
4 | Copyright (C) 2001-2010 Thomas Heller | |
5 | ||
6 | Distributed under the Boost Software License, Version 1.0. (See accompanying | |
7 | file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
8 | ===============================================================================/] | |
9 | ||
10 | [section Release Notes] | |
11 | ||
12 | [/ These are included here and have also been submitted for the release page.] | |
13 | ||
14 | [/* [phrase library..[@/libs/phoenix/ Phoenix]:] ] | |
15 | * ['Version] 3.2.0 | |
16 | * ['New Features:] | |
17 | * Phoenix now has a *lazy list* implementation as an optional extension. | |
18 | * ['New Example:] | |
19 | * A new example *bind_goose* shows the compatibility between *boost bind* and *boost phoenix bind*. | |
20 | * ['Fixed Bugs:] | |
21 | * [@http://svn.boost.org/trac/boost/ticket/10927 #10927] Missing std:: qualifier for fabs in phoenix/test/stdlib/cmath.cpp | |
22 | * [@http://svn.boost.org/trac/boost/ticket/11085 #11085] Missing qualifier for pow call in phoenix/test/function/function_tests.cpp | |
23 | * Fixes for a number of cases failing with *bind*, *lambda* and *let*. | |
24 | ||
25 | [endsect] | |
26 | ||
27 | [section What's New] | |
28 | ||
29 | [section Phoenix - warning on *lambda and let*] | |
30 | ||
31 | * There are a number of bugs in the implementation of *lambda* and *let* constructs in Boost Phoenix 3.0.6 (Boost release 1.57.0). | |
32 | * These are currently being investigated and a better version for Boost 1.58.0. | |
33 | * The constructs are not completely unusable and many of the tests run. | |
34 | * Some usage may work with some compilers but not others. | |
35 | * Workarounds for different compilers are being made available and can be seen in the tests where they are used. | |
36 | * For Boost Phoenix 3.2.0 most tests now run and work is continuing to resolve the remaining problems. | |
37 | ||
38 | [endsect] | |
39 | ||
40 | [section Phoenix 3.2.0 (Boost 1.58.0)] | |
41 | ||
42 | * Phoenix now has a lazy list implementation which is very similar but not identical to the implementation provided by __fcpp__. | |
43 | * Details can be found in __phoenix_lazy_list__. | |
44 | * Tests have been added for the new features provided. | |
45 | * This is an addition which causes no changes to the previous public interface. | |
46 | * Fixes for #10927 and #11085 | |
47 | ||
48 | [endsect] | |
49 | ||
50 | [section Phoenix 3.1.1] | |
51 | ||
52 | * This is the start of a series of changes which continue the fixing of the bugs. | |
53 | * There are new examples and tests which show the capability of phoenix. | |
54 | * A new example bind_goose shows the compatibility between boost bind and boost phoenix bind. | |
55 | * New tests lazy_argument_tests, lazy_make_pair_tests, lazy_templated_struct_tests show different possible uses of boost phoenix function objects. | |
56 | ||
57 | [endsect] | |
58 | ||
59 | [section Phoenix 3.1.0] | |
60 | ||
61 | This contains a series of updates to Phoenix to fix some bugs and | |
62 | to extend the examples. Details of the changes will be found in the __changelog__ | |
63 | and the release number will be increased for each set of changes released. | |
64 | ||
65 | * A start is being made on updating the documentation. | |
66 | * A bug has been fixed which was causing a lot of test examples of *bind* to fail. This was particularly the case with more recent compilers which are stricter. | |
67 | * TODO | |
68 | There is still a lot of work to be done on fixes, documentation and examples. | |
69 | ||
70 | [endsect] | |
71 | ||
72 | [section Phoenix 3.0.6 (Boost 1.57.0)] | |
73 | ||
74 | * Fixed bug in example/container_actor.cpp in end() function. | |
75 | * Fixed bug4853 and 5626 - added header <utility> for std::forward. | |
76 | * Fixed bug4853 - added header <iostream> for gcc 4.9 test | |
77 | ||
78 | [endsect] | |
79 | ||
80 | [section Phoenix 3.0.5] | |
81 | ||
82 | * Introduction of __changelog__ and release number increments. | |
83 | * Added BOOST_PHOENIX_VERSION_NUMBER using boost/predef style. | |
84 | * Fixes to bugs #5714 and #5824 are particularly important as they fixed silent errors | |
85 | in the processing of some compound expressions with commas. | |
86 | * *This could cause output from some user codes to change unexpectedly.* | |
87 | ||
88 | [endsect] | |
89 | ||
90 | ||
91 | [section Phoenix 3.0] | |
92 | ||
93 | This was the first official release of Phoenix as first class Boost citizen. As a | |
94 | consequence of the review of Phoenix V2 the internals got completely rewritten. | |
95 | Therefore the internal extension mechanism is different. | |
96 | ||
97 | * composite<...>, as_composite<...> and compose are gone and have been replaced. | |
98 | For an in depth discussion see the section [link phoenix.inside Inside Phoenix] | |
99 | * [link phoenix.modules.function] phoenix::function now supports function objects | |
100 | that implement the __boost_result_of__ protocol. *This is a breaking change* | |
101 | ||
102 | [/as well as the old return type | |
103 | deduction protocol. The same is true for [link phoenix.modules.bind Bind].] | |
104 | * Boilerplate macros to easily adapt already existing functions and function | |
105 | objects | |
106 | * [link phoenix.modules.bind Bind] is not completely compatible with Boost.Bind. The limitations will be documented as soon as possible. | |
107 | ||
108 | [endsect] | |
109 | ||
110 | [endsect] | |
111 | ||
112 | [/endsect] [/added because it was complaining it then failed!] |