]> git.lyx.org Git - lyx.git/blob - boost/boost/regex/v4/instances.hpp
update to boost 1.32.0
[lyx.git] / boost / boost / regex / v4 / instances.hpp
1 /*
2  *
3  * Copyright (c) 1998-2002
4  * Dr John Maddock
5  *
6  * Use, modification and distribution are subject to the
7  * Boost Software License, Version 1.0. (See accompanying file
8  * LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
9  *
10  */
11
12  /*
13   *   LOCATION:    see http://www.boost.org for most recent version.
14   *   FILE         instances.cpp
15   *   VERSION      see <boost/version.hpp>
16   *   DESCRIPTION: Defines those template instances that are placed in the
17   *                library rather than in the users object files.
18   */
19
20 //
21 // note no include guard, we may include this multiple times:
22 //
23 #ifndef BOOST_REGEX_NO_EXTERNAL_TEMPLATES
24
25 namespace boost{
26
27 //
28 // this header can be included multiple times, each time with
29 // a different character type, BOOST_REGEX_CHAR_T must be defined
30 // first:
31 //
32 #ifndef BOOST_REGEX_CHAR_T
33 #  error "BOOST_REGEX_CHAR_T not defined"
34 #endif
35
36 //
37 // what follows is compiler specific:
38 //
39
40 #if  defined(__BORLANDC__) && (__BORLANDC__ < 0x600)
41
42 #ifdef BOOST_HAS_ABI_HEADERS
43 #  include BOOST_ABI_PREFIX
44 #endif
45
46 #  ifndef BOOST_REGEX_INSTANTIATE
47 #     pragma option push -Jgx
48 #  endif
49
50 template class BOOST_REGEX_DECL reg_expression< BOOST_REGEX_CHAR_T >;
51
52 #  ifndef BOOST_REGEX_INSTANTIATE
53 #     pragma option pop
54 #  endif
55
56 #ifdef BOOST_HAS_ABI_HEADERS
57 #  include BOOST_ABI_SUFFIX
58 #endif
59
60 #elif (defined(BOOST_MSVC) && defined(_MSC_EXTENSIONS)) || defined(__GNUC__)
61
62 #  ifndef BOOST_REGEX_INSTANTIATE
63 #     define template extern template
64 #  endif
65
66 #  ifdef BOOST_MSVC
67 #     pragma warning(push)
68 #     pragma warning(disable : 4251 4231 4660)
69 #  endif
70
71 template class BOOST_REGEX_DECL reg_expression< BOOST_REGEX_CHAR_T >;
72
73 #  ifdef BOOST_MSVC
74 #     pragma warning(pop)
75 #  endif
76
77 #  ifdef template
78 #     undef template
79 #  endif
80
81 #endif
82
83 } // namespace boost
84
85 #endif // BOOST_REGEX_NO_EXTERNAL_TEMPLATES
86
87
88
89