Boost logo

Boost :

Subject: Re: [boost] [quickbook] diagnosing a missing [endsect]?
From: Daniel James (dnljms_at_[hidden])
Date: 2017-03-22 02:05:41

On 18 March 2017 at 21:47, Peter Dimov via Boost <boost_at_[hidden]> wrote:
>> This works, quickbook gets built and copied to $BOOST_ROOT/dist/bin. But
>> then
>> C:\Projects\boost-git\boost>dist\bin\quickbook.exe
>> E
>> C:\Projects\boost-git\boost>dist\bin\quickbook.exe --help
>> A
>> C:\Projects\boost-git\boost>dist\bin\quickbook.exe --input-file
>> libs\mp11\doc\mp11.qbk --output-file test.xml
>> G
>> By the look of it, a UTF-16 string is probably being output as 8 bit.
> My default toolset is msvc-8.0, and it seems that std::wcout doesn't quite
> work there, although the trick with _setmode(_fileno(stdout), _O_U16TEXT)
> does enable wprintf et al.

Looking at the code I expected UTF-16 to work for Visual C++ 7.1 and
up, so I'm going to download Visual Studio 2008 and give it a go.

> tools\quickbook\src\actions.cpp: In function 'void
> quickbook::role_action(quickbook::state&, quickbook::value)':
> tools\quickbook\src\actions.cpp:339:35: error: use of deleted function
> 'boost::basic_string_ref<charT,
> traits>::basic_string_ref(std::basic_string<CharT, Traits, Alloc>&&) [with
> Allocator = std::allocator<char>; charT = char; traits =
> std::char_traits<char>]'
> state.phrase.get());
> ^
> In file included from tools\quickbook\src\fwd.hpp:16:0,
> from tools\quickbook\src\quickbook.hpp:19,
> from tools\quickbook\src\actions.cpp:24:
> ./boost/utility/string_ref.hpp:98:9: note: declared here
> basic_string_ref( std::basic_string<charT, traits,
> Allocator>&&)
> ^~~~~~~~~~~~~~~~

IIRC one of the main use cases for string_ref was so that functions
would just need a single overload to accept strings, so that's a bit
annoying. I'll wait and see if it changes after the beta.

> This looks like the string_ref issue someone already complained about. Your
> Travis probably missed it because it tests against 1.63.0 instead of
>'ing its way to freedom, democracy and the American way. (Distant
> bald eagle cry.)

Everything looks like a nail? If i wanted to test against master, I
would download a snapshot. But even if I did that, the travis tests
wouldn't have caught this, as I only run them in C++03 mode. For a few
reasons, I don't think Travis is an appropriate place for testing the
dependencies of quickbook. Would be better to add it to the main
testing setup, but I've never been motivated enough to do that. My
main concern is that the automated builds work, and I'm not going to
put a lot of effort into guaranteeing constant support for other

Boost list run by bdawes at, gregod at, cpdaniel at, john at