Misc. fixes and new config options.

[SVN r13971]
This commit is contained in:
John Maddock
2002-05-18 11:30:49 +00:00
parent 1035f25b65
commit 084af757b4
5 changed files with 36 additions and 16 deletions

View File

@ -54,15 +54,6 @@
# endif
#endif
#ifdef __MWERKS__
# define BOOST_REGEX_NO_EXTERNAL_TEMPLATES
#endif
#ifdef __IBMCPP__
# define BOOST_REGEX_NO_EXTERNAL_TEMPLATES
#endif
/*****************************************************************************
*
* Include all the headers we need here:
@ -159,6 +150,19 @@
# define BOOST_REGEX_NO_BOOL
#endif
// We don't make our templates external if the compiler
// can't handle it:
#if defined(BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS) || defined(__ICL) || defined(__ICC)\
&& !defined(BOOST_MSVC) && !defined(__BORLANDC__)
# define BOOST_REGEX_NO_EXTERNAL_TEMPLATES
#endif
// disable our own file-iterators and mapfiles if we can't
// support them:
#if !defined(BOOST_HAS_DIRENT_H) && !(defined(_WIN32) && !defined(BOOST_REGEX_NO_W32))
# define BOOST_REGEX_NO_FILEITER
#endif
#ifdef __cplusplus
#ifndef MB_CUR_MAX
// yuk!
@ -599,10 +603,19 @@ namespace std{
#ifdef __cplusplus
namespace boost{ namespace re_detail{
#ifdef BOOST_MSVC
#pragma warning (push)
#pragma warning (disable : 4100)
#endif
template <class T>
inline void pointer_destroy(T* p)
{ p->~T(); (void)p; }
#ifdef BOOST_MSVC
#pragma warning (pop)
#endif
template <class T>
inline void pointer_construct(T* p, const T& t)
{ new (p) T(t); }
@ -614,3 +627,4 @@ inline void pointer_construct(T* p, const T& t)