[/ 
  (C) Copyright Edward Diener 2011-2015,2020
  Distributed under the Boost Software License, Version 1.0.
  (See accompanying file LICENSE_1_0.txt or copy at
  http://www.boost.org/LICENSE_1_0.txt).
]

[section:vmd_history History]

[heading Version 1.10, Boost 1.75]
* Added support for testing for general identifier syntax using BOOST_VMD_IS_GENERAL_IDENTIFIER.

[heading Version 1.9, Boost 1.60]
* Added support for "empty" seqs and tuples.

[heading Version 1.8]

* After a review of VMD I have greatly simplified the main interfaces and added
optional functionality in the form of modifiers. The main changes are the addition
of the many generic macros for sequences and the expansions of types to include the
v-type.
  * Added BOOST_VMD_ELEM macro.
  * Added BOOST_VMD_EQUAL macro.
  * Added BOOST_VMD_NOT_EQUAL macro.
  * Added BOOST_VMD_IS_MULTI macro.
  * Added BOOST_VMD_IS_TYPE macro.
  * Added BOOST_VMD_ASSERT_IS_TYPE macro.
  * Added BOOST_VMD_IS_UNARY macro.
  * Added BOOST_VMD_SIZE macro.
  * Replaced with the BOOST_VMD_ELEM macro, using modifiers, a number of macros which were eliminated. These are:
    * BOOST_VMD_IDENTIFER
    * BOOST_VMD_BEGIN_IDENTIFIER
    * BOOST_VMD_AFTER_IDENTIFIER
    * BOOST_VMD_IS_BEGIN_IDENTIFIER
    * BOOST_VMD_NUMBER
    * BOOST_VMD_BEGIN_NUMBER
    * BOOST_VMD_AFTER_NUMBER
    * BOOST_VMD_IS_BEGIN_NUMBER
    * BOOST_VMD_ARRAY
    * BOOST_VMD_BEGIN_ARRAY
    * BOOST_VMD_AFTER_ARRAY
    * BOOST_VMD_IS_BEGIN_ARRAY
    * BOOST_VMD_LIST
    * BOOST_VMD_BEGIN_LIST
    * BOOST_VMD_AFTER_LIST
    * BOOST_VMD_IS_BEGIN_LIST
    * BOOST_VMD_SEQ
    * BOOST_VMD_BEGIN_SEQ
    * BOOST_VMD_AFTER_SEQ
    * BOOST_VMD_IS_BEGIN_SEQ
    * BOOST_VMD_TUPLE
    * BOOST_VMD_BEGIN_TUPLE
    * BOOST_VMD_AFTER_TUPLE
    * BOOST_VMD_IS_BEGIN_TUPLE
  * Every macro has its own header file.

[heading Version 1.7]

* The library has been reengineered to provide vastly added functionality. This includes:
  * Adding functionality for parsing v-types.
  * Adding functionality for parsing sequences of v-types.
  * Adding improved ASSERT macros.
  * Adding BOOST_VMD_EMPTY and BOOST_VMD_IDENTITY.

[heading Version 1.6]

* Stripped off all functionality duplicated by the variadic macro functionality added to Boost PP.
* Removed the notion of 'native' and 'pplib' modes.
* Use the BOOST_PP_VARIADICS macro from the Boost PP library to determine variadic macro availability
  and removed the native macro for determining this from this library.
* Updated documentation, especially to give fuller information of the use of the BOOST_VMD_EMPTY
  macro and its flaw and use with Visual C++.
* Changed the directory structure to adhere to the Modular Boost structure.

[heading Version 1.5]

* Added macros for verifying Boost PP data types.
* Added macros for detecting and removing beginning parens.
* Added a macro for testing for the emptiness of a parameter.
* Added support for individual header files.
* Added support for 'native' and 'pplib' modes.
* Added control macros for controlling the variadic macro availability, mode, and data verification.

[heading Version 1.4]

* Removed internal dependency on BOOST_PP_CAT and BOOST_PP_ADD when using VC++.

[heading Version 1.3]

* Moved version information and history into the documentation.
* Separate files for build.txt in the doc sub-directory and readme.txt in the top-level directory.
* Breaking changes
  * The name of the main header file is shortened to 'vmd.hpp'.
  * The library follows the Boost conventions.
    * Changed the filenames to lower case and underscores.
    * The macros now start with BOOST\_VMD\_ rather than just VMD\_ as previously.

[heading Version 1.2]

* Added a readme.txt file.
* Updated all jamfiles so that the library may be tested and docs generated from its own local directory.

[heading Version 1.1]

* Added better documentation for using variadic data with Boost PP and VMD.

[heading Version 1.0]

Initial version of the library.

[endsect]
