From 293b945785adf81b87f7d735a8409ef6fcbee117 Mon Sep 17 00:00:00 2001 From: John Maddock Date: Thu, 6 Jun 2002 11:32:45 +0000 Subject: [PATCH] Added fixes for C++ Builder 6 alignment (binary compatibility) issues. [SVN r14087] --- include/boost/cregex.hpp | 2 +- include/boost/regex.hpp | 2 +- include/boost/regex/detail/fileiter.hpp | 2 +- include/boost/regex/detail/instances.hpp | 4 ++++ include/boost/regex/detail/regex_compile.hpp | 2 +- include/boost/regex/detail/regex_cstring.hpp | 2 +- include/boost/regex/detail/regex_format.hpp | 2 +- include/boost/regex/detail/regex_kmp.hpp | 2 +- include/boost/regex/detail/regex_match.hpp | 2 +- include/boost/regex/detail/regex_raw_buffer.hpp | 2 +- include/boost/regex/detail/regex_split.hpp | 2 +- include/boost/regex/detail/regex_stack.hpp | 2 +- include/boost/regex/detail/regex_synch.hpp | 2 +- include/boost/regex/pattern_except.hpp | 2 +- include/boost/regex/regex_traits.hpp | 6 +++++- 15 files changed, 22 insertions(+), 14 deletions(-) diff --git a/include/boost/cregex.hpp b/include/boost/cregex.hpp index cd628559..5c11e09b 100644 --- a/include/boost/cregex.hpp +++ b/include/boost/cregex.hpp @@ -27,7 +27,7 @@ #include #ifdef __BORLANDC__ - #pragma option push -a4 -b -Ve -pc + #pragma option push -a8 -b -Vx -Ve -pc #endif /* include these defs only for POSIX compatablity */ diff --git a/include/boost/regex.hpp b/include/boost/regex.hpp index 5cf40737..276962c4 100644 --- a/include/boost/regex.hpp +++ b/include/boost/regex.hpp @@ -54,7 +54,7 @@ namespace boost{ #ifdef __BORLANDC__ - #pragma option push -a4 -b -Ve -pc -w-8027 + #pragma option push -a8 -b -Vx -Ve -pc -w-8027 #endif namespace re_detail{ diff --git a/include/boost/regex/detail/fileiter.hpp b/include/boost/regex/detail/fileiter.hpp index 90d082a1..bb909675 100644 --- a/include/boost/regex/detail/fileiter.hpp +++ b/include/boost/regex/detail/fileiter.hpp @@ -81,7 +81,7 @@ namespace boost{ namespace re_detail{ #ifdef __BORLANDC__ - #pragma option push -a4 -b -Ve -pc + #pragma option push -a8 -b -Vx -Ve -pc #endif struct _fi_find_data diff --git a/include/boost/regex/detail/instances.hpp b/include/boost/regex/detail/instances.hpp index 47618441..b286a947 100644 --- a/include/boost/regex/detail/instances.hpp +++ b/include/boost/regex/detail/instances.hpp @@ -40,6 +40,8 @@ namespace boost{ #ifdef __BORLANDC__ +#pragma option push -a8 -b -Vx -Ve -pc + # ifndef BOOST_REGEX_INSTANTIATE # pragma option push -Jgx # endif @@ -55,6 +57,8 @@ template class BOOST_REGEX_DECL match_results diff --git a/include/boost/regex/detail/regex_kmp.hpp b/include/boost/regex/detail/regex_kmp.hpp index b922df31..3a5e7080 100644 --- a/include/boost/regex/detail/regex_kmp.hpp +++ b/include/boost/regex/detail/regex_kmp.hpp @@ -34,7 +34,7 @@ namespace boost{ namespace re_detail{ #ifdef __BORLANDC__ - #pragma option push -a4 -b -Ve -pc + #pragma option push -a8 -b -Vx -Ve -pc #endif template diff --git a/include/boost/regex/detail/regex_match.hpp b/include/boost/regex/detail/regex_match.hpp index fb1e919f..7c95b589 100644 --- a/include/boost/regex/detail/regex_match.hpp +++ b/include/boost/regex/detail/regex_match.hpp @@ -31,7 +31,7 @@ namespace boost{ namespace re_detail{ #ifdef __BORLANDC__ - #pragma option push -a4 -b -Ve -pc -w-8026 -w-8027 + #pragma option push -a8 -b -Vx -Ve -pc -w-8026 -w-8027 #endif // diff --git a/include/boost/regex/detail/regex_raw_buffer.hpp b/include/boost/regex/detail/regex_raw_buffer.hpp index e4a6c71f..19a0293b 100644 --- a/include/boost/regex/detail/regex_raw_buffer.hpp +++ b/include/boost/regex/detail/regex_raw_buffer.hpp @@ -33,7 +33,7 @@ namespace boost{ namespace re_detail{ #ifdef __BORLANDC__ - #pragma option push -a4 -b -Ve -pc + #pragma option push -a8 -b -Vx -Ve -pc #endif struct empty_padding{}; diff --git a/include/boost/regex/detail/regex_split.hpp b/include/boost/regex/detail/regex_split.hpp index f25383ec..37bd59a6 100644 --- a/include/boost/regex/detail/regex_split.hpp +++ b/include/boost/regex/detail/regex_split.hpp @@ -28,7 +28,7 @@ namespace boost{ #ifdef __BORLANDC__ - #pragma option push -a4 -b -Ve -pc + #pragma option push -a8 -b -Vx -Ve -pc #endif namespace re_detail{ diff --git a/include/boost/regex/detail/regex_stack.hpp b/include/boost/regex/detail/regex_stack.hpp index 59590b6e..e66d031e 100644 --- a/include/boost/regex/detail/regex_stack.hpp +++ b/include/boost/regex/detail/regex_stack.hpp @@ -36,7 +36,7 @@ namespace boost{ namespace re_detail{ #ifdef __BORLANDC__ - #pragma option push -a4 -b -Ve -pc + #pragma option push -a8 -b -Vx -Ve -pc #endif // diff --git a/include/boost/regex/detail/regex_synch.hpp b/include/boost/regex/detail/regex_synch.hpp index 89df81c5..c3e4a9f3 100644 --- a/include/boost/regex/detail/regex_synch.hpp +++ b/include/boost/regex/detail/regex_synch.hpp @@ -47,7 +47,7 @@ namespace boost{ namespace re_detail{ #ifdef __BORLANDC__ - #pragma option push -a4 -b -Ve -pc + #pragma option push -a8 -b -Vx -Ve -pc #endif void BOOST_REGEX_CALL re_init_threads(); diff --git a/include/boost/regex/pattern_except.hpp b/include/boost/regex/pattern_except.hpp index 4a9540f4..6c9b5d9a 100644 --- a/include/boost/regex/pattern_except.hpp +++ b/include/boost/regex/pattern_except.hpp @@ -28,7 +28,7 @@ namespace boost{ #ifdef __BORLANDC__ - #pragma option push -a4 -b -Ve -pc + #pragma option push -a8 -b -Vx -Ve -pc #endif class BOOST_REGEX_DECL bad_pattern : public std::runtime_error diff --git a/include/boost/regex/regex_traits.hpp b/include/boost/regex/regex_traits.hpp index 16c19c09..caae5887 100644 --- a/include/boost/regex/regex_traits.hpp +++ b/include/boost/regex/regex_traits.hpp @@ -30,7 +30,7 @@ namespace boost{ #ifdef __BORLANDC__ - #pragma option push -a4 -b -Ve -pc + #pragma option push -a8 -b -Vx -Ve -pc #endif template @@ -123,6 +123,10 @@ struct BOOST_REGEX_DECL regex_traits_base syntax_max = 54 }; +#ifdef __BORLANDC__ +private: + char dummy_member; +#endif }; struct BOOST_REGEX_DECL c_traits_base : public regex_traits_base