Boost logo

Boost :

From: Reece Dunn (msclrhd_at_[hidden])
Date: 2006-05-05 06:27:43

Alisdair Meredith wrote:
> It has been agreed that several platforms will be deprecated in this
> version of Boost. To support that I have added a warning to the
> Borland config to alert anyone using old versions of this platform that
> it is being deprecated and this is the last compatible release.
> What I notice is the warning gets annoying pretty quickly.
> I propose to wrap the warning in the following test:
> #if __BORLANDC__ <= 0x581 && !defined(BOOST_ACKNOWLEDGE_DEPRECATED_1_34)
> # pragma message "...";
> #endif
> This will allow users to disable the warning by defining the macro in
> their environment.

It may be useful to make it work the other way (learning from Microsoft deprecating
features by default). If not, then tell the user how to turn the deprecation off in the
message, e.g.

   The Borland compiler for versions lower than 6.0 are deprecated. Support for
   this platform will be dropped in the future. To turn off this warning, define ....

> I would like to extend this to a general policy, to make deprecation
> more visible were it occurs. Using the BOOST_ACKNOWLDGE_DEPRECATED
> test we could deprecate libraries or functions, as well as platforms.

That would be useful, but see above.

> The test is a simple 'does this macro exist' rather than testing for a
> value, so should be compatible with toolchains that allow defining
> macros, but not giving them values.


> The macro is tied to the specific version that is deprecated, so in
> later releases we should grep for BOOST_DEPRECATED and either update
> the version, or do something stronger such as use #error (platform) or
> remove the code entirely (library)

Maybe have a BOOST_FORCE_DEPRECATE_AS_ERROR macro to use
errors instead of warnings, but using warnings by default.

> If this meets approval I will try to write up some more formal
> documentation for early next week, and provide something for the 1.34
> release notes.


> For reference I believe we agreed to deprecate the following platforms
> in this release:
> borland < 5.8 [Recommend we only support 5.82]
> gcc 2.95
> MSVC < 7.1
> CW 8.3

I would say CW <= 8.3 if users have 8.2 or earlier.

- Reece
Express yourself instantly with MSN Messenger! Download today it's FREE!

Boost list run by bdawes at, gregod at, cpdaniel at, john at