Boost logo

Boost :

Subject: Re: [boost] [config] libs not supporting std::u16string andstd::u32string.
From: Vicente J. Botet Escriba (vicente.botet_at_[hidden])
Date: 2012-10-07 16:44:35


Le 07/10/12 21:21, Vicente J. Botet Escriba a écrit :
> Le 07/10/12 18:02, John Maddock a écrit :
>>> compiling Boost.Ratio/io Boost.Chrono/io with compilers supporting
>>> |char16_t and |char32_t fails if the library don't provides
>>> std::u16string and std::u32string.
>>>
>>> Could we add a macro |BOOST_NO_CXX11_HDR_STRING||| (c++11 is not
>>> completely provided) or the two more specific
>>> |||BOOST_NO_CXX11_U16STRING||| and |||BOOST_NO_CXX11_U32STRING|||
>>> for these cases?
>>
>> Oh :(
>>
>> Would you like to provide a patch?
>>
>>
>
I have started to add BOOST_NO_CXX11_U16STRING and
BOOST_NO_CXX11_U32STRING (see attached patch) and at the end I'm getting
an error for gcc-4.7.0 -std=c++0x which has nothing to be with my
modifications.

boost_no_cxx11_hdr_mutex.ipp: In function ‘int
boost_no_cxx11_hdr_mutex::test()’:
boost_no_cxx11_hdr_mutex.ipp:21:14: error: ‘std::timed_mutex’ has not
been declared
boost_no_cxx11_hdr_mutex.ipp:22:14: error: ‘std::recursive_timed_mutex’
has not been declared

In addition I'm unable to build the docs

quickbook.quickbook-to-boostbook
../../../bin.v2/libs/config/doc/darwin-4.2.1/debug/config.xml
Generating Output File:
../../../bin.v2/libs/config/doc/darwin-4.2.1/debug/config.xml
/Users/viboes/boost/trunk/libs/config/doc/config.qbk:1: warning: Invalid
attributes for 'article document info': purpose, category, dirname
/Users/viboes/boost/trunk/libs/config/doc/macro_reference.qbk:700:
error: Syntax Error near column 2.
/Users/viboes/boost/trunk/libs/config/doc/macro_reference.qbk:700:
error: Syntax Error near column 3.
/Users/viboes/boost/trunk/libs/config/doc/macro_reference.qbk:700:
error: Syntax Error near column 3.
/Users/viboes/boost/trunk/libs/config/doc/guidelines.qbk:131: warning:
in column:75, [br] and \n are deprecated.
/Users/viboes/boost/trunk/libs/config/doc/guidelines.qbk:131: warning:
in column:79, [br] and \n are deprecated.
/Users/viboes/boost/trunk/libs/config/doc/guidelines.qbk:135: warning:
in column:25, [br] and \n are deprecated.
/Users/viboes/boost/trunk/libs/config/doc/guidelines.qbk:135: warning:
in column:29, [br] and \n are deprecated.
/Users/viboes/boost/trunk/libs/config/doc/guidelines.qbk:136: warning:
in column:77, [br] and \n are deprecated.
/Users/viboes/boost/trunk/libs/config/doc/guidelines.qbk:136: warning:
in column:81, [br] and \n are deprecated.
/Users/viboes/boost/trunk/libs/config/doc/guidelines.qbk:138: warning:
in column:103, [br] and \n are deprecated.
/Users/viboes/boost/trunk/libs/config/doc/guidelines.qbk:138: warning:
in column:107, [br] and \n are deprecated.
config.qbk: error: Error count: 3.

are these know issues?

I have updated only the file boost/config/stdlib/libstdcpp3.hpp. I could
update others once you commit the patch.

Best,
Vicente

Complete log:

darwin.compile.c++
../../../bin.v2/libs/config/test/config_test.test/darwin-4.7.0x/debug/config_test.o
In file included from config_test.cpp:51:0:
boost_no_auto_ptr.ipp: In function ‘int boost_no_auto_ptr::test()’:
boost_no_auto_ptr.ipp:43:26: warning: ‘auto_ptr’ is deprecated (declared
at
/usr/local/gcc-4-7-svn/lib/gcc/x86_64-apple-darwin10/4.7.0/include/c++/backward/auto_ptr.h:87)
[-Wdeprecated-declarations]
In file included from config_test.cpp:106:0:
boost_no_cxx11_allocator.ipp: In function ‘int
boost_no_cxx11_allocator::test()’:
boost_no_cxx11_allocator.ipp:19:32: warning: unused variable ‘p’
[-Wunused-variable]
boost_no_cxx11_allocator.ipp:27:25: warning: unused variable ‘aat’
[-Wunused-variable]
boost_no_cxx11_allocator.ipp:28:51: warning: unused variable ‘ua’
[-Wunused-variable]
boost_no_cxx11_allocator.ipp:29:48: warning: unused variable ‘at’
[-Wunused-variable]
In file included from config_test.cpp:116:0:
boost_no_cxx11_hdr_array.ipp: In function ‘int
boost_no_cxx11_hdr_array::test()’:
boost_no_cxx11_hdr_array.ipp:19:36: warning: missing braces around
initializer for ‘std::array<int, 3ul>::value_type [3] {aka int [3]}’
[-Wmissing-braces]
In file included from config_test.cpp:151:0:
boost_no_cxx11_hdr_mutex.ipp: In function ‘int
boost_no_cxx11_hdr_mutex::test()’:
boost_no_cxx11_hdr_mutex.ipp:21:14: error: ‘std::timed_mutex’ has not
been declared
boost_no_cxx11_hdr_mutex.ipp:22:14: error: ‘std::recursive_timed_mutex’
has not been declared
In file included from config_test.cpp:211:0:
boost_no_cxx11_smart_ptr.ipp: In function ‘int
boost_no_cxx11_smart_ptr::test()’:
boost_no_cxx11_smart_ptr.ipp:26:37: warning: unused variable ‘h1’
[-Wunused-variable]
boost_no_cxx11_smart_ptr.ipp:27:37: warning: unused variable ‘h2’
[-Wunused-variable]
In file included from config_test.cpp:231:0:
boost_no_decltype.ipp: In function ‘int boost_no_cxx11_decltype::test()’:
boost_no_decltype.ipp:43:15: warning: unused variable ‘j’
[-Wunused-variable]
In file included from config_test.cpp:336:0:
boost_no_is_abstract.ipp: In function ‘int boost_no_is_abstract::test()’:
boost_no_is_abstract.ipp:49:80: warning: comparison between ‘enum
boost_no_is_abstract::is_abstract_test<boost_no_is_abstract::non_abstract>::<anonymous>’
and ‘enum
boost_no_is_abstract::is_abstract_test<boost_no_is_abstract::abstract>::<anonymous>’
[-Wenum-compare]
In file included from config_test.cpp:571:0:
boost_no_template_streams.ipp: In function ‘int
boost_no_templated_iostreams::test()’:
boost_no_template_streams.ipp:19:55: warning: unused variable ‘osr’
[-Wunused-variable]
In file included from config_test.cpp:586:0:
boost_no_typeid.ipp: In function ‘int boost_no_typeid::test()’:
boost_no_typeid.ipp:19:15: warning: value computed is not used
[-Wunused-value]
boost_no_typeid.ipp:19:15: warning: statement has no effect [-Wunused-value]
In file included from config_test.cpp:596:0:
boost_no_unicode_literals.ipp: In function ‘int
boost_no_cxx11_unicode_literals::test()’:
boost_no_unicode_literals.ipp:20:19: warning: unused variable ‘c16’
[-Wunused-variable]
boost_no_unicode_literals.ipp:21:19: warning: unused variable ‘c32’
[-Wunused-variable]
In file included from config_test.cpp:601:0:
boost_no_unified_init.ipp: In function ‘int
boost_no_cxx11_unified_initialization_syntax::test()’:
boost_no_unified_init.ipp:48:16: warning: unused variable ‘var1’
[-Wunused-variable]
In file included from config_test.cpp:541:0:
boost_no_std_wstreambuf.ipp: In instantiation of
‘boost_no_std_wstreambuf::parser_buf<charT, traits>::pos_type
boost_no_std_wstreambuf::parser_buf<charT,
traits>::seekoff(boost_no_std_wstreambuf::parser_buf<charT,
traits>::off_type, std::ios_base::seekdir, std::ios_base::openmode)
[with charT = char; traits = std::char_traits<char>;
boost_no_std_wstreambuf::parser_buf<charT, traits>::pos_type =
std::fpos<__mbstate_t>; boost_no_std_wstreambuf::parser_buf<charT,
traits>::off_type = long long int; std::ios_base::seekdir =
std::_Ios_Seekdir; std::ios_base::openmode = std::_Ios_Openmode]’:
boost_no_std_wstreambuf.ipp:104:16: required from here
boost_no_std_wstreambuf.ipp:59:4: warning: enumeration value
‘_S_ios_seekdir_end’ not handled in switch [-Wswitch]
boost_no_std_wstreambuf.ipp: In instantiation of
‘boost_no_std_wstreambuf::parser_buf<charT, traits>::pos_type
boost_no_std_wstreambuf::parser_buf<charT,
traits>::seekoff(boost_no_std_wstreambuf::parser_buf<charT,
traits>::off_type, std::ios_base::seekdir, std::ios_base::openmode)
[with charT = wchar_t; traits = std::char_traits<wchar_t>;
boost_no_std_wstreambuf::parser_buf<charT, traits>::pos_type =
std::fpos<__mbstate_t>; boost_no_std_wstreambuf::parser_buf<charT,
traits>::off_type = long long int; std::ios_base::seekdir =
std::_Ios_Seekdir; std::ios_base::openmode = std::_Ios_Openmode]’:
boost_no_std_wstreambuf.ipp:105:16: required from here
boost_no_std_wstreambuf.ipp:59:4: warning: enumeration value
‘_S_ios_seekdir_end’ not handled in switch [-Wswitch]

"/usr/local/gcc-4-7-svn/bin/g++" -ftemplate-depth-128 -std=gnu++0x -O0
-fno-inline -Wall -g -dynamic -gdwarf-2 -fexceptions -fPIC
-DBOOST_ALL_NO_LIB=1 -I"../../.." -c -o
"../../../bin.v2/libs/config/test/config_test.test/darwin-4.7.0x/debug/config_test.o"
"config_test.cpp"

...failed darwin.compile.c++
../../../bin.v2/libs/config/test/config_test.test/darwin-4.7.0x/debug/config_test.o...
...failed updating 1 target...
pc6:test viboes$




Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk