1 # /* **************************************************************************
3 # * (C) Copyright Paul Mensonides 2002.
4 # * Distributed under the Boost Software License, Version 1.0. (See
5 # * accompanying file LICENSE_1_0.txt or copy at
6 # * http://www.boost.org/LICENSE_1_0.txt)
8 # ************************************************************************** */
10 # /* See http://www.boost.org for most recent version. */
12 # ifndef BOOST_PREPROCESSOR_CONFIG_CONFIG_HPP
13 # define BOOST_PREPROCESSOR_CONFIG_CONFIG_HPP
15 # /* BOOST_PP_CONFIG_FLAGS */
17 # define BOOST_PP_CONFIG_STRICT() 0x0001
18 # define BOOST_PP_CONFIG_IDEAL() 0x0002
20 # define BOOST_PP_CONFIG_MSVC() 0x0004
21 # define BOOST_PP_CONFIG_MWCC() 0x0008
22 # define BOOST_PP_CONFIG_BCC() 0x0010
23 # define BOOST_PP_CONFIG_EDG() 0x0020
24 # define BOOST_PP_CONFIG_DMC() 0x0040
26 # ifndef BOOST_PP_CONFIG_FLAGS
27 # if defined(__GCCXML__)
28 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT())
29 # elif defined(__WAVE__)
30 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT())
31 # elif defined(__MWERKS__) && __MWERKS__ >= 0x3200
32 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT())
33 # elif defined(__EDG__) || defined(__EDG_VERSION__)
34 # if defined(_MSC_VER) && __EDG_VERSION__ >= 308
35 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_MSVC())
37 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_EDG() | BOOST_PP_CONFIG_STRICT())
39 # elif defined(__MWERKS__)
40 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_MWCC())
41 # elif defined(__DMC__)
42 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_DMC())
43 # elif defined(__BORLANDC__) && __BORLANDC__ >= 0x581
44 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT())
45 # elif defined(__BORLANDC__) || defined(__IBMC__) || defined(__IBMCPP__) || defined(__SUNPRO_CC)
46 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_BCC())
47 # elif defined(_MSC_VER)
48 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_MSVC())
50 # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT())
54 # /* BOOST_PP_CONFIG_EXTENDED_LINE_INFO */
56 # ifndef BOOST_PP_CONFIG_EXTENDED_LINE_INFO
57 # define BOOST_PP_CONFIG_EXTENDED_LINE_INFO 0
60 # /* BOOST_PP_CONFIG_ERRORS */
62 # ifndef BOOST_PP_CONFIG_ERRORS
64 # define BOOST_PP_CONFIG_ERRORS 0
66 # define BOOST_PP_CONFIG_ERRORS 1