Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: downloads/boost_1_34_1/boost/wave/wave_config_constant.hpp @ 29

Last change on this file since 29 was 29, checked in by landauf, 17 years ago

updated boost from 1_33_1 to 1_34_1

File size: 3.6 KB
Line 
1/*=============================================================================
2    Boost.Wave: A Standard compliant C++ preprocessor library
3    Persistent application configuration
4   
5    http://www.boost.org/
6
7    Copyright (c) 2001-2007 Hartmut Kaiser. Distributed under the Boost
8    Software License, Version 1.0. (See accompanying file
9    LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
10=============================================================================*/
11
12#if !defined(BOOST_WAVE_CONFIG_CONSTANT_HPP)
13#define BOOST_WAVE_CONFIG_CONSTANT_HPP
14
15#include <boost/preprocessor/stringize.hpp>
16#include <boost/wave/wave_config.hpp>
17
18///////////////////////////////////////////////////////////////////////////////
19#if BOOST_WAVE_SUPPORT_VARIADICS_PLACEMARKERS != 0
20#define BOOST_WAVE_SUPPORT_VARIADICS_PLACEMARKERS_CONFIG 0x00000001
21#else
22#define BOOST_WAVE_SUPPORT_VARIADICS_PLACEMARKERS_CONFIG 0x00000000
23#endif
24
25///////////////////////////////////////////////////////////////////////////////
26#if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0
27#define BOOST_WAVE_SUPPORT_PRAGMA_ONCE_CONFIG 0x00000002
28#else
29#define BOOST_WAVE_SUPPORT_PRAGMA_ONCE_CONFIG 0x00000000
30#endif
31
32///////////////////////////////////////////////////////////////////////////////
33#if BOOST_WAVE_SUPPORT_MS_EXTENSIONS != 0
34#define BOOST_WAVE_SUPPORT_MS_EXTENSIONS_CONFIG 0x00000004
35#else
36#define BOOST_WAVE_SUPPORT_MS_EXTENSIONS_CONFIG 0x00000000
37#endif
38
39///////////////////////////////////////////////////////////////////////////////
40#if BOOST_WAVE_PREPROCESS_PRAGMA_BODY != 0
41#define BOOST_WAVE_PREPROCESS_PRAGMA_BODY_CONFIG 0x00000008
42#else
43#define BOOST_WAVE_PREPROCESS_PRAGMA_BODY_CONFIG 0x00000000
44#endif
45
46///////////////////////////////////////////////////////////////////////////////
47#if BOOST_WAVE_USE_STRICT_LEXER != 0
48#define BOOST_WAVE_USE_STRICT_LEXER_CONFIG 0x00000010
49#else
50#define BOOST_WAVE_USE_STRICT_LEXER_CONFIG 0x00000000
51#endif
52
53///////////////////////////////////////////////////////////////////////////////
54#define BOOST_WAVE_CONFIG (                                                   \
55        BOOST_WAVE_SUPPORT_VARIADICS_PLACEMARKERS_CONFIG |                    \
56        BOOST_WAVE_SUPPORT_PRAGMA_ONCE_CONFIG |                               \
57        BOOST_WAVE_SUPPORT_MS_EXTENSIONS_CONFIG |                             \
58        BOOST_WAVE_PREPROCESS_PRAGMA_BODY_CONFIG |                            \
59        BOOST_WAVE_USE_STRICT_LEXER_CONFIG                                    \
60    )                                                                         \
61    /**/
62
63///////////////////////////////////////////////////////////////////////////////
64namespace boost { namespace wave {
65
66    ///////////////////////////////////////////////////////////////////////////
67    //  Call this function to test the configuration of the calling application
68    //  against the configuration of the linked library.
69    BOOST_WAVE_DECL bool test_configuration(unsigned int config, 
70        char const* pragma_keyword, char const* string_type);
71       
72///////////////////////////////////////////////////////////////////////////////
73}}  // namespace boost::wave
74
75#define BOOST_WAVE_TEST_CONFIGURATION()                                       \
76        boost::wave::test_configuration(                                      \
77            BOOST_WAVE_CONFIG,                                                \
78            BOOST_WAVE_PRAGMA_KEYWORD,                                        \
79            BOOST_PP_STRINGIZE((BOOST_WAVE_STRINGTYPE))                       \
80        )                                                                     \
81    /**/
82   
83#endif // !BOOST_WAVE_CONFIG_CONSTANT_HPP
Note: See TracBrowser for help on using the repository browser.