updated boost on windows

This commit is contained in:
Bassem Girgis
2019-08-13 21:48:48 -05:00
parent 7d77d485fd
commit b40a3bee82
5162 changed files with 473027 additions and 116452 deletions

View File

@@ -20,10 +20,10 @@
#include <boost/spirit/home/lex/lexer/token_def.hpp>
#include <boost/assert.hpp>
#include <boost/noncopyable.hpp>
#include <boost/detail/iterator.hpp>
#include <boost/fusion/include/vector.hpp>
#include <boost/mpl/assert.hpp>
#include <boost/range/iterator_range.hpp>
#include <iterator> // for std::iterator_traits
#include <string>
namespace boost { namespace spirit { namespace lex
@@ -83,7 +83,7 @@ namespace boost { namespace spirit { namespace lex
if (first != last) {
typedef typename
boost::detail::iterator_traits<Iterator>::value_type
std::iterator_traits<Iterator>::value_type
token_type;
token_type const& t = *first;
@@ -376,8 +376,16 @@ namespace boost { namespace spirit { namespace lex
typedef detail::lexer_def_<lexer> lexer_def;
typedef std::basic_string<char_type> string_type;
lexer(unsigned int flags = match_flags::match_default
, id_type first_id = id_type(min_token_id))
// if `id_type` was specified but `first_id` is not provided
// the `min_token_id` value may be out of range for `id_type`,
// but it will be a problem only if unique ids feature is in use.
lexer(unsigned int flags = match_flags::match_default)
: lexer_type(flags)
, next_token_id(min_token_id)
, self(this_(), lexer_type::initial_state())
{}
lexer(unsigned int flags, id_type first_id)
: lexer_type(flags)
, next_token_id(first_id)
, self(this_(), lexer_type::initial_state())

View File

@@ -11,10 +11,10 @@
#endif
#include <boost/mpl/bool.hpp>
#include <boost/detail/iterator.hpp>
#include <boost/detail/workaround.hpp>
#include <boost/spirit/home/lex/lexer/pass_flags.hpp>
#include <boost/assert.hpp>
#include <iterator> // for std::iterator_traits
#if 0 != __COMO_VERSION__ || !BOOST_WORKAROUND(BOOST_MSVC, <= 1310)
#define BOOST_SPIRIT_STATIC_EOF 1
@@ -66,7 +66,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
{
public:
typedef typename
boost::detail::iterator_traits<Iterator>::value_type
std::iterator_traits<Iterator>::value_type
char_type;
private:
@@ -98,11 +98,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
};
public:
functor()
#if defined(__PGI)
: eof()
#endif
{}
functor() {}
#if BOOST_WORKAROUND(BOOST_MSVC, <= 1310)
// somehow VC7.1 needs this (meaningless) assignment operator

View File

@@ -19,6 +19,7 @@
#include <boost/spirit/home/lex/lexer/lexertl/wrap_action.hpp>
#include <boost/mpl/bool.hpp>
#include <boost/optional.hpp>
#include <iterator> // for std::iterator_traits
namespace boost { namespace spirit { namespace lex { namespace lexertl
{
@@ -36,7 +37,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
{
protected:
typedef typename
boost::detail::iterator_traits<Iterator>::value_type
std::iterator_traits<Iterator>::value_type
char_type;
public:

View File

@@ -19,7 +19,6 @@
#include <boost/spirit/home/support/detail/lexer/debug.hpp>
#include <boost/spirit/home/lex/lexer/lexertl/static_version.hpp>
#include <boost/algorithm/string.hpp>
#include <boost/lexical_cast.hpp>
#include <boost/scoped_array.hpp>
///////////////////////////////////////////////////////////////////////////////
@@ -156,9 +155,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
os_ << "struct lexer" << suffix << "\n{\n";
os_ << " // version number and feature-set of compatible static lexer engine\n";
os_ << " enum\n";
os_ << " {\n static_version = "
<< boost::lexical_cast<std::basic_string<Char> >(SPIRIT_STATIC_LEXER_VERSION)
<< ",\n";
os_ << " {\n static_version = " << SPIRIT_STATIC_LEXER_VERSION << ",\n";
os_ << " supports_bol = " << std::boolalpha << bol << ",\n";
os_ << " supports_eol = " << std::boolalpha << eol << "\n";
os_ << " };\n\n";
@@ -415,7 +412,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
{
os_ << " std::size_t index = *curr_++\n";
}
os_ << " bol = (index == '\n') ? true : false;\n";
os_ << " bol = (index == '\\n') ? true : false;\n";
os_ << " std::size_t const state_ = ptr_[\n";
os_ << " lookup_[static_cast<std::size_t>(index)]];\n";
@@ -442,7 +439,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
{
os_ << " std::size_t index = *curr_++\n";
}
os_ << " bol = (index == '\n') ? true : false;\n";
os_ << " bol = (index == '\\n') ? true : false;\n";
os_ << " std::size_t const state_ = ptr_[\n";
os_ << " lookup_[static_cast<std::size_t>(index)]];\n";
@@ -469,7 +466,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
{
os_ << " std::size_t index = *curr_++\n";
}
os_ << " bol = (index == '\n') ? true : false;\n";
os_ << " bol = (index == '\\n') ? true : false;\n";
os_ << " std::size_t const state_ = ptr_[\n";
os_ << " lookup_[static_cast<std::size_t>(index)]];\n";
@@ -577,7 +574,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
if (sm_.data()._seen_BOL_assertion)
{
os_ << " bol_ = (*start_token_ == '\n') ? true : false;\n";
os_ << " bol_ = (*start_token_ == '\\n') ? true : false;\n";
}
os_ << " id_ = npos;\n";
@@ -749,7 +746,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
}
if (iter_->eol_index != boost::lexer::npos)
{
os_ << "\n if (ch_ == '\n') goto state" << dfa_
os_ << "\n if (ch_ == '\\n') goto state" << dfa_
<< '_' << iter_->eol_index << ";\n";
}
os_ << " ++curr_;\n";
@@ -911,7 +908,6 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
os_ << "#if !defined(BOOST_SPIRIT_LEXER_NEXT_TOKEN_" << guard << ")\n";
os_ << "#define BOOST_SPIRIT_LEXER_NEXT_TOKEN_" << guard << "\n\n";
os_ << "#include <boost/detail/iterator.hpp>\n";
os_ << "#include <boost/spirit/home/support/detail/lexer/char_traits.hpp>\n\n";
generate_delimiter(os_);

View File

@@ -10,11 +10,11 @@
#pragma once
#endif
#include <boost/detail/iterator.hpp>
#include <boost/spirit/home/support/detail/lexer/state_machine.hpp>
#include <boost/spirit/home/support/detail/lexer/consts.hpp>
#include <boost/spirit/home/support/detail/lexer/size_t.hpp>
#include <boost/spirit/home/support/detail/lexer/char_traits.hpp>
#include <iterator> // for std::iterator_traits
#include <vector>
namespace boost { namespace spirit { namespace lex { namespace lexertl
@@ -25,8 +25,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
{
public:
typedef std::vector<std::size_t> size_t_vector;
typedef typename boost::detail::iterator_traits<Iterator>::value_type
char_type;
typedef typename std::iterator_traits<Iterator>::value_type char_type;
static std::size_t next (
boost::lexer::basic_state_machine<char_type> const& state_machine_
@@ -74,7 +73,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
else
{
typedef typename
boost::detail::iterator_traits<Iterator>::value_type
std::iterator_traits<Iterator>::value_type
value_type;
typedef typename
boost::lexer::char_traits<value_type>::index_type
@@ -188,7 +187,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
else
{
typedef typename
boost::detail::iterator_traits<Iterator>::value_type
std::iterator_traits<Iterator>::value_type
value_type;
typedef typename
boost::lexer::char_traits<value_type>::index_type

View File

@@ -27,6 +27,8 @@
#include <boost/foreach.hpp>
#include <iterator> // for std::iterator_traits
namespace boost { namespace spirit { namespace lex { namespace lexertl
{
///////////////////////////////////////////////////////////////////////////
@@ -158,8 +160,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
operator safe_bool() const
{ return initialized_dfa_ ? &dummy::true_ : 0; }
typedef typename boost::detail::iterator_traits<Iterator>::value_type
char_type;
typedef typename std::iterator_traits<Iterator>::value_type char_type;
typedef std::basic_string<char_type> string_type;
typedef boost::lexer::basic_rules<char_type> basic_rules_type;

View File

@@ -23,7 +23,6 @@
#include <boost/fusion/include/vector.hpp>
#include <boost/fusion/include/at.hpp>
#include <boost/fusion/include/value_at.hpp>
#include <boost/detail/iterator.hpp>
#include <boost/variant.hpp>
#include <boost/mpl/vector.hpp>
#include <boost/mpl/bool.hpp>

View File

@@ -18,6 +18,7 @@
#include <boost/spirit/home/lex/lexer/lexertl/wrap_action.hpp>
#include <boost/mpl/bool.hpp>
#include <boost/algorithm/string/predicate.hpp>
#include <iterator> // for std::iterator_traits
namespace boost { namespace spirit { namespace lex { namespace lexertl
{
@@ -48,7 +49,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
{
protected:
typedef typename
boost::detail::iterator_traits<Iterator>::value_type
std::iterator_traits<Iterator>::value_type
char_type;
public:

View File

@@ -18,6 +18,7 @@
#if defined(BOOST_SPIRIT_DEBUG)
#include <boost/spirit/home/support/detail/lexer/debug.hpp>
#endif
#include <iterator> // for std::iterator_traits
namespace boost { namespace spirit { namespace lex { namespace lexertl
{
@@ -119,8 +120,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
// object is always valid
operator safe_bool() const { return &dummy::true_; }
typedef typename boost::detail::iterator_traits<Iterator>::value_type
char_type;
typedef typename std::iterator_traits<Iterator>::value_type char_type;
typedef std::basic_string<char_type> string_type;
// Every lexer type to be used as a lexer for Spirit has to conform to

View File

@@ -23,7 +23,6 @@
#include <boost/fusion/include/vector.hpp>
#include <boost/fusion/include/at.hpp>
#include <boost/fusion/include/value_at.hpp>
#include <boost/detail/iterator.hpp>
#include <boost/variant.hpp>
#include <boost/mpl/bool.hpp>
#include <boost/mpl/vector.hpp>
@@ -33,6 +32,7 @@
#include <boost/mpl/vector.hpp>
#include <boost/mpl/if.hpp>
#include <boost/mpl/or.hpp>
#include <boost/type_traits/integral_promotion.hpp>
#include <boost/type_traits/is_same.hpp>
#include <boost/range/iterator_range.hpp>
#include <boost/static_assert.hpp>
@@ -155,10 +155,10 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
// this default conversion operator is needed to allow the direct
// usage of tokens in conjunction with the primitive parsers defined
// in Qi
operator id_type() const { return id_; }
operator id_type() const { return static_cast<id_type>(id_); }
// Retrieve or set the token id of this token instance.
id_type id() const { return id_; }
id_type id() const { return static_cast<id_type>(id_); }
void id(id_type newid) { id_ = newid; }
std::size_t state() const { return 0; } // always '0' (INITIAL state)
@@ -187,7 +187,7 @@ namespace boost { namespace spirit { namespace lex { namespace lexertl
#endif
protected:
id_type id_; // token id, 0 if nothing has been matched
typename boost::integral_promotion<id_type>::type id_; // token id, 0 if nothing has been matched
};
#if defined(BOOST_SPIRIT_DEBUG)

View File

@@ -24,10 +24,10 @@
#include <boost/fusion/include/vector.hpp>
#include <boost/mpl/if.hpp>
#include <boost/detail/iterator.hpp>
#include <boost/type_traits/is_same.hpp>
#include <boost/variant.hpp>
#include <iterator> // for std::iterator_traits
#include <string>
#include <cstdlib>
@@ -92,7 +92,7 @@ namespace boost { namespace spirit { namespace lex
if (first != last) {
typedef typename
boost::detail::iterator_traits<Iterator>::value_type
std::iterator_traits<Iterator>::value_type
token_type;
// If the following assertion fires you probably forgot to

View File

@@ -26,6 +26,7 @@
#include <boost/type_traits/is_integral.hpp>
#include <boost/type_traits/is_enum.hpp>
#include <boost/lexical_cast.hpp>
#include <iterator> // for std::iterator_traits
namespace boost { namespace spirit
{
@@ -85,7 +86,7 @@ namespace boost { namespace spirit { namespace qi
// been initialized with
typedef typename
boost::detail::iterator_traits<Iterator>::value_type
std::iterator_traits<Iterator>::value_type
token_type;
typedef typename token_type::id_type id_type;

View File

@@ -27,6 +27,7 @@
#include <boost/type_traits/is_integral.hpp>
#include <boost/type_traits/is_enum.hpp>
#include <boost/lexical_cast.hpp>
#include <iterator> // for std::iterator_traits
namespace boost { namespace spirit
{
@@ -102,7 +103,7 @@ namespace boost { namespace spirit { namespace qi
// been initialized with
typedef typename
boost::detail::iterator_traits<Iterator>::value_type
std::iterator_traits<Iterator>::value_type
token_type;
typedef typename token_type::id_type id_type;
@@ -154,12 +155,12 @@ namespace boost { namespace spirit { namespace qi
// been initialized with
typedef typename
boost::detail::iterator_traits<Iterator>::value_type
std::iterator_traits<Iterator>::value_type
token_type;
typedef typename token_type::id_type id_type;
token_type const& t = *first;
if (id_type(idmin) >= t.id() && id_type(idmin) <= t.id())
if (id_type(idmax) >= t.id() && id_type(idmin) <= t.id())
{
spirit::traits::assign_to(t, attr);
++first;

View File

@@ -27,6 +27,7 @@
#include <boost/type_traits/is_integral.hpp>
#include <boost/type_traits/is_enum.hpp>
#include <boost/lexical_cast.hpp>
#include <iterator> // for std::iterator_traits
namespace boost { namespace spirit
{
@@ -104,7 +105,7 @@ namespace boost { namespace spirit { namespace qi
// been initialized with
typedef typename
boost::detail::iterator_traits<Iterator>::value_type
std::iterator_traits<Iterator>::value_type
token_type;
typedef typename token_type::id_type id_type;
@@ -155,7 +156,7 @@ namespace boost { namespace spirit { namespace qi
// been initialized with
typedef typename
boost::detail::iterator_traits<Iterator>::value_type
std::iterator_traits<Iterator>::value_type
token_type;
typedef typename token_type::id_type id_type;

View File

@@ -26,6 +26,7 @@
#include <boost/type_traits/is_integral.hpp>
#include <boost/type_traits/is_enum.hpp>
#include <boost/lexical_cast.hpp>
#include <iterator> // for std::iterator_traits
namespace boost { namespace spirit
{
@@ -84,7 +85,7 @@ namespace boost { namespace spirit { namespace qi
// been initialized with
typedef typename
boost::detail::iterator_traits<Iterator>::value_type
std::iterator_traits<Iterator>::value_type
token_type;
typedef typename token_type::id_type id_type;