|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r78560 - in branches/release: boost boost/locale boost/locale/boundary libs/locale libs/locale/build libs/locale/src libs/locale/src/posix libs/locale/test
From: artyomtnk_at_[hidden]
Date: 2012-05-23 13:39:26
Author: artyom
Date: 2012-05-23 13:39:25 EDT (Wed, 23 May 2012)
New Revision: 78560
URL: http://svn.boost.org/trac/boost/changeset/78560
Log:
Lineup with Boost.Trunk
Fixes:
- Fixed compilation with requirement of boost_system
- Fixed some problems with STLPort builds
Properties modified:
branches/release/boost/locale/ (props changed)
branches/release/boost/locale.hpp (props changed)
branches/release/libs/locale/ (props changed)
branches/release/libs/locale/src/ (props changed)
Text files modified:
branches/release/boost/locale/boundary/index.hpp | 39 +++++++++------------------------------
branches/release/libs/locale/build/Jamfile.v2 | 4 ++++
branches/release/libs/locale/src/posix/numeric.cpp | 14 ++++++++++----
branches/release/libs/locale/test/test_locale.hpp | 2 +-
4 files changed, 24 insertions(+), 35 deletions(-)
Modified: branches/release/boost/locale/boundary/index.hpp
==============================================================================
--- branches/release/boost/locale/boundary/index.hpp (original)
+++ branches/release/boost/locale/boundary/index.hpp 2012-05-23 13:39:25 EDT (Wed, 23 May 2012)
@@ -14,6 +14,7 @@
#include <boost/locale/boundary/segment.hpp>
#include <boost/locale/boundary/boundary_point.hpp>
#include <boost/iterator/iterator_facade.hpp>
+#include <boost/type_traits/is_same.hpp>
#include <boost/shared_ptr.hpp>
#include <boost/cstdint.hpp>
#include <boost/assert.hpp>
@@ -59,38 +60,16 @@
template<typename CharType,typename SomeIteratorType>
struct linear_iterator_traits {
- static const bool is_linear = false;
+ static const bool is_linear =
+ is_same<SomeIteratorType,CharType*>::value
+ || is_same<SomeIteratorType,CharType const*>::value
+ || is_same<SomeIteratorType,typename std::basic_string<CharType>::iterator>::value
+ || is_same<SomeIteratorType,typename std::basic_string<CharType>::const_iterator>::value
+ || is_same<SomeIteratorType,typename std::vector<CharType>::iterator>::value
+ || is_same<SomeIteratorType,typename std::vector<CharType>::const_iterator>::value
+ ;
};
- template<typename CharType>
- struct linear_iterator_traits<CharType,typename std::basic_string<CharType>::iterator> {
- static const bool is_linear = true;
- };
-
- template<typename CharType>
- struct linear_iterator_traits<CharType,typename std::basic_string<CharType>::const_iterator> {
- static const bool is_linear = true;
- };
-
- template<typename CharType>
- struct linear_iterator_traits<CharType,typename std::vector<CharType>::iterator> {
- static const bool is_linear = true;
- };
-
- template<typename CharType>
- struct linear_iterator_traits<CharType,typename std::vector<CharType>::const_iterator> {
- static const bool is_linear = true;
- };
-
- template<typename CharType>
- struct linear_iterator_traits<CharType,CharType *> {
- static const bool is_linear = true;
- };
-
- template<typename CharType>
- struct linear_iterator_traits<CharType,CharType const *> {
- static const bool is_linear = true;
- };
template<typename IteratorType>
Modified: branches/release/libs/locale/build/Jamfile.v2
==============================================================================
--- branches/release/libs/locale/build/Jamfile.v2 (original)
+++ branches/release/libs/locale/build/Jamfile.v2 2012-05-23 13:39:25 EDT (Wed, 23 May 2012)
@@ -372,6 +372,10 @@
{
result += <source>util/gregorian.cpp ;
}
+
+ result += <library>../../system/build//boost_system ;
+
+
if "$(flags-only)" = "flags"
{
return $(flags-result) ;
Modified: branches/release/libs/locale/src/posix/numeric.cpp
==============================================================================
--- branches/release/libs/locale/src/posix/numeric.cpp (original)
+++ branches/release/libs/locale/src/posix/numeric.cpp 2012-05-23 13:39:25 EDT (Wed, 23 May 2012)
@@ -210,7 +210,7 @@
{
while(begin!=end) {
char c= *begin++;
- mask r=mask();
+ int r=0;
if(isspace_l(c,*lc_))
r|=space;
if(isprint_l(c,*lc_))
@@ -229,7 +229,10 @@
r|=xdigit;
if(ispunct_l(c,*lc_))
r|=punct;
- *m++ = r;
+ // r actually should be mask, but some standard
+ // libraries (like STLPort)
+ // do not define operator | properly so using int+cast
+ *m++ = static_cast<mask>(r);
}
return begin;
}
@@ -305,7 +308,7 @@
{
while(begin!=end) {
wchar_t c= *begin++;
- mask r=mask();
+ int r=0;
if(iswspace_l(c,*lc_))
r|=space;
if(iswprint_l(c,*lc_))
@@ -324,7 +327,10 @@
r|=xdigit;
if(iswpunct_l(c,*lc_))
r|=punct;
- *m++ = r;
+ // r actually should be mask, but some standard
+ // libraries (like STLPort)
+ // do not define operator | properly so using int+cast
+ *m++ = static_cast<mask>(r);
}
return begin;
}
Modified: branches/release/libs/locale/test/test_locale.hpp
==============================================================================
--- branches/release/libs/locale/test/test_locale.hpp (original)
+++ branches/release/libs/locale/test/test_locale.hpp 2012-05-23 13:39:25 EDT (Wed, 23 May 2012)
@@ -13,7 +13,7 @@
#include <iostream>
#include <iomanip>
#include <cstdlib>
-
+#include <string>
int error_counter=0;
int test_counter=0;
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk