Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r53192 - in trunk: boost/wave boost/wave/cpplexer boost/wave/cpplexer/re2clex boost/wave/util libs/wave libs/wave/doc libs/wave/samples/advanced_hooks/build libs/wave/samples/cpp_tokens libs/wave/samples/cpp_tokens/build libs/wave/samples/hannibal/build libs/wave/samples/lexed_tokens/build libs/wave/samples/list_includes/build libs/wave/samples/list_includes/lexertl libs/wave/samples/quick_start/build libs/wave/samples/real_positions libs/wave/samples/real_positions/build libs/wave/samples/token_statistics libs/wave/samples/token_statistics/build libs/wave/samples/token_statistics/xlex libs/wave/samples/waveidl/build libs/wave/samples/waveidl/idllexer libs/wave/src/cpplexer/re2clex libs/wave/test/build tools/wave
From: hartmut.kaiser_at_[hidden]
Date: 2009-05-22 19:40:57


Author: hkaiser
Date: 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
New Revision: 53192
URL: http://svn.boost.org/trac/boost/changeset/53192

Log:
Wave: fixed examples
Text files modified:
   trunk/boost/wave/cpplexer/cpp_lex_interface_generator.hpp | 9
   trunk/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp | 56 ++--
   trunk/boost/wave/util/cpp_iterator.hpp | 2
   trunk/boost/wave/wave_version.hpp | 4
   trunk/libs/wave/ChangeLog | 11
   trunk/libs/wave/doc/class_reference_ctxpolicy.html | 5
   trunk/libs/wave/samples/advanced_hooks/build/Jamfile.v2 | 2
   trunk/libs/wave/samples/cpp_tokens/build/Jamfile.v2 | 2
   trunk/libs/wave/samples/cpp_tokens/slex_iterator.hpp | 14
   trunk/libs/wave/samples/hannibal/build/Jamfile.v2 | 2
   trunk/libs/wave/samples/lexed_tokens/build/Jamfile.v2 | 2
   trunk/libs/wave/samples/list_includes/build/Jamfile.v2 | 2
   trunk/libs/wave/samples/list_includes/lexertl/lexertl_lexer.hpp | 56 ++--
   trunk/libs/wave/samples/list_includes/lexertl/wave_lexertl_config.hpp | 2
   trunk/libs/wave/samples/quick_start/build/Jamfile.v2 | 2
   trunk/libs/wave/samples/real_positions/build/Jamfile.v2 | 2
   trunk/libs/wave/samples/real_positions/instantiate_re2c_lexer.cpp | 6
   trunk/libs/wave/samples/token_statistics/build/Jamfile.v2 | 2
   trunk/libs/wave/samples/token_statistics/xlex/xlex_lexer.hpp | 15
   trunk/libs/wave/samples/token_statistics/xlex_iterator.hpp | 123 ++++++--
   trunk/libs/wave/samples/waveidl/build/Jamfile.v2 | 2
   trunk/libs/wave/samples/waveidl/idllexer/idl.re | 2
   trunk/libs/wave/samples/waveidl/idllexer/idl_lex_interface.hpp | 2
   trunk/libs/wave/samples/waveidl/idllexer/idl_lex_iterator.hpp | 110 +++++--
   trunk/libs/wave/samples/waveidl/idllexer/idl_re.cpp | 466 +++++++++++++++++-----------------
   trunk/libs/wave/samples/waveidl/idllexer/idl_re2c_lexer.hpp | 12
   trunk/libs/wave/src/cpplexer/re2clex/cpp_re.inc | 524 ++++++++++++++++++++--------------------
   trunk/libs/wave/src/cpplexer/re2clex/strict_cpp_re.inc | 524 ++++++++++++++++++++--------------------
   trunk/libs/wave/test/build/Jamfile.v2 | 1
   trunk/tools/wave/cpp_version.hpp | 4
   trunk/tools/wave/trace_macro_expansion.hpp | 3
   31 files changed, 1043 insertions(+), 926 deletions(-)

Modified: trunk/boost/wave/cpplexer/cpp_lex_interface_generator.hpp
==============================================================================
--- trunk/boost/wave/cpplexer/cpp_lex_interface_generator.hpp (original)
+++ trunk/boost/wave/cpplexer/cpp_lex_interface_generator.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -48,14 +48,15 @@
 ///////////////////////////////////////////////////////////////////////////////
 template <
     typename IteratorT,
- typename PositionT = boost::wave::util::file_position_type
+ typename PositionT = boost::wave::util::file_position_type,
+ typename TokenT = lex_token<PositionT>
>
 struct BOOST_WAVE_NEW_LEXER_DECL new_lexer_gen
 {
 // The NewLexer function allows the opaque generation of a new lexer object.
 // It is coupled to the token type to allow to decouple the lexer/token
 // configurations at compile time.
- static lex_input_interface<lex_token<PositionT> > *
+ static lex_input_interface<TokenT> *
     new_lexer(IteratorT const &first, IteratorT const &last,
         PositionT const &pos, boost::wave::language_support language);
 };
@@ -87,8 +88,8 @@
     new_lexer(IteratorT const &first, IteratorT const &last,
         position_type const &pos, boost::wave::language_support language)
     {
- return new_lexer_gen<IteratorT, position_type>::new_lexer (first, last,
- pos, language);
+ return new_lexer_gen<IteratorT, position_type, TokenT>::new_lexer (
+ first, last, pos, language);
     }
 };
 

Modified: trunk/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp
==============================================================================
--- trunk/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp (original)
+++ trunk/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -59,18 +59,20 @@
 //
 ///////////////////////////////////////////////////////////////////////////////
 
-template <typename IteratorT, typename PositionT = boost::wave::util::file_position_type>
+template <typename IteratorT,
+ typename PositionT = boost::wave::util::file_position_type,
+ typename TokenT = lex_token<PositionT> >
 class lexer
 {
 public:
- typedef lex_token<PositionT> token_type;
+ typedef TokenT token_type;
     typedef typename token_type::string_type string_type;
     
     lexer(IteratorT const &first, IteratorT const &last,
         PositionT const &pos, boost::wave::language_support language_);
     ~lexer();
 
- lex_token<PositionT>& get(lex_token<PositionT>&);
+ token_type& get(token_type&);
     void set_position(PositionT const &pos)
     {
         // set position has to change the file name and line number only
@@ -106,9 +108,9 @@
 
 ///////////////////////////////////////////////////////////////////////////////
 // initialize cpp lexer
-template <typename IteratorT, typename PositionT>
+template <typename IteratorT, typename PositionT, typename TokenT>
 inline
-lexer<IteratorT, PositionT>::lexer(IteratorT const &first,
+lexer<IteratorT, PositionT, TokenT>::lexer(IteratorT const &first,
         IteratorT const &last, PositionT const &pos,
         boost::wave::language_support language_)
 : filename(pos.get_file()), at_eof(false), language(language_)
@@ -145,9 +147,9 @@
     scanner.single_line_only = boost::wave::need_single_line(language_);
 }
 
-template <typename IteratorT, typename PositionT>
+template <typename IteratorT, typename PositionT, typename TokenT>
 inline
-lexer<IteratorT, PositionT>::~lexer()
+lexer<IteratorT, PositionT, TokenT>::~lexer()
 {
     using namespace std; // some systems have free in std
     aq_terminate(scanner.eol_offsets);
@@ -156,12 +158,12 @@
 
 ///////////////////////////////////////////////////////////////////////////////
 // get the next token from the input stream
-template <typename IteratorT, typename PositionT>
-inline lex_token<PositionT>&
-lexer<IteratorT, PositionT>::get(lex_token<PositionT>& result)
+template <typename IteratorT, typename PositionT, typename TokenT>
+inline TokenT&
+lexer<IteratorT, PositionT, TokenT>::get(TokenT& result)
 {
     if (at_eof)
- return result = lex_token<PositionT>(); // return T_EOI
+ return result = token_type(); // return T_EOI
 
     unsigned int actline = scanner.line;
     token_id id = token_id(scan(&scanner));
@@ -289,9 +291,9 @@
 #endif
 }
 
-template <typename IteratorT, typename PositionT>
+template <typename IteratorT, typename PositionT, typename TokenT>
 inline int
-lexer<IteratorT, PositionT>::report_error(Scanner const *s, int errcode,
+lexer<IteratorT, PositionT, TokenT>::report_error(Scanner const *s, int errcode,
     char const *msg, ...)
 {
     BOOST_ASSERT(0 != s);
@@ -317,14 +319,14 @@
 //
 ///////////////////////////////////////////////////////////////////////////////
      
-template <typename IteratorT, typename PositionT = boost::wave::util::file_position_type>
+template <typename IteratorT,
+ typename PositionT = boost::wave::util::file_position_type,
+ typename TokenT = typename lexer<IteratorT, PositionT>::token_type>
 class lex_functor
-: public lex_input_interface_generator<
- typename lexer<IteratorT, PositionT>::token_type
- >
+: public lex_input_interface_generator<TokenT>
 {
 public:
- typedef typename lexer<IteratorT, PositionT>::token_type token_type;
+ typedef TokenT token_type;
     
     lex_functor(IteratorT const &first, IteratorT const &last,
             PositionT const &pos, boost::wave::language_support language)
@@ -341,14 +343,14 @@
 #endif
 
 private:
- lexer<IteratorT, PositionT> re2c_lexer;
+ lexer<IteratorT, PositionT, TokenT> re2c_lexer;
 };
 
 ///////////////////////////////////////////////////////////////////////////////
-template <typename IteratorT, typename PositionT>
-token_cache<typename lexer<IteratorT, PositionT>::string_type> const
- lexer<IteratorT, PositionT>::cache =
- token_cache<typename lexer<IteratorT, PositionT>::string_type>();
+template <typename IteratorT, typename PositionT, typename TokenT>
+token_cache<typename lexer<IteratorT, PositionT, TokenT>::string_type> const
+ lexer<IteratorT, PositionT, TokenT>::cache =
+ token_cache<typename lexer<IteratorT, PositionT, TokenT>::string_type>();
     
 } // namespace re2clex
 
@@ -385,15 +387,15 @@
 //
 ///////////////////////////////////////////////////////////////////////////////
 
-template <typename IteratorT, typename PositionT>
+template <typename IteratorT, typename PositionT, typename TokenT>
 BOOST_WAVE_RE2C_NEW_LEXER_INLINE
-lex_input_interface<lex_token<PositionT> > *
-new_lexer_gen<IteratorT, PositionT>::new_lexer(IteratorT const &first,
+lex_input_interface<TokenT> *
+new_lexer_gen<IteratorT, PositionT, TokenT>::new_lexer(IteratorT const &first,
     IteratorT const &last, PositionT const &pos,
     boost::wave::language_support language)
 {
     using re2clex::lex_functor;
- return new lex_functor<IteratorT, PositionT>(first, last, pos, language);
+ return new lex_functor<IteratorT, PositionT, TokenT>(first, last, pos, language);
 }
 
 #undef BOOST_WAVE_RE2C_NEW_LEXER_INLINE

Modified: trunk/boost/wave/util/cpp_iterator.hpp
==============================================================================
--- trunk/boost/wave/util/cpp_iterator.hpp (original)
+++ trunk/boost/wave/util/cpp_iterator.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -234,7 +234,7 @@
 class pp_iterator_functor {
 
 public:
-// interface to the boost::spirit::classic::multi_pass_policies::functor_input policy
+// interface to the boost::spirit::classic::iterator_policies::functor_input policy
     typedef typename ContextT::token_type result_type;
 
 // eof token

Modified: trunk/boost/wave/wave_version.hpp
==============================================================================
--- trunk/boost/wave/wave_version.hpp (original)
+++ trunk/boost/wave/wave_version.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -16,11 +16,11 @@
 // BOOST_WAVE_VERSION & 0x0000FF is the sub-minor version
 // BOOST_WAVE_VERSION & 0x00FF00 is the minor version
 // BOOST_WAVE_VERSION & 0xFF0000 is the major version
-#define BOOST_WAVE_VERSION 0x020000
+#define BOOST_WAVE_VERSION 0x020002
 
 // The following defines contain the same information as above
 #define BOOST_WAVE_VERSION_MAJOR 2
 #define BOOST_WAVE_VERSION_MINOR 0
-#define BOOST_WAVE_VERSION_SUBMINOR 0
+#define BOOST_WAVE_VERSION_SUBMINOR 2
 
 #endif // !defined(WAVE_VERSION_H_9D79ABDB_AC54_4C0A_89B1_F70A2DCFE21E_INCLUDED)

Modified: trunk/libs/wave/ChangeLog
==============================================================================
--- trunk/libs/wave/ChangeLog (original)
+++ trunk/libs/wave/ChangeLog 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -22,10 +22,19 @@
 
 CHANGELOG
 
+Boost V1.40.0
+- V2.0.2
+- Switched to Re2C V0.13.5
+- Fixed --list_includes/-l command line option of the wave driver tool to
+ correctly indent the generated list of included files.
+- Finally fixed all remaining examples. Everything seems to work fine now.
+- Specifying a custom token type now works as expected. The new lexer interface
+ introduced in V2.0 broke this part.
+
 Boost V1.39.0
 - V2.0.1
 - Fixed Wave to compile with BOOST_FILESYSTEM_NO_DEPRECATED defined (i.e. the
- library doesn't use the depracated filesystem interface anymore).
+ library doesn't use the deprecated filesystem interface anymore).
 
 Boost V1.37.0
 - Updated examples to reflect the recent changes in the used multi_pass

Modified: trunk/libs/wave/doc/class_reference_ctxpolicy.html
==============================================================================
--- trunk/libs/wave/doc/class_reference_ctxpolicy.html (original)
+++ trunk/libs/wave/doc/class_reference_ctxpolicy.html 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -52,7 +52,8 @@
 <p>This policy type is used as a template parameter to the boost::wave::context<> object, where the default policy provides empty hook functions only.</p>
 <h2><a name="header_synopsis"></a>Header wave/preprocessing_hooks.hpp synopsis</h2>
 <pre><span class="keyword">namespace</span> boost {<br><span class="keyword">namespace</span> wave {<br><span class="keyword">namespace</span> context_policies {<br> <br> <span class="keyword">struct</span> default_preprocessing_hooks {<br><br> <span class="comment">// general hook functions</span>
- <span class="keyword">template</span> &lt;<span class="keyword">typename</span> ContextT, <span class="keyword">typename</span> TokenT&gt;<br> <span class="keyword">bool</span> found_directive(ContextT <span class="keyword">const</span> &amp;ctx, <br> TokenT <span class="keyword">const </span>&amp;directive);<br><br> <span class="keyword">template</span> &lt;<span class="keyword">typename</span> ContextT, <span class="keyword">typename</span> ExceptionT&gt;<br> void throw_exception(ContextT <span class="keyword">const</span> &amp;ctx, <br> ExceptionT <span class="keyword">const</span>&amp; e);<br><br> <span class="comment">// test, whether a given token may be skipped</span><br> <span class="keyword">template</span> &lt;<span class="keyword">typename</span> ContextT&gt;<br> <span class="keyword">bool</span> <a href="c
lass_reference_ctxpolicy.html#may_skip_whitespace">may_skip_whitespace</a> (ContextT <span class="keyword">const</span>&amp; ctx,<br> TokenT &amp;token, <span class="keyword">bool</span> &amp;skipped_newline);<br>
+ <span class="keyword">template</span> &lt;<span class="keyword">typename</span> ContextT, <span class="keyword">typename</span> TokenT&gt;<br> <span class="keyword">bool</span> found_directive(ContextT <span class="keyword">const</span> &amp;ctx, <br> TokenT <span class="keyword">const </span>&amp;directive);<br>
+ <span class="keyword">template</span> &lt;<span class="keyword">typename</span> ContextT, <span class="keyword">typename</span> ExceptionT&gt;<br> void throw_exception(ContextT <span class="keyword">const</span> &amp;ctx, <br> ExceptionT <span class="keyword">const</span>&amp; e);<br><br> <span class="comment">// test, whether a given token may be skipped</span><br> <span class="keyword">template</span> &lt;<span class="keyword">typename</span> ContextT&gt;<br> <span class="keyword">bool</span> may_skip_whitespace (ContextT <span class="keyword">const</span>&amp; ctx,<br> TokenT &amp;token, <span class="keyword">bool</span> &amp;skipped_newline);<br>
         <span class="comment">// Conditional compilation</span><span class="keyword">
         template</span> &lt;<br> <span class="keyword">typename</span> ContextT, <span class="keyword">typename</span> TokenT, <br> <span class="keyword">typename</span> ContainerT<br> &gt;<br> <span class="keyword">bool</span> evaluated_conditional_expression(<br> ContextT <span class="keyword">const</span> &amp;ctx, TokenT <span class="keyword">const</span>&amp; directive, <br> ContainerT <span class="keyword">const</span>&amp; expression, <span class="keyword">bool</span> expression_value);<br>
         <span class="keyword">template</span> &lt;<span class="keyword">typename</span> ContextT, <span class="keyword">typename</span> TokenT&gt;<br> <span class="keyword">void</span> skipped_token(ContextT <span class="keyword">const</span> &amp;ctx, <br> TokenT <span class="keyword">const</span>&amp; token);<br><br> <span class="keyword">template</span> &lt;<span class="keyword">typename</span> ContextT, <span class="keyword">typename</span> TokenT&gt;<br> TokenT <span class="keyword">const</span>&amp; generated_token(ContextT <span class="keyword">const</span> &amp;ctx, <br> TokenT <span class="keyword">const</span>&amp; token);<br><br> <span class="comment">// macro expansion tracing</span><span class="keyword">
@@ -372,7 +373,7 @@
   1.0. (See accompanying file LICENSE_1_0.txt or copy at
   http://www.boost.org/LICENSE_1_0.txt) </font> </p>
 <p class="copyright"><span class="updated">Last updated:
- <!-- #BeginDate format:fcAm1m -->Sunday, October 12, 2008 20:13<!-- #EndDate -->
+ <!-- #BeginDate format:fcAm1m -->Tuesday, October 14, 2008 18:45<!-- #EndDate -->
   </span></p>
 </body>
 </html>

Modified: trunk/libs/wave/samples/advanced_hooks/build/Jamfile.v2
==============================================================================
--- trunk/libs/wave/samples/advanced_hooks/build/Jamfile.v2 (original)
+++ trunk/libs/wave/samples/advanced_hooks/build/Jamfile.v2 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -4,7 +4,7 @@
 #
 # http://www.boost.org/
 #
-# Copyright (c) 2001-2008 Hartmut Kaiser. Distributed under the Boost
+# Copyright (c) 2001-2009 Hartmut Kaiser. Distributed under the Boost
 # Software License, Version 1.0. (See accompanying file
 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 

Modified: trunk/libs/wave/samples/cpp_tokens/build/Jamfile.v2
==============================================================================
--- trunk/libs/wave/samples/cpp_tokens/build/Jamfile.v2 (original)
+++ trunk/libs/wave/samples/cpp_tokens/build/Jamfile.v2 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -4,7 +4,7 @@
 #
 # http://www.boost.org/
 #
-# Copyright (c) 2001-2008 Hartmut Kaiser. Distributed under the Boost
+# Copyright (c) 2001-2009 Hartmut Kaiser. Distributed under the Boost
 # Software License, Version 1.0. (See accompanying file
 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 

Modified: trunk/libs/wave/samples/cpp_tokens/slex_iterator.hpp
==============================================================================
--- trunk/libs/wave/samples/cpp_tokens/slex_iterator.hpp (original)
+++ trunk/libs/wave/samples/cpp_tokens/slex_iterator.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -57,7 +57,7 @@
 #endif // 0 != __DECCXX_VER
     {}
 
-// interface to the boost::spirit::classic::multi_pass_policies::functor_input
+// interface to the boost::spirit::classic::iterator_policies::functor_input
 // policy
     typedef TokenT result_type;
     typedef slex_iterator_functor_shim unique;
@@ -141,16 +141,16 @@
     functor_data_type;
     typedef typename FunctorData::result_type result_type;
 
- typedef boost::spirit::multi_pass_policies::split_functor_input input_policy;
- typedef boost::spirit::multi_pass_policies::ref_counted ownership_policy;
+ typedef boost::spirit::iterator_policies::split_functor_input input_policy;
+ typedef boost::spirit::iterator_policies::ref_counted ownership_policy;
 #if defined(BOOST_WAVE_DEBUG)
- typedef boost::spirit::multi_pass_policies::buf_id_check check_policy;
+ typedef boost::spirit::iterator_policies::buf_id_check check_policy;
 #else
- typedef boost::spirit::multi_pass_policies::no_check check_policy;
+ typedef boost::spirit::iterator_policies::no_check check_policy;
 #endif
- typedef boost::spirit::multi_pass_policies::split_std_deque storage_policy;
+ typedef boost::spirit::iterator_policies::split_std_deque storage_policy;
 
- typedef boost::spirit::multi_pass_policies::default_policy<
+ typedef boost::spirit::iterator_policies::default_policy<
             ownership_policy, check_policy, input_policy, storage_policy>
         policy_type;
     typedef boost::spirit::multi_pass<functor_data_type, policy_type> type;

Modified: trunk/libs/wave/samples/hannibal/build/Jamfile.v2
==============================================================================
--- trunk/libs/wave/samples/hannibal/build/Jamfile.v2 (original)
+++ trunk/libs/wave/samples/hannibal/build/Jamfile.v2 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -4,7 +4,7 @@
 #
 # http://www.boost.org/
 #
-# Copyright (c) 2001-2008 Hartmut Kaiser. Distributed under the Boost
+# Copyright (c) 2001-2009 Hartmut Kaiser. Distributed under the Boost
 # Software License, Version 1.0. (See accompanying file
 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 

Modified: trunk/libs/wave/samples/lexed_tokens/build/Jamfile.v2
==============================================================================
--- trunk/libs/wave/samples/lexed_tokens/build/Jamfile.v2 (original)
+++ trunk/libs/wave/samples/lexed_tokens/build/Jamfile.v2 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -4,7 +4,7 @@
 #
 # http://www.boost.org/
 #
-# Copyright (c) 2001-2008 Hartmut Kaiser. Distributed under the Boost
+# Copyright (c) 2001-2009 Hartmut Kaiser. Distributed under the Boost
 # Software License, Version 1.0. (See accompanying file
 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 

Modified: trunk/libs/wave/samples/list_includes/build/Jamfile.v2
==============================================================================
--- trunk/libs/wave/samples/list_includes/build/Jamfile.v2 (original)
+++ trunk/libs/wave/samples/list_includes/build/Jamfile.v2 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -4,7 +4,7 @@
 #
 # http://www.boost.org/
 #
-# Copyright (c) 2001-2008 Hartmut Kaiser. Distributed under the Boost
+# Copyright (c) 2001-2009 Hartmut Kaiser. Distributed under the Boost
 # Software License, Version 1.0. (See accompanying file
 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 

Modified: trunk/libs/wave/samples/list_includes/lexertl/lexertl_lexer.hpp
==============================================================================
--- trunk/libs/wave/samples/list_includes/lexertl/lexertl_lexer.hpp (original)
+++ trunk/libs/wave/samples/list_includes/lexertl/lexertl_lexer.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -32,14 +32,14 @@
 #if BOOST_WAVE_LEXERTL_USE_STATIC_TABLES != 0
 #include "wave_lexertl_tables.hpp"
 #else
-#include "lexertl/generator.hpp"
-#include "lexertl/rules.hpp"
-#include "lexertl/state_machine.hpp"
-#include "lexertl/consts.h"
-#include "lexertl/examples/serialise.hpp"
-#if BOOST_WAVE_LEXERTL_GENERATE_CPP_CODE != 0
-#include "lexertl/examples/cpp_code.hpp"
-#endif
+#include <boost/spirit/home/support/detail/lexer/generator.hpp>
+#include <boost/spirit/home/support/detail/lexer/rules.hpp>
+#include <boost/spirit/home/support/detail/lexer/state_machine.hpp>
+#include <boost/spirit/home/support/detail/lexer/consts.hpp>
+//#include "lexertl/examples/serialise.hpp>
+// #if BOOST_WAVE_LEXERTL_GENERATE_CPP_CODE != 0
+// #include "lexertl/examples/cpp_code.hpp"
+// #endif
 #endif
 
 ///////////////////////////////////////////////////////////////////////////////
@@ -100,7 +100,7 @@
     bool save (ostream& outstrm);
     
 private:
- ::lexertl::state_machine state_machine_;
+ boost::lexer::state_machine state_machine_;
     bool has_compiled_dfa_;
     
 // initialization data (regular expressions for the token definitions)
@@ -438,7 +438,7 @@
         state_machine_.clear();
         
     // register macro definitions
- ::lexertl::rules rules;
+ boost::lexer::rules rules;
         for (int k = 0; NULL != init_macro_data[k].name; ++k) {
             rules.add_macro(init_macro_data[k].name, init_macro_data[k].macro);
         }
@@ -465,8 +465,8 @@
 
     // generate minimized DFA
         try {
- ::lexertl::generator::build (rules, state_machine_);
- ::lexertl::generator::minimise_dfa (state_machine_);
+ boost::lexer::generator::build (rules, state_machine_);
+ boost::lexer::generator::minimise (state_machine_);
         }
         catch (std::runtime_error const& e) {
             string_type msg("lexertl initialization error: ");
@@ -501,7 +501,7 @@
     size_t const dfa_alphabet = state_machine_.data()._dfa_alphabet[0];
 
     size_t const* dfa = &state_machine_.data()._dfa[0]->front();
- size_t const* ptr = dfa + dfa_alphabet + ::lexertl::dfa_offset;
+ size_t const* ptr = dfa + dfa_alphabet + boost::lexer::dfa_offset;
 #else
     const std::size_t *ptr = dfa + dfa_offset;
 #endif // BOOST_WAVE_LEXERTL_USE_STATIC_TABLES == 0
@@ -518,7 +518,7 @@
         ++curr;
 
 #if BOOST_WAVE_LEXERTL_USE_STATIC_TABLES == 0
- ptr = &dfa[state * (dfa_alphabet + ::lexertl::dfa_offset)];
+ ptr = &dfa[state * (dfa_alphabet + boost::lexer::dfa_offset)];
 #else
         ptr = &dfa[state * dfa_offset];
 #endif // BOOST_WAVE_LEXERTL_USE_STATIC_TABLES == 0
@@ -551,15 +551,15 @@
 inline bool
 lexertl<Iterator, Position>::load (std::istream& instrm)
 {
-#if !defined(BOOST_WAVE_LEXERTL_GENERATE_CPP_CODE)
- std::size_t version = 0;
- ::lexertl::serialise::load_as_binary(instrm, state_machine_, version);
- if (version != (std::size_t)get_compilation_time())
- return false; // too new for us
- return instrm.good();
-#else
+// #if !defined(BOOST_WAVE_LEXERTL_GENERATE_CPP_CODE)
+// std::size_t version = 0;
+// boost::lexer::serialise::load_as_binary(instrm, state_machine_, version);
+// if (version != (std::size_t)get_compilation_time())
+// return false; // too new for us
+// return instrm.good();
+// #else
     return false; // always create the dfa when generating the C++ code
-#endif
+// #endif
 }
 
 ///////////////////////////////////////////////////////////////////////////////
@@ -568,12 +568,12 @@
 inline bool
 lexertl<Iterator, Position>::save (std::ostream& outstrm)
 {
-#if defined(BOOST_WAVE_LEXERTL_GENERATE_CPP_CODE)
- cpp_code::generate(state_machine_, outstrm);
-#else
- ::lexertl::serialise::save_as_binary(state_machine_, outstrm,
- (std::size_t)get_compilation_time());
-#endif
+// #if defined(BOOST_WAVE_LEXERTL_GENERATE_CPP_CODE)
+// cpp_code::generate(state_machine_, outstrm);
+// #else
+// boost::lexer::serialise::save_as_binary(state_machine_, outstrm,
+// (std::size_t)get_compilation_time());
+// #endif
     return outstrm.good();
 }
 #endif // #if BOOST_WAVE_LEXERTL_USE_STATIC_TABLES == 0

Modified: trunk/libs/wave/samples/list_includes/lexertl/wave_lexertl_config.hpp
==============================================================================
--- trunk/libs/wave/samples/list_includes/lexertl/wave_lexertl_config.hpp (original)
+++ trunk/libs/wave/samples/list_includes/lexertl/wave_lexertl_config.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -17,7 +17,7 @@
 // makes the code compilable even without having the lexertl library
 // available.
 #if !defined(BOOST_WAVE_LEXERTL_USE_STATIC_TABLES)
-#define BOOST_WAVE_LEXERTL_USE_STATIC_TABLES 1
+#define BOOST_WAVE_LEXERTL_USE_STATIC_TABLES 0
 #endif
 
 ///////////////////////////////////////////////////////////////////////////////

Modified: trunk/libs/wave/samples/quick_start/build/Jamfile.v2
==============================================================================
--- trunk/libs/wave/samples/quick_start/build/Jamfile.v2 (original)
+++ trunk/libs/wave/samples/quick_start/build/Jamfile.v2 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -4,7 +4,7 @@
 #
 # http://www.boost.org/
 #
-# Copyright (c) 2001-2008 Hartmut Kaiser. Distributed under the Boost
+# Copyright (c) 2001-2009 Hartmut Kaiser. Distributed under the Boost
 # Software License, Version 1.0. (See accompanying file
 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 

Modified: trunk/libs/wave/samples/real_positions/build/Jamfile.v2
==============================================================================
--- trunk/libs/wave/samples/real_positions/build/Jamfile.v2 (original)
+++ trunk/libs/wave/samples/real_positions/build/Jamfile.v2 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -4,7 +4,7 @@
 #
 # http://www.boost.org/
 #
-# Copyright (c) 2001-2008 Hartmut Kaiser. Distributed under the Boost
+# Copyright (c) 2001-2009 Hartmut Kaiser. Distributed under the Boost
 # Software License, Version 1.0. (See accompanying file
 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 

Modified: trunk/libs/wave/samples/real_positions/instantiate_re2c_lexer.cpp
==============================================================================
--- trunk/libs/wave/samples/real_positions/instantiate_re2c_lexer.cpp (original)
+++ trunk/libs/wave/samples/real_positions/instantiate_re2c_lexer.cpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -48,9 +48,11 @@
 ///////////////////////////////////////////////////////////////////////////////
 
 template struct boost::wave::cpplexer::new_lexer_gen<
- BOOST_WAVE_STRINGTYPE::iterator>;
+ BOOST_WAVE_STRINGTYPE::iterator, boost::wave::util::file_position_type,
+ lex_token<boost::wave::util::file_position_type> >;
 template struct boost::wave::cpplexer::new_lexer_gen<
- BOOST_WAVE_STRINGTYPE::const_iterator>;
+ BOOST_WAVE_STRINGTYPE::const_iterator, boost::wave::util::file_position_type,
+ lex_token<boost::wave::util::file_position_type> >;
 
 // the suffix header occurs after all of the code
 #ifdef BOOST_HAS_ABI_HEADERS

Modified: trunk/libs/wave/samples/token_statistics/build/Jamfile.v2
==============================================================================
--- trunk/libs/wave/samples/token_statistics/build/Jamfile.v2 (original)
+++ trunk/libs/wave/samples/token_statistics/build/Jamfile.v2 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -4,7 +4,7 @@
 #
 # http://www.boost.org/
 #
-# Copyright (c) 2001-2008 Hartmut Kaiser. Distributed under the Boost
+# Copyright (c) 2001-2009 Hartmut Kaiser. Distributed under the Boost
 # Software License, Version 1.0. (See accompanying file
 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 

Modified: trunk/libs/wave/samples/token_statistics/xlex/xlex_lexer.hpp
==============================================================================
--- trunk/libs/wave/samples/token_statistics/xlex/xlex_lexer.hpp (original)
+++ trunk/libs/wave/samples/token_statistics/xlex/xlex_lexer.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -68,7 +68,7 @@
         Position const &pos, boost::wave::language_support language);
     ~lexer() {}
 
- boost::wave::cpplexer::lex_token<Position> get();
+ token_type& get(token_type& t);
     void set_position(Position const &pos)
     {
         // set position has to change the file name and line number only
@@ -453,13 +453,13 @@
 ///////////////////////////////////////////////////////////////////////////////
 // get the next token from the input stream
 template <typename Iterator, typename Position>
-inline boost::wave::cpplexer::lex_token<Position>
-lexer<Iterator, Position>::get()
+inline boost::wave::cpplexer::lex_token<Position>&
+lexer<Iterator, Position>::get(boost::wave::cpplexer::lex_token<Position>& t)
 {
     using namespace boost::wave; // to import token ids to this scope
 
     if (at_eof)
- return cpplexer::lex_token<Position>(); // return T_EOI
+ return t = cpplexer::lex_token<Position>(); // return T_EOI
 
     std::string tokval;
     token_id id = xlexer.next_token(first, last, tokval);
@@ -488,10 +488,11 @@
     }
     
 #if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0
- return guards.detect_guard(cpplexer::lex_token<Position>(id, value,
+ return t = guards.detect_guard(cpplexer::lex_token<Position>(id, value,
         Position(filename, line, -1)));
 #else
- return cpplexer::lex_token<Position>(id, value, Position(filename, line, -1));
+ return t = cpplexer::lex_token<Position>(id, value,
+ Position(filename, line, -1));
 #endif
 }
 
@@ -518,7 +519,7 @@
     virtual ~xlex_functor() {}
     
 // get the next token from the input stream
- token_type get() { return lexer.get(); }
+ token_type& get(token_type& t) { return lexer.get(t); }
     void set_position(Position const &pos) { lexer.set_position(pos); }
 
 #if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0

Modified: trunk/libs/wave/samples/token_statistics/xlex_iterator.hpp
==============================================================================
--- trunk/libs/wave/samples/token_statistics/xlex_iterator.hpp (original)
+++ trunk/libs/wave/samples/token_statistics/xlex_iterator.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -18,7 +18,7 @@
 
 #include <boost/assert.hpp>
 #include <boost/shared_ptr.hpp>
-#include <boost/spirit/include/classic_multi_pass.hpp>
+#include <boost/spirit/include/support_multi_pass.hpp>
 
 #include <boost/wave/language_support.hpp>
 #include <boost/wave/util/file_position.hpp>
@@ -26,6 +26,12 @@
 
 #include "xlex_interface.hpp"
 
+#if 0 != __COMO_VERSION__ || !BOOST_WORKAROUND(BOOST_MSVC, <= 1310)
+#define BOOST_WAVE_EOF_PREFIX static
+#else
+#define BOOST_WAVE_EOF_PREFIX
+#endif
+
 ///////////////////////////////////////////////////////////////////////////////
 namespace boost {
 namespace wave {
@@ -42,36 +48,48 @@
 template <typename TokenT>
 class xlex_iterator_functor_shim
 {
+ typedef typename TokenT::position_type position_type;
+
 public:
- template <typename IteratorT>
- xlex_iterator_functor_shim(IteratorT const &first, IteratorT const &last,
- typename TokenT::position_type const &pos,
- boost::wave::language_support language)
- : functor_ptr(xlex_input_interface<TokenT>
- ::new_lexer(first, last, pos, language))
+ xlex_iterator_functor_shim()
+#if /*0 != __DECCXX_VER || */defined(__PGI)
+ : eof()
+#endif // 0 != __DECCXX_VER
     {}
 
-// interface to the boost::spirit::classic::multi_pass_policies::functor_input
+// interface to the boost::spirit::classic::iterator_policies::functor_input
 // policy
     typedef TokenT result_type;
 
- /*static*/ result_type const eof;
+ BOOST_WAVE_EOF_PREFIX result_type const eof;
+ typedef xlex_iterator_functor_shim unique;
+ typedef lex_input_interface<TokenT>* shared;
     
- result_type operator()()
+ template <typename MultiPass>
+ static result_type& get_next(MultiPass& mp, result_type& result)
     {
- BOOST_ASSERT(0 != functor_ptr.get());
- return functor_ptr->get();
+ return mp.shared->ftor->get(result);
     }
- void set_position(typename TokenT::position_type const &pos)
+
+ // this will be called whenever the last reference to a multi_pass will
+ // be released
+ template <typename MultiPass>
+ static void destroy(MultiPass& mp)
+ {
+ delete mp.shared->ftor;
+ }
+
+ template <typename MultiPass>
+ static void set_position(MultiPass& mp, position_type const &pos)
     {
- BOOST_ASSERT(0 != functor_ptr.get());
- functor_ptr->set_position(pos);
+ mp.shared->ftor->set_position(pos);
     }
     
 #if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0
- bool has_include_guards(std::string& guard_name) const
+ template <typename MultiPass>
+ static bool has_include_guards(MultiPass& mp, std::string& guard_name)
     {
- return functor_ptr->has_include_guards(guard_name);
+ return mp.shared->ftor->has_include_guards(guard_name);
     }
 #endif
 
@@ -79,12 +97,14 @@
     boost::shared_ptr<lex_input_interface<TokenT> > functor_ptr;
 };
 
+#if 0 != __COMO_VERSION__ || !BOOST_WORKAROUND(BOOST_MSVC, <= 1310)
 ///////////////////////////////////////////////////////////////////////////////
 // eof token
-//template <typename TokenT>
-//typename xlex_iterator_functor_shim<TokenT>::result_type const
-// xlex_iterator_functor_shim<TokenT>::eof =
-// typename xlex_iterator_functor_shim<TokenT>::result_type();
+template <typename TokenT>
+typename xlex_iterator_functor_shim<TokenT>::result_type const
+ xlex_iterator_functor_shim<TokenT>::eof =
+ typename xlex_iterator_functor_shim<TokenT>::result_type();
+#endif // 0 != __COMO_VERSION__
 
 ///////////////////////////////////////////////////////////////////////////////
 } // namespace impl
@@ -110,18 +130,45 @@
 //
 ///////////////////////////////////////////////////////////////////////////////
 
+///////////////////////////////////////////////////////////////////////////////
+// Divide the given functor type into its components (unique and shared)
+// and build a std::pair from these parts
+template <typename FunctorData>
+struct make_multi_pass
+{
+ typedef
+ std::pair<typename FunctorData::unique, typename FunctorData::shared>
+ functor_data_type;
+ typedef typename FunctorData::result_type result_type;
+
+ typedef boost::spirit::iterator_policies::split_functor_input input_policy;
+ typedef boost::spirit::iterator_policies::ref_counted ownership_policy;
+#if defined(BOOST_WAVE_DEBUG)
+ typedef boost::spirit::iterator_policies::buf_id_check check_policy;
+#else
+ typedef boost::spirit::iterator_policies::no_check check_policy;
+#endif
+ typedef boost::spirit::iterator_policies::split_std_deque storage_policy;
+
+ typedef boost::spirit::iterator_policies::default_policy<
+ ownership_policy, check_policy, input_policy, storage_policy>
+ policy_type;
+ typedef boost::spirit::multi_pass<functor_data_type, policy_type> type;
+};
+
+///////////////////////////////////////////////////////////////////////////////
 template <typename TokenT>
 class xlex_iterator
-: public boost::spirit::classic::multi_pass<
- impl::xlex_iterator_functor_shim<TokenT>,
- boost::wave::util::functor_input
- >
+: public make_multi_pass<impl::xlex_iterator_functor_shim<TokenT> >::type
 {
     typedef impl::xlex_iterator_functor_shim<TokenT> input_policy_type;
- typedef
- boost::spirit::classic::multi_pass<input_policy_type,
- boost::wave::util::functor_input>
- base_type;
+
+ typedef typename make_multi_pass<input_policy_type>::type base_type;
+ typedef typename make_multi_pass<input_policy_type>::functor_data_type
+ functor_data_type;
+
+ typedef typename input_policy_type::unique unique_functor_type;
+ typedef typename input_policy_type::shared shared_functor_type;
     
 public:
     typedef TokenT token_type;
@@ -133,7 +180,13 @@
     xlex_iterator(IteratorT const &first, IteratorT const &last,
             typename TokenT::position_type const &pos,
             boost::wave::language_support language)
- : base_type(input_policy_type(first, last, pos, language))
+ : base_type(
+ functor_data_type(
+ unique_functor_type(),
+ xlex_input_interface<TokenT>
+ ::new_lexer(first, last, pos, language)
+ )
+ )
     {}
 
     void set_position(typename TokenT::position_type const &pos)
@@ -141,12 +194,12 @@
         typedef typename token_type::position_type position_type;
         
     // set the new position in the current token
- token_type const& currtoken = base_type::get_input();
+ token_type& currtoken = this->base_type::dereference(*this);
     position_type currpos = currtoken.get_position();
     
         currpos.set_file(pos.get_file());
         currpos.set_line(pos.get_line());
- base_type::get_input().set_position(currpos);
+ currtoken.set_position(currpos);
         
     // set the new position for future tokens as well
         if (token_type::string_type::npos !=
@@ -154,7 +207,7 @@
         {
             currpos.set_line(pos.get_line() + 1);
         }
- base_type::get_functor().set_position(currpos);
+ unique_functor_type::set_position(*this, currpos);
     }
 
 #if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0
@@ -163,7 +216,7 @@
     // completely
     bool has_include_guards(std::string& guard_name) const
     {
- return base_type::get_functor().has_include_guards(guard_name);
+ return unique_functor_type::has_include_guards(*this, guard_name);
     }
 #endif
 };
@@ -174,4 +227,6 @@
 } // namespace wave
 } // namespace boost
 
+#undef BOOST_WAVE_EOF_PREFIX
+
 #endif // !defined(XLEX_ITERATOR_HPP)

Modified: trunk/libs/wave/samples/waveidl/build/Jamfile.v2
==============================================================================
--- trunk/libs/wave/samples/waveidl/build/Jamfile.v2 (original)
+++ trunk/libs/wave/samples/waveidl/build/Jamfile.v2 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -4,7 +4,7 @@
 #
 # http://www.boost.org/
 #
-# Copyright (c) 2001-2008 Hartmut Kaiser. Distributed under the Boost
+# Copyright (c) 2001-2009 Hartmut Kaiser. Distributed under the Boost
 # Software License, Version 1.0. (See accompanying file
 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 

Modified: trunk/libs/wave/samples/waveidl/idllexer/idl.re
==============================================================================
--- trunk/libs/wave/samples/waveidl/idllexer/idl.re (original)
+++ trunk/libs/wave/samples/waveidl/idllexer/idl.re 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -5,7 +5,7 @@
 
     http://www.boost.org/
 
- Copyright (c) 2001-2008 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2009 Hartmut Kaiser. Distributed under the Boost
     Software License, Version 1.0. (See accompanying file
     LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 =============================================================================*/

Modified: trunk/libs/wave/samples/waveidl/idllexer/idl_lex_interface.hpp
==============================================================================
--- trunk/libs/wave/samples/waveidl/idllexer/idl_lex_interface.hpp (original)
+++ trunk/libs/wave/samples/waveidl/idllexer/idl_lex_interface.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -15,7 +15,7 @@
 
 #include <boost/wave/util/file_position.hpp>
 #include <boost/wave/language_support.hpp>
-#include <boost/wave/cpplexer/cpp_lex_interface.hpp>
+#include <boost/wave/cpplexer/cpp_lex_interface_generator.hpp>
 
 ///////////////////////////////////////////////////////////////////////////////
 namespace boost {

Modified: trunk/libs/wave/samples/waveidl/idllexer/idl_lex_iterator.hpp
==============================================================================
--- trunk/libs/wave/samples/waveidl/idllexer/idl_lex_iterator.hpp (original)
+++ trunk/libs/wave/samples/waveidl/idllexer/idl_lex_iterator.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -19,7 +19,7 @@
 
 #include <boost/assert.hpp>
 #include <boost/shared_ptr.hpp>
-#include <boost/spirit/include/classic_multi_pass.hpp>
+#include <boost/spirit/include/support_multi_pass.hpp>
 
 #include <boost/wave/language_support.hpp>
 #include <boost/wave/util/file_position.hpp>
@@ -27,7 +27,7 @@
 
 #include "idl_lex_interface.hpp"
 
-#if 0 != __COMO_VERSION__
+#if 0 != __COMO_VERSION__ || !BOOST_WORKAROUND(BOOST_MSVC, <= 1310)
 #define BOOST_WAVE_EOF_PREFIX static
 #else
 #define BOOST_WAVE_EOF_PREFIX
@@ -48,43 +48,54 @@
 template <typename TokenT>
 class lex_iterator_functor_shim
 {
- typedef lex_input_interface_generator<TokenT> lex_input_interface_type;
+ typedef typename TokenT::position_type position_type;
         
 public:
- template <typename IteratorT>
- lex_iterator_functor_shim(IteratorT const &first, IteratorT const &last,
- typename TokenT::position_type const &pos,
- boost::wave::language_support language)
- : functor_ptr(lex_input_interface_type::new_lexer(first, last, pos, language))
+ lex_iterator_functor_shim()
+#if /*0 != __DECCXX_VER || */defined(__PGI)
+ : eof()
+#endif // 0 != __DECCXX_VER
     {}
 
-// interface to the boost::spirit::classic::multi_pass_policies::functor_input
+// interface to the boost::spirit::classic::iterator_policies::functor_input
 // policy
     typedef TokenT result_type;
 
     BOOST_WAVE_EOF_PREFIX result_type const eof;
+ typedef lex_iterator_functor_shim unique;
+ typedef cpplexer::lex_input_interface<TokenT>* shared;
+
+ template <typename MultiPass>
+ static result_type& get_next(MultiPass& mp, result_type& result)
+ {
+ return mp.shared->ftor->get(result);
+ }
     
- result_type operator()()
+ // this will be called whenever the last reference to a multi_pass will
+ // be released
+ template <typename MultiPass>
+ static void destroy(MultiPass& mp)
     {
- BOOST_ASSERT(0 != functor_ptr.get());
- return functor_ptr->get();
+ delete mp.shared->ftor;
     }
- void set_position(typename TokenT::position_type const &pos)
+
+ template <typename MultiPass>
+ static void set_position(MultiPass& mp, position_type const &pos)
     {
- BOOST_ASSERT(0 != functor_ptr.get());
- functor_ptr->set_position(pos);
+ mp.shared->ftor->set_position(pos);
     }
     
 private:
     boost::shared_ptr<cpplexer::lex_input_interface<TokenT> > functor_ptr;
 };
 
-#if 0 != __COMO_VERSION__
+#if 0 != __COMO_VERSION__ || !BOOST_WORKAROUND(BOOST_MSVC, <= 1310)
 ///////////////////////////////////////////////////////////////////////////////
 // eof token
-template <typename LexT>
-typename lex_iterator_functor_shim<LexT>::result_type const
- lex_iterator_functor_shim<LexT>::eof;
+template <typename TokenT>
+typename lex_iterator_functor_shim<TokenT>::result_type const
+ lex_iterator_functor_shim<TokenT>::eof =
+ typename lex_iterator_functor_shim<TokenT>::result_type();
 #endif // 0 != __COMO_VERSION__
 
 ///////////////////////////////////////////////////////////////////////////////
@@ -109,19 +120,45 @@
 //
 ///////////////////////////////////////////////////////////////////////////////
 
+///////////////////////////////////////////////////////////////////////////////
+// Divide the given functor type into its components (unique and shared)
+// and build a std::pair from these parts
+template <typename FunctorData>
+struct make_multi_pass
+{
+ typedef
+ std::pair<typename FunctorData::unique, typename FunctorData::shared>
+ functor_data_type;
+ typedef typename FunctorData::result_type result_type;
+
+ typedef boost::spirit::iterator_policies::split_functor_input input_policy;
+ typedef boost::spirit::iterator_policies::ref_counted ownership_policy;
+#if defined(BOOST_WAVE_DEBUG)
+ typedef boost::spirit::iterator_policies::buf_id_check check_policy;
+#else
+ typedef boost::spirit::iterator_policies::no_check check_policy;
+#endif
+ typedef boost::spirit::iterator_policies::split_std_deque storage_policy;
+
+ typedef boost::spirit::iterator_policies::default_policy<
+ ownership_policy, check_policy, input_policy, storage_policy>
+ policy_type;
+ typedef boost::spirit::multi_pass<functor_data_type, policy_type> type;
+};
+
+///////////////////////////////////////////////////////////////////////////////
 template <typename TokenT>
 class lex_iterator
-: public boost::spirit::classic::multi_pass<
- impl::lex_iterator_functor_shim<TokenT>,
- boost::wave::util::functor_input
- >
+: public make_multi_pass<impl::lex_iterator_functor_shim<TokenT> >::type
 {
     typedef impl::lex_iterator_functor_shim<TokenT> input_policy_type;
- typedef
- boost::spirit::classic::multi_pass<input_policy_type,
- boost::wave::util::functor_input>
- base_type;
- typedef lex_iterator<TokenT> self_type;
+
+ typedef typename make_multi_pass<input_policy_type>::type base_type;
+ typedef typename make_multi_pass<input_policy_type>::functor_data_type
+ functor_data_type;
+
+ typedef typename input_policy_type::unique unique_functor_type;
+ typedef typename input_policy_type::shared shared_functor_type;
     
 public:
     typedef TokenT token_type;
@@ -133,7 +170,13 @@
     lex_iterator(IteratorT const &first, IteratorT const &last,
             typename TokenT::position_type const &pos,
             boost::wave::language_support language)
- : base_type(input_policy_type(first, last, pos, language))
+ : base_type(
+ functor_data_type(
+ unique_functor_type(),
+ cpplexer::lex_input_interface_generator<TokenT>
+ ::new_lexer(first, last, pos, language)
+ )
+ )
     {}
 
     void set_position(typename TokenT::position_type const &pos)
@@ -141,13 +184,14 @@
         typedef typename TokenT::position_type position_type;
         
         // set the new position in the current token
- position_type currpos = base_type::get_input().get_position();
+ token_type& currtoken = this->base_type::dereference(*this);
+ position_type currpos = currtoken.get_position();
         currpos.set_file(pos.get_file());
         currpos.set_line(pos.get_line());
- base_type::get_input().set_position(currpos);
+ currtoken.set_position(currpos);
         
         // set the new position for future tokens as well
- base_type::get_functor().set_position(pos);
+ unique_functor_type::set_position(*this, currpos);
     }
 
 #if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0
@@ -161,4 +205,6 @@
 } // namespace wave
 } // namespace boost
 
+#undef BOOST_WAVE_EOF_PREFIX
+
 #endif // !defined(IDL_LEX_ITERATOR_HPP_7926F865_E02F_4950_9EB5_5F453C9FF953_INCLUDED)

Modified: trunk/libs/wave/samples/waveidl/idllexer/idl_re.cpp
==============================================================================
--- trunk/libs/wave/samples/waveidl/idllexer/idl_re.cpp (original)
+++ trunk/libs/wave/samples/waveidl/idllexer/idl_re.cpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.2 on Thu Oct 09 21:18:08 2008 */
+/* Generated by re2c 0.13.5 on Fri May 22 17:28:34 2009 */
 #line 1 "idl.re"
 /*=============================================================================
     Boost.Wave: A Standard compliant C++ preprocessor library
@@ -439,12 +439,12 @@
     yych = *YYCURSOR;
     switch (yych) {
     case 0x00: goto yy69;
- case 0x09:
- case 0x0B:
- case 0x0C:
+ case '\t':
+ case '\v':
+ case '\f':
     case ' ': goto yy64;
- case 0x0A: goto yy66;
- case 0x0D: goto yy68;
+ case '\n': goto yy66;
+ case '\r': goto yy68;
     case '!': goto yy45;
     case '"': goto yy63;
     case '#': goto yy15;
@@ -584,8 +584,8 @@
     yych = *(YYMARKER = ++YYCURSOR);
     if (yych <= 'e') {
         if (yych <= '"') {
- if (yych <= 0x09) {
- if (yych >= 0x09) goto yy239;
+ if (yych <= '\t') {
+ if (yych >= '\t') goto yy239;
             } else {
                 if (yych == ' ') goto yy239;
             }
@@ -848,9 +848,9 @@
 yy62:
     yyaccept = 4;
     yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy121;
- if (yych <= 0x0A) goto yy58;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy121;
+ if (yych <= '\n') goto yy58;
         goto yy121;
     } else {
         if (yych <= 0x1F) goto yy58;
@@ -860,11 +860,11 @@
 yy63:
     yyaccept = 4;
     yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy76;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy76;
         goto yy58;
     } else {
- if (yych <= 0x0C) goto yy76;
+ if (yych <= '\f') goto yy76;
         if (yych <= 0x1F) goto yy58;
         goto yy76;
     }
@@ -887,7 +887,7 @@
 #line 888 "idl_re.cpp"
 yy68:
     yych = *++YYCURSOR;
- if (yych == 0x0A) goto yy72;
+ if (yych == '\n') goto yy72;
     goto yy67;
 yy69:
     ++YYCURSOR;
@@ -915,7 +915,7 @@
     goto yy67;
 yy73:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy74:
     if (yybm[256+yych] & 2) {
@@ -924,7 +924,7 @@
     goto yy65;
 yy75:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy76:
     if (yybm[256+yych] & 4) {
@@ -987,7 +987,7 @@
     }
 yy78:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 4) {
         goto yy75;
@@ -997,7 +997,7 @@
     if (yych <= '[') goto yy91;
 yy79:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '`') {
         if (yych <= '7') {
@@ -1050,7 +1050,7 @@
 #line 1051 "idl_re.cpp"
 yy82:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1064,7 +1064,7 @@
     }
 yy83:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1078,7 +1078,7 @@
     }
 yy84:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 4) {
         goto yy75;
@@ -1089,7 +1089,7 @@
     goto yy79;
 yy85:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 8) {
         goto yy88;
@@ -1097,14 +1097,14 @@
     goto yy77;
 yy86:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '"') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy75;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy75;
             goto yy77;
         } else {
- if (yych <= 0x0C) goto yy75;
+ if (yych <= '\f') goto yy75;
             if (yych <= 0x1F) goto yy77;
             if (yych <= '!') goto yy75;
             goto yy80;
@@ -1120,7 +1120,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 4) {
         goto yy75;
@@ -1131,17 +1131,17 @@
     goto yy79;
 yy88:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 8) {
         goto yy88;
     }
     if (yych <= '!') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy75;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy75;
             goto yy77;
         } else {
- if (yych <= 0x0C) goto yy75;
+ if (yych <= '\f') goto yy75;
             if (yych <= 0x1F) goto yy77;
             goto yy75;
         }
@@ -1157,7 +1157,7 @@
     }
 yy90:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 4) {
         goto yy75;
@@ -1167,17 +1167,17 @@
     if (yych >= '\\') goto yy79;
 yy91:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 16) {
         goto yy91;
     }
     if (yych <= '!') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy75;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy75;
             goto yy77;
         } else {
- if (yych <= 0x0C) goto yy75;
+ if (yych <= '\f') goto yy75;
             if (yych <= 0x1F) goto yy77;
             goto yy75;
         }
@@ -1192,15 +1192,15 @@
     }
 yy93:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy93;
     }
     if (yych <= '7') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy75;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy75;
+ if (yych <= '\n') goto yy77;
             goto yy75;
         } else {
             if (yych <= '!') {
@@ -1227,12 +1227,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy75;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy75;
+ if (yych <= '\n') goto yy77;
             goto yy75;
         } else {
             if (yych <= '!') {
@@ -1262,12 +1262,12 @@
     }
 yy96:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy75;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy75;
+ if (yych <= '\n') goto yy77;
             goto yy75;
         } else {
             if (yych <= '!') {
@@ -1298,7 +1298,7 @@
 yy97:
     yyaccept = 6;
     YYMARKER = ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 4) {
         goto yy75;
@@ -1309,7 +1309,7 @@
     goto yy79;
 yy98:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 4) {
         goto yy75;
@@ -1318,17 +1318,17 @@
     if (yych <= '"') goto yy80;
     if (yych >= '\\') goto yy79;
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 16) {
         goto yy91;
     }
     if (yych <= '!') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy75;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy75;
             goto yy77;
         } else {
- if (yych <= 0x0C) goto yy75;
+ if (yych <= '\f') goto yy75;
             if (yych <= 0x1F) goto yy77;
             goto yy75;
         }
@@ -1344,12 +1344,12 @@
     }
 yy100:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy75;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy75;
+ if (yych <= '\n') goto yy77;
             goto yy75;
         } else {
             if (yych <= '!') {
@@ -1375,12 +1375,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy75;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy75;
+ if (yych <= '\n') goto yy77;
             goto yy75;
         } else {
             if (yych <= '!') {
@@ -1406,12 +1406,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy75;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy75;
+ if (yych <= '\n') goto yy77;
             goto yy75;
         } else {
             if (yych <= '!') {
@@ -1437,12 +1437,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy75;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy75;
+ if (yych <= '\n') goto yy77;
             goto yy75;
         } else {
             if (yych <= '!') {
@@ -1468,12 +1468,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy75;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy75;
+ if (yych <= '\n') goto yy77;
             goto yy75;
         } else {
             if (yych <= '!') {
@@ -1499,12 +1499,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy75;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy75;
+ if (yych <= '\n') goto yy77;
             goto yy75;
         } else {
             if (yych <= '!') {
@@ -1530,7 +1530,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 4) {
         goto yy75;
@@ -1541,12 +1541,12 @@
     goto yy79;
 yy107:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy75;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy75;
+ if (yych <= '\n') goto yy77;
             goto yy75;
         } else {
             if (yych <= '!') {
@@ -1572,12 +1572,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy75;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy75;
+ if (yych <= '\n') goto yy77;
             goto yy75;
         } else {
             if (yych <= '!') {
@@ -1603,7 +1603,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 4) {
         goto yy75;
@@ -1614,7 +1614,7 @@
     goto yy79;
 yy110:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1626,7 +1626,7 @@
     }
 yy111:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1638,7 +1638,7 @@
     }
 yy112:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1650,7 +1650,7 @@
     }
 yy113:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1662,7 +1662,7 @@
     }
 yy114:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1674,7 +1674,7 @@
     }
 yy115:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1686,7 +1686,7 @@
     }
 yy116:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1700,7 +1700,7 @@
     }
 yy117:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1712,7 +1712,7 @@
     }
 yy118:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1724,7 +1724,7 @@
     }
 yy119:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1738,7 +1738,7 @@
     }
 yy120:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy121:
     if (yybm[256+yych] & 64) {
@@ -1749,7 +1749,7 @@
     if (yych >= '\\') goto yy123;
 yy122:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 64) {
         goto yy120;
@@ -1759,7 +1759,7 @@
     if (yych <= '[') goto yy135;
 yy123:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '`') {
         if (yych <= '7') {
@@ -1804,7 +1804,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1818,7 +1818,7 @@
     }
 yy125:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1832,7 +1832,7 @@
     }
 yy126:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 64) {
         goto yy120;
@@ -1843,7 +1843,7 @@
     goto yy123;
 yy127:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -1857,14 +1857,14 @@
     }
 yy128:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '\'') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy120;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy120;
             goto yy77;
         } else {
- if (yych <= 0x0C) goto yy120;
+ if (yych <= '\f') goto yy120;
             if (yych <= 0x1F) goto yy77;
             if (yych <= '&') goto yy120;
             goto yy130;
@@ -1880,7 +1880,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 64) {
         goto yy120;
@@ -1897,12 +1897,12 @@
 #line 1898 "idl_re.cpp"
 yy132:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy120;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy120;
+ if (yych <= '\n') goto yy77;
             goto yy120;
         } else {
             if (yych <= '&') {
@@ -1932,7 +1932,7 @@
     }
 yy134:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 64) {
         goto yy120;
@@ -1942,14 +1942,14 @@
     if (yych >= '\\') goto yy123;
 yy135:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '\'') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy120;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy120;
             goto yy77;
         } else {
- if (yych <= 0x0C) goto yy120;
+ if (yych <= '\f') goto yy120;
             if (yych <= 0x1F) goto yy77;
             if (yych <= '&') goto yy120;
             goto yy130;
@@ -1965,16 +1965,16 @@
     }
 yy137:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '>') {
         if (yych <= 0x1F) {
- if (yych <= 0x09) {
+ if (yych <= '\t') {
                 if (yych <= 0x08) goto yy77;
                 goto yy120;
             } else {
- if (yych <= 0x0A) goto yy77;
- if (yych <= 0x0C) goto yy120;
+ if (yych <= '\n') goto yy77;
+ if (yych <= '\f') goto yy120;
                 goto yy77;
             }
         } else {
@@ -2007,12 +2007,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy120;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy120;
+ if (yych <= '\n') goto yy77;
             goto yy120;
         } else {
             if (yych <= '&') {
@@ -2042,12 +2042,12 @@
     }
 yy140:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy120;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy120;
+ if (yych <= '\n') goto yy77;
             goto yy120;
         } else {
             if (yych <= '&') {
@@ -2078,7 +2078,7 @@
 yy141:
     yyaccept = 7;
     YYMARKER = ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 64) {
         goto yy120;
@@ -2089,7 +2089,7 @@
     goto yy123;
 yy142:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 64) {
         goto yy120;
@@ -2098,14 +2098,14 @@
     if (yych <= '\'') goto yy130;
     if (yych >= '\\') goto yy123;
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '\'') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy120;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy120;
             goto yy77;
         } else {
- if (yych <= 0x0C) goto yy120;
+ if (yych <= '\f') goto yy120;
             if (yych <= 0x1F) goto yy77;
             if (yych <= '&') goto yy120;
             goto yy130;
@@ -2122,12 +2122,12 @@
     }
 yy144:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy120;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy120;
+ if (yych <= '\n') goto yy77;
             goto yy120;
         } else {
             if (yych <= '&') {
@@ -2153,12 +2153,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy120;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy120;
+ if (yych <= '\n') goto yy77;
             goto yy120;
         } else {
             if (yych <= '&') {
@@ -2184,12 +2184,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy120;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy120;
+ if (yych <= '\n') goto yy77;
             goto yy120;
         } else {
             if (yych <= '&') {
@@ -2215,12 +2215,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy120;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy120;
+ if (yych <= '\n') goto yy77;
             goto yy120;
         } else {
             if (yych <= '&') {
@@ -2246,12 +2246,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy120;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy120;
+ if (yych <= '\n') goto yy77;
             goto yy120;
         } else {
             if (yych <= '&') {
@@ -2277,12 +2277,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy120;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy120;
+ if (yych <= '\n') goto yy77;
             goto yy120;
         } else {
             if (yych <= '&') {
@@ -2308,7 +2308,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 64) {
         goto yy120;
@@ -2319,12 +2319,12 @@
     goto yy123;
 yy151:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy120;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy120;
+ if (yych <= '\n') goto yy77;
             goto yy120;
         } else {
             if (yych <= '&') {
@@ -2350,12 +2350,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy120;
- if (yych <= 0x0A) goto yy77;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy120;
+ if (yych <= '\n') goto yy77;
             goto yy120;
         } else {
             if (yych <= '&') {
@@ -2381,7 +2381,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 64) {
         goto yy120;
@@ -2392,7 +2392,7 @@
     goto yy123;
 yy154:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2404,7 +2404,7 @@
     }
 yy155:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2416,7 +2416,7 @@
     }
 yy156:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2428,7 +2428,7 @@
     }
 yy157:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2440,7 +2440,7 @@
     }
 yy158:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2452,7 +2452,7 @@
     }
 yy159:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2464,7 +2464,7 @@
     }
 yy160:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2478,7 +2478,7 @@
     }
 yy161:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2490,7 +2490,7 @@
     }
 yy162:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2502,7 +2502,7 @@
     }
 yy163:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2874,7 +2874,7 @@
 yy201:
     yyaccept = 0;
     YYMARKER = ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy202:
     if (yybm[0+yych] & 2) {
@@ -2884,24 +2884,24 @@
     if (yych != '\\') goto yy5;
 yy203:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == 'U') goto yy207;
     if (yych == 'u') goto yy206;
     goto yy77;
 yy204:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych != '?') goto yy77;
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == '/') goto yy203;
     goto yy77;
 yy206:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2915,7 +2915,7 @@
     }
 yy207:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2927,7 +2927,7 @@
     }
 yy208:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2939,7 +2939,7 @@
     }
 yy209:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2951,7 +2951,7 @@
     }
 yy210:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2963,7 +2963,7 @@
     }
 yy211:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2975,7 +2975,7 @@
     }
 yy212:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2987,7 +2987,7 @@
     }
 yy213:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -2999,7 +2999,7 @@
     }
 yy214:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -3013,7 +3013,7 @@
     }
 yy215:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -3025,7 +3025,7 @@
     }
 yy216:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -3037,7 +3037,7 @@
     }
 yy217:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy77;
@@ -3156,7 +3156,7 @@
     }
 yy240:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == '*') goto yy330;
     goto yy77;
@@ -3325,8 +3325,8 @@
     if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
     yych = *YYCURSOR;
     if (yych <= '!') {
- if (yych <= 0x09) {
- if (yych >= 0x09) goto yy300;
+ if (yych <= '\t') {
+ if (yych >= '\t') goto yy300;
         } else {
             if (yych == ' ') goto yy300;
         }
@@ -3344,7 +3344,7 @@
 #line 3345 "idl_re.cpp"
 yy303:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == '*') goto yy314;
     goto yy77;
@@ -3358,7 +3358,7 @@
     goto yy307;
 yy306:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy307:
     if (yybm[0+yych] & 8) {
@@ -3371,7 +3371,7 @@
 #line 3372 "idl_re.cpp"
 yy310:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy311:
     if (yybm[0+yych] & 16) {
@@ -3384,45 +3384,45 @@
 #line 3385 "idl_re.cpp"
 yy314:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 32) {
         goto yy314;
     }
- if (yych == 0x0D) goto yy316;
+ if (yych == '\r') goto yy316;
     if (yych <= ')') goto yy77;
     goto yy318;
 yy316:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 32) {
         goto yy314;
     }
- if (yych == 0x0D) goto yy316;
+ if (yych == '\r') goto yy316;
     if (yych <= ')') goto yy77;
 yy318:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 128) {
         goto yy318;
     }
- if (yych <= 0x0D) {
+ if (yych <= '\r') {
         if (yych <= 0x08) goto yy77;
- if (yych <= 0x0C) goto yy314;
+ if (yych <= '\f') goto yy314;
     } else {
         if (yych <= 0x1F) goto yy77;
         if (yych == '/') goto yy300;
         goto yy314;
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 32) {
         goto yy314;
     }
- if (yych == 0x0D) goto yy316;
+ if (yych == '\r') goto yy316;
     if (yych <= ')') goto yy77;
     goto yy318;
 yy321:
@@ -3449,11 +3449,11 @@
 #line 3450 "idl_re.cpp"
 yy330:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
- if (yych <= 0x0D) {
+ if (yych <= '\r') {
         if (yych <= 0x08) goto yy77;
- if (yych <= 0x0C) goto yy330;
+ if (yych <= '\f') goto yy330;
     } else {
         if (yych <= 0x1F) goto yy77;
         if (yych == '*') goto yy334;
@@ -3461,11 +3461,11 @@
     }
 yy332:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
- if (yych <= 0x0D) {
+ if (yych <= '\r') {
         if (yych <= 0x08) goto yy77;
- if (yych <= 0x0C) goto yy330;
+ if (yych <= '\f') goto yy330;
         goto yy332;
     } else {
         if (yych <= 0x1F) goto yy77;
@@ -3473,11 +3473,11 @@
     }
 yy334:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= 0x1F) {
         if (yych <= 0x08) goto yy77;
- if (yych <= 0x0C) goto yy330;
+ if (yych <= '\f') goto yy330;
         if (yych >= 0x0E) goto yy77;
     } else {
         if (yych <= '*') {
@@ -3489,11 +3489,11 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
- if (yych <= 0x0D) {
+ if (yych <= '\r') {
         if (yych <= 0x08) goto yy77;
- if (yych <= 0x0C) goto yy330;
+ if (yych <= '\f') goto yy330;
         goto yy332;
     } else {
         if (yych <= 0x1F) goto yy77;
@@ -3585,17 +3585,17 @@
     YYCTYPE yych;
     if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
     yych = *YYCURSOR;
- if (yych <= 0x0C) {
+ if (yych <= '\f') {
         if (yych <= 0x08) {
             if (yych <= 0x00) goto yy366;
             goto yy368;
         } else {
- if (yych == 0x0A) goto yy362;
+ if (yych == '\n') goto yy362;
             goto yy365;
         }
     } else {
         if (yych <= 0x1F) {
- if (yych <= 0x0D) goto yy364;
+ if (yych <= '\r') goto yy364;
             goto yy368;
         } else {
             if (yych != '*') goto yy365;
@@ -3620,7 +3620,7 @@
 #line 3621 "idl_re.cpp"
 yy364:
     yych = *++YYCURSOR;
- if (yych == 0x0A) goto yy370;
+ if (yych == '\n') goto yy370;
     goto yy363;
 yy365:
     yych = *++YYCURSOR;
@@ -3685,14 +3685,14 @@
     YYCTYPE yych;
     if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
     yych = *YYCURSOR;
- if (yych <= 0x0A) {
+ if (yych <= '\n') {
         if (yych <= 0x00) goto yy381;
         if (yych <= 0x08) goto yy375;
- if (yych <= 0x09) goto yy379;
+ if (yych <= '\t') goto yy379;
         goto yy376;
     } else {
- if (yych <= 0x0C) goto yy379;
- if (yych <= 0x0D) goto yy378;
+ if (yych <= '\f') goto yy379;
+ if (yych <= '\r') goto yy378;
         if (yych >= ' ') goto yy379;
     }
 yy375:
@@ -3709,7 +3709,7 @@
 #line 3710 "idl_re.cpp"
 yy378:
     yych = *++YYCURSOR;
- if (yych == 0x0A) goto yy383;
+ if (yych == '\n') goto yy383;
     goto yy377;
 yy379:
     ++YYCURSOR;

Modified: trunk/libs/wave/samples/waveidl/idllexer/idl_re2c_lexer.hpp
==============================================================================
--- trunk/libs/wave/samples/waveidl/idllexer/idl_re2c_lexer.hpp (original)
+++ trunk/libs/wave/samples/waveidl/idllexer/idl_re2c_lexer.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -68,7 +68,7 @@
         PositionT const &pos, boost::wave::language_support language);
     ~lexer();
 
- boost::wave::cpplexer::lex_token<PositionT> get();
+ token_type& get(token_type& t);
     void set_position(PositionT const &pos)
     {
         // set position has to change the file name and line number only
@@ -127,13 +127,13 @@
 ///////////////////////////////////////////////////////////////////////////////
 // get the next token from the input stream
 template <typename IteratorT, typename PositionT>
-inline boost::wave::cpplexer::lex_token<PositionT>
-lexer<IteratorT, PositionT>::get()
+inline boost::wave::cpplexer::lex_token<PositionT>&
+lexer<IteratorT, PositionT>::get(boost::wave::cpplexer::lex_token<PositionT>& t)
 {
     using namespace boost::wave; // to import token ids to this scope
 
     if (at_eof)
- return boost::wave::cpplexer::lex_token<PositionT>(); // return T_EOI
+ return t = boost::wave::cpplexer::lex_token<PositionT>(); // return T_EOI
 
     token_id id = token_id(scan(&scanner));
     string_type value((char const *)scanner.tok, scanner.cur-scanner.tok);
@@ -158,7 +158,7 @@
         at_eof = true;
         value.clear();
     }
- return boost::wave::cpplexer::lex_token<PositionT>(id, value,
+ return t = boost::wave::cpplexer::lex_token<PositionT>(id, value,
         PositionT(filename, scanner.line, -1));
 }
 
@@ -209,7 +209,7 @@
     virtual ~lex_functor() {}
     
 // get the next token from the input stream
- token_type get() { return lexer.get(); }
+ token_type& get(token_type& t) { return lexer.get(t); }
     void set_position(PositionT const &pos)
     { lexer.set_position(pos); }
 #if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0

Modified: trunk/libs/wave/src/cpplexer/re2clex/cpp_re.inc
==============================================================================
--- trunk/libs/wave/src/cpplexer/re2clex/cpp_re.inc (original)
+++ trunk/libs/wave/src/cpplexer/re2clex/cpp_re.inc 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.2 on Fri Apr 04 14:19:15 2008 */
+/* Generated by re2c 0.13.5 on Fri May 22 14:32:01 2009 */
 #line 1 "cpp.re"
 /*=============================================================================
     Boost.Wave: A Standard compliant C++ preprocessor library
@@ -124,11 +124,11 @@
     case 0x1D:
     case 0x1E:
     case 0x1F: goto yy91;
- case 0x09:
- case 0x0B:
- case 0x0C: goto yy82;
- case 0x0A: goto yy85;
- case 0x0D: goto yy87;
+ case '\t':
+ case '\v':
+ case '\f': goto yy82;
+ case '\n': goto yy85;
+ case '\r': goto yy87;
     case ' ': goto yy84;
     case '!': goto yy68;
     case '"': goto yy81;
@@ -503,10 +503,10 @@
     yych = *(YYMARKER = ++YYCURSOR);
     if (yych <= 'c') {
         if (yych <= ' ') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy261;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy261;
             } else {
- if (yych <= 0x0C) goto yy261;
+ if (yych <= '\f') goto yy261;
                 if (yych >= ' ') goto yy261;
             }
         } else {
@@ -675,9 +675,9 @@
 yy80:
     yyaccept = 5;
     yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy142;
- if (yych <= 0x0A) goto yy79;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy142;
+ if (yych <= '\n') goto yy79;
         goto yy142;
     } else {
         if (yych <= 0x1F) goto yy79;
@@ -687,11 +687,11 @@
 yy81:
     yyaccept = 5;
     yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy97;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy97;
         goto yy79;
     } else {
- if (yych <= 0x0C) goto yy97;
+ if (yych <= '\f') goto yy97;
         if (yych <= 0x1F) goto yy79;
         goto yy97;
     }
@@ -718,7 +718,7 @@
 #line 719 "cpp_re.inc"
 yy87:
     yych = *++YYCURSOR;
- if (yych == 0x0A) goto yy93;
+ if (yych == '\n') goto yy93;
     goto yy86;
 yy88:
     ++YYCURSOR;
@@ -751,7 +751,7 @@
     goto yy86;
 yy94:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy95:
     if (yybm[256+yych] & 16) {
@@ -760,7 +760,7 @@
     goto yy83;
 yy96:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy97:
     if (yybm[256+yych] & 32) {
@@ -1187,7 +1187,7 @@
     }
 yy99:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1197,7 +1197,7 @@
     if (yych <= '[') goto yy112;
 yy100:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '`') {
         if (yych <= '7') {
@@ -1250,7 +1250,7 @@
 #line 1251 "cpp_re.inc"
 yy103:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1264,7 +1264,7 @@
     }
 yy104:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1278,7 +1278,7 @@
     }
 yy105:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1289,7 +1289,7 @@
     goto yy100;
 yy106:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 64) {
         goto yy109;
@@ -1297,14 +1297,14 @@
     goto yy98;
 yy107:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '"') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy96;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy96;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy96;
+ if (yych <= '\f') goto yy96;
             if (yych <= 0x1F) goto yy98;
             if (yych <= '!') goto yy96;
             goto yy101;
@@ -1320,7 +1320,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1331,17 +1331,17 @@
     goto yy100;
 yy109:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 64) {
         goto yy109;
     }
     if (yych <= '!') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy96;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy96;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy96;
+ if (yych <= '\f') goto yy96;
             if (yych <= 0x1F) goto yy98;
             goto yy96;
         }
@@ -1357,7 +1357,7 @@
     }
 yy111:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1367,17 +1367,17 @@
     if (yych >= '\\') goto yy100;
 yy112:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 128) {
         goto yy112;
     }
     if (yych <= '!') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy96;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy96;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy96;
+ if (yych <= '\f') goto yy96;
             if (yych <= 0x1F) goto yy98;
             goto yy96;
         }
@@ -1392,15 +1392,15 @@
     }
 yy114:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 1) {
         goto yy114;
     }
     if (yych <= '7') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1427,12 +1427,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1462,12 +1462,12 @@
     }
 yy117:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1498,7 +1498,7 @@
 yy118:
     yyaccept = 6;
     YYMARKER = ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1509,7 +1509,7 @@
     goto yy100;
 yy119:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1518,17 +1518,17 @@
     if (yych <= '"') goto yy101;
     if (yych >= '\\') goto yy100;
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 128) {
         goto yy112;
     }
     if (yych <= '!') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy96;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy96;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy96;
+ if (yych <= '\f') goto yy96;
             if (yych <= 0x1F) goto yy98;
             goto yy96;
         }
@@ -1544,12 +1544,12 @@
     }
 yy121:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1575,12 +1575,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1606,12 +1606,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1637,12 +1637,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1668,12 +1668,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1699,12 +1699,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1730,7 +1730,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1741,12 +1741,12 @@
     goto yy100;
 yy128:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1772,12 +1772,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1803,7 +1803,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1814,7 +1814,7 @@
     goto yy100;
 yy131:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1826,7 +1826,7 @@
     }
 yy132:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1838,7 +1838,7 @@
     }
 yy133:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1850,7 +1850,7 @@
     }
 yy134:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1862,7 +1862,7 @@
     }
 yy135:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1874,7 +1874,7 @@
     }
 yy136:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1886,7 +1886,7 @@
     }
 yy137:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1900,7 +1900,7 @@
     }
 yy138:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1912,7 +1912,7 @@
     }
 yy139:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1924,7 +1924,7 @@
     }
 yy140:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1938,7 +1938,7 @@
     }
 yy141:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy142:
     if (yybm[0+yych] & 2) {
@@ -1949,7 +1949,7 @@
     if (yych >= '\\') goto yy144;
 yy143:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -1959,7 +1959,7 @@
     if (yych <= '[') goto yy156;
 yy144:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '`') {
         if (yych <= '7') {
@@ -2004,7 +2004,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2018,7 +2018,7 @@
     }
 yy146:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2032,7 +2032,7 @@
     }
 yy147:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2043,7 +2043,7 @@
     goto yy144;
 yy148:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2057,14 +2057,14 @@
     }
 yy149:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '\'') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy141;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy141;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy141;
+ if (yych <= '\f') goto yy141;
             if (yych <= 0x1F) goto yy98;
             if (yych <= '&') goto yy141;
             goto yy151;
@@ -2080,7 +2080,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2097,12 +2097,12 @@
 #line 2098 "cpp_re.inc"
 yy153:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2132,7 +2132,7 @@
     }
 yy155:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2142,14 +2142,14 @@
     if (yych >= '\\') goto yy144;
 yy156:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '\'') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy141;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy141;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy141;
+ if (yych <= '\f') goto yy141;
             if (yych <= 0x1F) goto yy98;
             if (yych <= '&') goto yy141;
             goto yy151;
@@ -2165,16 +2165,16 @@
     }
 yy158:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '>') {
         if (yych <= 0x1F) {
- if (yych <= 0x09) {
+ if (yych <= '\t') {
                 if (yych <= 0x08) goto yy98;
                 goto yy141;
             } else {
- if (yych <= 0x0A) goto yy98;
- if (yych <= 0x0C) goto yy141;
+ if (yych <= '\n') goto yy98;
+ if (yych <= '\f') goto yy141;
                 goto yy98;
             }
         } else {
@@ -2207,12 +2207,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2242,12 +2242,12 @@
     }
 yy161:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2278,7 +2278,7 @@
 yy162:
     yyaccept = 7;
     YYMARKER = ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2289,7 +2289,7 @@
     goto yy144;
 yy163:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2298,14 +2298,14 @@
     if (yych <= '\'') goto yy151;
     if (yych >= '\\') goto yy144;
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '\'') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy141;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy141;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy141;
+ if (yych <= '\f') goto yy141;
             if (yych <= 0x1F) goto yy98;
             if (yych <= '&') goto yy141;
             goto yy151;
@@ -2322,12 +2322,12 @@
     }
 yy165:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2353,12 +2353,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2384,12 +2384,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2415,12 +2415,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2446,12 +2446,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2477,12 +2477,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2508,7 +2508,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2519,12 +2519,12 @@
     goto yy144;
 yy172:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2550,12 +2550,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2581,7 +2581,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2592,7 +2592,7 @@
     goto yy144;
 yy175:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2604,7 +2604,7 @@
     }
 yy176:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2616,7 +2616,7 @@
     }
 yy177:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2628,7 +2628,7 @@
     }
 yy178:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2640,7 +2640,7 @@
     }
 yy179:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2652,7 +2652,7 @@
     }
 yy180:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2664,7 +2664,7 @@
     }
 yy181:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2678,7 +2678,7 @@
     }
 yy182:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2690,7 +2690,7 @@
     }
 yy183:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2702,7 +2702,7 @@
     }
 yy184:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2809,7 +2809,7 @@
 yy194:
     yyaccept = 1;
     YYMARKER = ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy195:
     if (yybm[0+yych] & 4) {
@@ -2819,24 +2819,24 @@
     if (yych != '\\') goto yy9;
 yy196:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == 'U') goto yy200;
     if (yych == 'u') goto yy199;
     goto yy98;
 yy197:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych != '?') goto yy98;
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == '/') goto yy196;
     goto yy98;
 yy199:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2850,7 +2850,7 @@
     }
 yy200:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2862,7 +2862,7 @@
     }
 yy201:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2874,7 +2874,7 @@
     }
 yy202:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2886,7 +2886,7 @@
     }
 yy203:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2898,7 +2898,7 @@
     }
 yy204:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2910,7 +2910,7 @@
     }
 yy205:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2922,7 +2922,7 @@
     }
 yy206:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2934,7 +2934,7 @@
     }
 yy207:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2948,7 +2948,7 @@
     }
 yy208:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2960,7 +2960,7 @@
     }
 yy209:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2972,7 +2972,7 @@
     }
 yy210:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -3178,11 +3178,11 @@
 yy261:
     if (yych <= 'h') {
         if (yych <= ' ') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy260;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy260;
                 goto yy98;
             } else {
- if (yych <= 0x0C) goto yy260;
+ if (yych <= '\f') goto yy260;
                 if (yych <= 0x1F) goto yy98;
                 goto yy260;
             }
@@ -3217,7 +3217,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == '*') goto yy377;
     goto yy98;
@@ -3339,11 +3339,11 @@
     yych = *YYCURSOR;
 yy297:
     if (yych <= ' ') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy296;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy296;
             goto yy294;
         } else {
- if (yych <= 0x0C) goto yy296;
+ if (yych <= '\f') goto yy296;
             if (yych <= 0x1F) goto yy294;
             goto yy296;
         }
@@ -3359,7 +3359,7 @@
     }
 yy298:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == '*') goto yy309;
     goto yy98;
@@ -3373,7 +3373,7 @@
     goto yy302;
 yy301:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy302:
     if (yybm[0+yych] & 8) {
@@ -3386,7 +3386,7 @@
 #line 3387 "cpp_re.inc"
 yy305:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy306:
     if (yybm[0+yych] & 16) {
@@ -3399,45 +3399,45 @@
 #line 3400 "cpp_re.inc"
 yy309:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 32) {
         goto yy309;
     }
- if (yych == 0x0D) goto yy311;
+ if (yych == '\r') goto yy311;
     if (yych <= ')') goto yy98;
     goto yy313;
 yy311:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 32) {
         goto yy309;
     }
- if (yych == 0x0D) goto yy311;
+ if (yych == '\r') goto yy311;
     if (yych <= ')') goto yy98;
 yy313:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 128) {
         goto yy313;
     }
- if (yych <= 0x0D) {
+ if (yych <= '\r') {
         if (yych <= 0x08) goto yy98;
- if (yych <= 0x0C) goto yy309;
+ if (yych <= '\f') goto yy309;
     } else {
         if (yych <= 0x1F) goto yy98;
         if (yych == '/') goto yy296;
         goto yy309;
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 32) {
         goto yy309;
     }
- if (yych == 0x0D) goto yy311;
+ if (yych == '\r') goto yy311;
     if (yych <= ')') goto yy98;
     goto yy313;
 yy316:
@@ -3589,11 +3589,11 @@
 #line 3590 "cpp_re.inc"
 yy377:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
- if (yych <= 0x0D) {
+ if (yych <= '\r') {
         if (yych <= 0x08) goto yy98;
- if (yych <= 0x0C) goto yy377;
+ if (yych <= '\f') goto yy377;
     } else {
         if (yych <= 0x1F) goto yy98;
         if (yych == '*') goto yy381;
@@ -3601,11 +3601,11 @@
     }
 yy379:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
- if (yych <= 0x0D) {
+ if (yych <= '\r') {
         if (yych <= 0x08) goto yy98;
- if (yych <= 0x0C) goto yy377;
+ if (yych <= '\f') goto yy377;
         goto yy379;
     } else {
         if (yych <= 0x1F) goto yy98;
@@ -3613,11 +3613,11 @@
     }
 yy381:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= 0x1F) {
         if (yych <= 0x08) goto yy98;
- if (yych <= 0x0C) goto yy377;
+ if (yych <= '\f') goto yy377;
         if (yych >= 0x0E) goto yy98;
     } else {
         if (yych <= '*') {
@@ -3629,11 +3629,11 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
- if (yych <= 0x0D) {
+ if (yych <= '\r') {
         if (yych <= 0x08) goto yy98;
- if (yych <= 0x0C) goto yy377;
+ if (yych <= '\f') goto yy377;
         goto yy379;
     } else {
         if (yych <= 0x1F) goto yy98;
@@ -3663,10 +3663,10 @@
     yych = *(YYMARKER = ++YYCURSOR);
     if (yych <= 'e') {
         if (yych <= ' ') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy261;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy261;
             } else {
- if (yych <= 0x0C) goto yy261;
+ if (yych <= '\f') goto yy261;
                 if (yych >= ' ') goto yy261;
             }
         } else {
@@ -3780,10 +3780,10 @@
     yych = *(YYMARKER = ++YYCURSOR);
     if (yych <= 'c') {
         if (yych <= ' ') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy261;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy261;
             } else {
- if (yych <= 0x0C) goto yy261;
+ if (yych <= '\f') goto yy261;
                 if (yych >= ' ') goto yy261;
             }
         } else {
@@ -6135,17 +6135,17 @@
     YYCTYPE yych;
     if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
     yych = *YYCURSOR;
- if (yych <= 0x0C) {
+ if (yych <= '\f') {
         if (yych <= 0x08) {
             if (yych <= 0x00) goto yy933;
             goto yy935;
         } else {
- if (yych == 0x0A) goto yy928;
+ if (yych == '\n') goto yy928;
             goto yy931;
         }
     } else {
         if (yych <= 0x1F) {
- if (yych <= 0x0D) goto yy930;
+ if (yych <= '\r') goto yy930;
             goto yy935;
         } else {
             if (yych != '*') goto yy932;
@@ -6171,7 +6171,7 @@
 #line 6172 "cpp_re.inc"
 yy930:
     yych = *++YYCURSOR;
- if (yych == 0x0A) goto yy937;
+ if (yych == '\n') goto yy937;
     goto yy929;
 yy931:
     yych = *++YYCURSOR;
@@ -6227,13 +6227,13 @@
     YYCTYPE yych;
     if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
     yych = *YYCURSOR;
- if (yych <= 0x0A) {
+ if (yych <= '\n') {
         if (yych <= 0x00) goto yy948;
         if (yych <= 0x08) goto yy950;
- if (yych <= 0x09) goto yy945;
+ if (yych <= '\t') goto yy945;
     } else {
- if (yych <= 0x0C) goto yy945;
- if (yych <= 0x0D) goto yy944;
+ if (yych <= '\f') goto yy945;
+ if (yych <= '\r') goto yy944;
         if (yych <= 0x1F) goto yy950;
         goto yy947;
     }
@@ -6250,7 +6250,7 @@
 #line 6251 "cpp_re.inc"
 yy944:
     yych = *++YYCURSOR;
- if (yych == 0x0A) goto yy952;
+ if (yych == '\n') goto yy952;
     goto yy943;
 yy945:
     ++YYCURSOR;
@@ -6361,7 +6361,7 @@
     if (yych >= ':') goto yy955;
 yy957:
     YYMARKER = ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 64) {
         goto yy957;
@@ -6382,7 +6382,7 @@
 #line 6383 "cpp_re.inc"
 yy960:
     YYMARKER = ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 128) {
         goto yy960;
@@ -6424,24 +6424,24 @@
     }
 yy962:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == 'U') goto yy966;
     if (yych == 'u') goto yy965;
     goto yy955;
 yy963:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych != '?') goto yy955;
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == '/') goto yy962;
     goto yy955;
 yy965:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6455,7 +6455,7 @@
     }
 yy966:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6467,7 +6467,7 @@
     }
 yy967:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6479,7 +6479,7 @@
     }
 yy968:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6491,7 +6491,7 @@
     }
 yy969:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6503,7 +6503,7 @@
     }
 yy970:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6515,7 +6515,7 @@
     }
 yy971:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6527,7 +6527,7 @@
     }
 yy972:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6539,7 +6539,7 @@
     }
 yy973:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6553,7 +6553,7 @@
     }
 yy974:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6565,7 +6565,7 @@
     }
 yy975:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6577,7 +6577,7 @@
     }
 yy976:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6850,7 +6850,7 @@
     }
 yy1004:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 128) {
         goto yy1004;

Modified: trunk/libs/wave/src/cpplexer/re2clex/strict_cpp_re.inc
==============================================================================
--- trunk/libs/wave/src/cpplexer/re2clex/strict_cpp_re.inc (original)
+++ trunk/libs/wave/src/cpplexer/re2clex/strict_cpp_re.inc 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.2 on Fri Apr 04 14:19:15 2008 */
+/* Generated by re2c 0.13.5 on Fri May 22 14:32:21 2009 */
 #line 1 "strict_cpp.re"
 /*=============================================================================
     Boost.Wave: A Standard compliant C++ preprocessor library
@@ -124,11 +124,11 @@
     case 0x1D:
     case 0x1E:
     case 0x1F: goto yy91;
- case 0x09:
- case 0x0B:
- case 0x0C: goto yy82;
- case 0x0A: goto yy85;
- case 0x0D: goto yy87;
+ case '\t':
+ case '\v':
+ case '\f': goto yy82;
+ case '\n': goto yy85;
+ case '\r': goto yy87;
     case ' ': goto yy84;
     case '!': goto yy68;
     case '"': goto yy81;
@@ -502,10 +502,10 @@
     yych = *(YYMARKER = ++YYCURSOR);
     if (yych <= 'c') {
         if (yych <= ' ') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy261;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy261;
             } else {
- if (yych <= 0x0C) goto yy261;
+ if (yych <= '\f') goto yy261;
                 if (yych >= ' ') goto yy261;
             }
         } else {
@@ -674,9 +674,9 @@
 yy80:
     yyaccept = 5;
     yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy142;
- if (yych <= 0x0A) goto yy79;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy142;
+ if (yych <= '\n') goto yy79;
         goto yy142;
     } else {
         if (yych <= 0x1F) goto yy79;
@@ -686,11 +686,11 @@
 yy81:
     yyaccept = 5;
     yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy97;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy97;
         goto yy79;
     } else {
- if (yych <= 0x0C) goto yy97;
+ if (yych <= '\f') goto yy97;
         if (yych <= 0x1F) goto yy79;
         goto yy97;
     }
@@ -717,7 +717,7 @@
 #line 718 "strict_cpp_re.inc"
 yy87:
     yych = *++YYCURSOR;
- if (yych == 0x0A) goto yy93;
+ if (yych == '\n') goto yy93;
     goto yy86;
 yy88:
     ++YYCURSOR;
@@ -750,7 +750,7 @@
     goto yy86;
 yy94:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy95:
     if (yybm[256+yych] & 16) {
@@ -759,7 +759,7 @@
     goto yy83;
 yy96:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy97:
     if (yybm[256+yych] & 32) {
@@ -1186,7 +1186,7 @@
     }
 yy99:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1196,7 +1196,7 @@
     if (yych <= '[') goto yy112;
 yy100:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '`') {
         if (yych <= '7') {
@@ -1249,7 +1249,7 @@
 #line 1250 "strict_cpp_re.inc"
 yy103:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1263,7 +1263,7 @@
     }
 yy104:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1277,7 +1277,7 @@
     }
 yy105:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1288,7 +1288,7 @@
     goto yy100;
 yy106:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 64) {
         goto yy109;
@@ -1296,14 +1296,14 @@
     goto yy98;
 yy107:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '"') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy96;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy96;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy96;
+ if (yych <= '\f') goto yy96;
             if (yych <= 0x1F) goto yy98;
             if (yych <= '!') goto yy96;
             goto yy101;
@@ -1319,7 +1319,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1330,17 +1330,17 @@
     goto yy100;
 yy109:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 64) {
         goto yy109;
     }
     if (yych <= '!') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy96;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy96;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy96;
+ if (yych <= '\f') goto yy96;
             if (yych <= 0x1F) goto yy98;
             goto yy96;
         }
@@ -1356,7 +1356,7 @@
     }
 yy111:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1366,17 +1366,17 @@
     if (yych >= '\\') goto yy100;
 yy112:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 128) {
         goto yy112;
     }
     if (yych <= '!') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy96;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy96;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy96;
+ if (yych <= '\f') goto yy96;
             if (yych <= 0x1F) goto yy98;
             goto yy96;
         }
@@ -1391,15 +1391,15 @@
     }
 yy114:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 1) {
         goto yy114;
     }
     if (yych <= '7') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1426,12 +1426,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1461,12 +1461,12 @@
     }
 yy117:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1497,7 +1497,7 @@
 yy118:
     yyaccept = 6;
     YYMARKER = ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1508,7 +1508,7 @@
     goto yy100;
 yy119:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1517,17 +1517,17 @@
     if (yych <= '"') goto yy101;
     if (yych >= '\\') goto yy100;
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 128) {
         goto yy112;
     }
     if (yych <= '!') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy96;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy96;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy96;
+ if (yych <= '\f') goto yy96;
             if (yych <= 0x1F) goto yy98;
             goto yy96;
         }
@@ -1543,12 +1543,12 @@
     }
 yy121:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1574,12 +1574,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1605,12 +1605,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1636,12 +1636,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1667,12 +1667,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1698,12 +1698,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1729,7 +1729,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1740,12 +1740,12 @@
     goto yy100;
 yy128:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1771,12 +1771,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy96;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy96;
+ if (yych <= '\n') goto yy98;
             goto yy96;
         } else {
             if (yych <= '!') {
@@ -1802,7 +1802,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[256+yych] & 32) {
         goto yy96;
@@ -1813,7 +1813,7 @@
     goto yy100;
 yy131:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1825,7 +1825,7 @@
     }
 yy132:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1837,7 +1837,7 @@
     }
 yy133:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1849,7 +1849,7 @@
     }
 yy134:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1861,7 +1861,7 @@
     }
 yy135:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1873,7 +1873,7 @@
     }
 yy136:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1885,7 +1885,7 @@
     }
 yy137:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1899,7 +1899,7 @@
     }
 yy138:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1911,7 +1911,7 @@
     }
 yy139:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1923,7 +1923,7 @@
     }
 yy140:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -1937,7 +1937,7 @@
     }
 yy141:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy142:
     if (yybm[0+yych] & 2) {
@@ -1948,7 +1948,7 @@
     if (yych >= '\\') goto yy144;
 yy143:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -1958,7 +1958,7 @@
     if (yych <= '[') goto yy156;
 yy144:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '`') {
         if (yych <= '7') {
@@ -2003,7 +2003,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2017,7 +2017,7 @@
     }
 yy146:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2031,7 +2031,7 @@
     }
 yy147:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2042,7 +2042,7 @@
     goto yy144;
 yy148:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2056,14 +2056,14 @@
     }
 yy149:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '\'') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy141;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy141;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy141;
+ if (yych <= '\f') goto yy141;
             if (yych <= 0x1F) goto yy98;
             if (yych <= '&') goto yy141;
             goto yy151;
@@ -2079,7 +2079,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2096,12 +2096,12 @@
 #line 2097 "strict_cpp_re.inc"
 yy153:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2131,7 +2131,7 @@
     }
 yy155:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2141,14 +2141,14 @@
     if (yych >= '\\') goto yy144;
 yy156:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '\'') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy141;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy141;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy141;
+ if (yych <= '\f') goto yy141;
             if (yych <= 0x1F) goto yy98;
             if (yych <= '&') goto yy141;
             goto yy151;
@@ -2164,16 +2164,16 @@
     }
 yy158:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '>') {
         if (yych <= 0x1F) {
- if (yych <= 0x09) {
+ if (yych <= '\t') {
                 if (yych <= 0x08) goto yy98;
                 goto yy141;
             } else {
- if (yych <= 0x0A) goto yy98;
- if (yych <= 0x0C) goto yy141;
+ if (yych <= '\n') goto yy98;
+ if (yych <= '\f') goto yy141;
                 goto yy98;
             }
         } else {
@@ -2206,12 +2206,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2241,12 +2241,12 @@
     }
 yy161:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2277,7 +2277,7 @@
 yy162:
     yyaccept = 7;
     YYMARKER = ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2288,7 +2288,7 @@
     goto yy144;
 yy163:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2297,14 +2297,14 @@
     if (yych <= '\'') goto yy151;
     if (yych >= '\\') goto yy144;
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '\'') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy141;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy141;
             goto yy98;
         } else {
- if (yych <= 0x0C) goto yy141;
+ if (yych <= '\f') goto yy141;
             if (yych <= 0x1F) goto yy98;
             if (yych <= '&') goto yy141;
             goto yy151;
@@ -2321,12 +2321,12 @@
     }
 yy165:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2352,12 +2352,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2383,12 +2383,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2414,12 +2414,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2445,12 +2445,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2476,12 +2476,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2507,7 +2507,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2518,12 +2518,12 @@
     goto yy144;
 yy172:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2549,12 +2549,12 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '9') {
- if (yych <= 0x0C) {
- if (yych == 0x09) goto yy141;
- if (yych <= 0x0A) goto yy98;
+ if (yych <= '\f') {
+ if (yych == '\t') goto yy141;
+ if (yych <= '\n') goto yy98;
             goto yy141;
         } else {
             if (yych <= '&') {
@@ -2580,7 +2580,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 2) {
         goto yy141;
@@ -2591,7 +2591,7 @@
     goto yy144;
 yy175:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2603,7 +2603,7 @@
     }
 yy176:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2615,7 +2615,7 @@
     }
 yy177:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2627,7 +2627,7 @@
     }
 yy178:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2639,7 +2639,7 @@
     }
 yy179:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2651,7 +2651,7 @@
     }
 yy180:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2663,7 +2663,7 @@
     }
 yy181:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2677,7 +2677,7 @@
     }
 yy182:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2689,7 +2689,7 @@
     }
 yy183:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2701,7 +2701,7 @@
     }
 yy184:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2808,7 +2808,7 @@
 yy194:
     yyaccept = 1;
     YYMARKER = ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy195:
     if (yybm[0+yych] & 4) {
@@ -2818,24 +2818,24 @@
     if (yych != '\\') goto yy9;
 yy196:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == 'U') goto yy200;
     if (yych == 'u') goto yy199;
     goto yy98;
 yy197:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych != '?') goto yy98;
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == '/') goto yy196;
     goto yy98;
 yy199:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2849,7 +2849,7 @@
     }
 yy200:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2861,7 +2861,7 @@
     }
 yy201:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2873,7 +2873,7 @@
     }
 yy202:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2885,7 +2885,7 @@
     }
 yy203:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2897,7 +2897,7 @@
     }
 yy204:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2909,7 +2909,7 @@
     }
 yy205:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2921,7 +2921,7 @@
     }
 yy206:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2933,7 +2933,7 @@
     }
 yy207:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2947,7 +2947,7 @@
     }
 yy208:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2959,7 +2959,7 @@
     }
 yy209:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -2971,7 +2971,7 @@
     }
 yy210:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy98;
@@ -3177,11 +3177,11 @@
 yy261:
     if (yych <= 'h') {
         if (yych <= ' ') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy260;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy260;
                 goto yy98;
             } else {
- if (yych <= 0x0C) goto yy260;
+ if (yych <= '\f') goto yy260;
                 if (yych <= 0x1F) goto yy98;
                 goto yy260;
             }
@@ -3216,7 +3216,7 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == '*') goto yy377;
     goto yy98;
@@ -3338,11 +3338,11 @@
     yych = *YYCURSOR;
 yy297:
     if (yych <= ' ') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy296;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy296;
             goto yy294;
         } else {
- if (yych <= 0x0C) goto yy296;
+ if (yych <= '\f') goto yy296;
             if (yych <= 0x1F) goto yy294;
             goto yy296;
         }
@@ -3358,7 +3358,7 @@
     }
 yy298:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == '*') goto yy309;
     goto yy98;
@@ -3372,7 +3372,7 @@
     goto yy302;
 yy301:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy302:
     if (yybm[0+yych] & 8) {
@@ -3385,7 +3385,7 @@
 #line 3386 "strict_cpp_re.inc"
 yy305:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
 yy306:
     if (yybm[0+yych] & 16) {
@@ -3398,45 +3398,45 @@
 #line 3399 "strict_cpp_re.inc"
 yy309:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 32) {
         goto yy309;
     }
- if (yych == 0x0D) goto yy311;
+ if (yych == '\r') goto yy311;
     if (yych <= ')') goto yy98;
     goto yy313;
 yy311:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 32) {
         goto yy309;
     }
- if (yych == 0x0D) goto yy311;
+ if (yych == '\r') goto yy311;
     if (yych <= ')') goto yy98;
 yy313:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 128) {
         goto yy313;
     }
- if (yych <= 0x0D) {
+ if (yych <= '\r') {
         if (yych <= 0x08) goto yy98;
- if (yych <= 0x0C) goto yy309;
+ if (yych <= '\f') goto yy309;
     } else {
         if (yych <= 0x1F) goto yy98;
         if (yych == '/') goto yy296;
         goto yy309;
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 32) {
         goto yy309;
     }
- if (yych == 0x0D) goto yy311;
+ if (yych == '\r') goto yy311;
     if (yych <= ')') goto yy98;
     goto yy313;
 yy316:
@@ -3588,11 +3588,11 @@
 #line 3589 "strict_cpp_re.inc"
 yy377:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
- if (yych <= 0x0D) {
+ if (yych <= '\r') {
         if (yych <= 0x08) goto yy98;
- if (yych <= 0x0C) goto yy377;
+ if (yych <= '\f') goto yy377;
     } else {
         if (yych <= 0x1F) goto yy98;
         if (yych == '*') goto yy381;
@@ -3600,11 +3600,11 @@
     }
 yy379:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
- if (yych <= 0x0D) {
+ if (yych <= '\r') {
         if (yych <= 0x08) goto yy98;
- if (yych <= 0x0C) goto yy377;
+ if (yych <= '\f') goto yy377;
         goto yy379;
     } else {
         if (yych <= 0x1F) goto yy98;
@@ -3612,11 +3612,11 @@
     }
 yy381:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= 0x1F) {
         if (yych <= 0x08) goto yy98;
- if (yych <= 0x0C) goto yy377;
+ if (yych <= '\f') goto yy377;
         if (yych >= 0x0E) goto yy98;
     } else {
         if (yych <= '*') {
@@ -3628,11 +3628,11 @@
         }
     }
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
- if (yych <= 0x0D) {
+ if (yych <= '\r') {
         if (yych <= 0x08) goto yy98;
- if (yych <= 0x0C) goto yy377;
+ if (yych <= '\f') goto yy377;
         goto yy379;
     } else {
         if (yych <= 0x1F) goto yy98;
@@ -3662,10 +3662,10 @@
     yych = *(YYMARKER = ++YYCURSOR);
     if (yych <= 'e') {
         if (yych <= ' ') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy261;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy261;
             } else {
- if (yych <= 0x0C) goto yy261;
+ if (yych <= '\f') goto yy261;
                 if (yych >= ' ') goto yy261;
             }
         } else {
@@ -3779,10 +3779,10 @@
     yych = *(YYMARKER = ++YYCURSOR);
     if (yych <= 'c') {
         if (yych <= ' ') {
- if (yych <= 0x0A) {
- if (yych == 0x09) goto yy261;
+ if (yych <= '\n') {
+ if (yych == '\t') goto yy261;
             } else {
- if (yych <= 0x0C) goto yy261;
+ if (yych <= '\f') goto yy261;
                 if (yych >= ' ') goto yy261;
             }
         } else {
@@ -6131,17 +6131,17 @@
     YYCTYPE yych;
     if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
     yych = *YYCURSOR;
- if (yych <= 0x0C) {
+ if (yych <= '\f') {
         if (yych <= 0x08) {
             if (yych <= 0x00) goto yy933;
             goto yy935;
         } else {
- if (yych == 0x0A) goto yy928;
+ if (yych == '\n') goto yy928;
             goto yy931;
         }
     } else {
         if (yych <= 0x1F) {
- if (yych <= 0x0D) goto yy930;
+ if (yych <= '\r') goto yy930;
             goto yy935;
         } else {
             if (yych != '*') goto yy932;
@@ -6167,7 +6167,7 @@
 #line 6168 "strict_cpp_re.inc"
 yy930:
     yych = *++YYCURSOR;
- if (yych == 0x0A) goto yy937;
+ if (yych == '\n') goto yy937;
     goto yy929;
 yy931:
     yych = *++YYCURSOR;
@@ -6223,13 +6223,13 @@
     YYCTYPE yych;
     if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
     yych = *YYCURSOR;
- if (yych <= 0x0A) {
+ if (yych <= '\n') {
         if (yych <= 0x00) goto yy948;
         if (yych <= 0x08) goto yy950;
- if (yych <= 0x09) goto yy945;
+ if (yych <= '\t') goto yy945;
     } else {
- if (yych <= 0x0C) goto yy945;
- if (yych <= 0x0D) goto yy944;
+ if (yych <= '\f') goto yy945;
+ if (yych <= '\r') goto yy944;
         if (yych <= 0x1F) goto yy950;
         goto yy947;
     }
@@ -6246,7 +6246,7 @@
 #line 6247 "strict_cpp_re.inc"
 yy944:
     yych = *++YYCURSOR;
- if (yych == 0x0A) goto yy952;
+ if (yych == '\n') goto yy952;
     goto yy943;
 yy945:
     ++YYCURSOR;
@@ -6357,7 +6357,7 @@
     if (yych >= ':') goto yy955;
 yy957:
     YYMARKER = ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 64) {
         goto yy957;
@@ -6378,7 +6378,7 @@
 #line 6379 "strict_cpp_re.inc"
 yy960:
     YYMARKER = ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 128) {
         goto yy960;
@@ -6412,24 +6412,24 @@
     }
 yy962:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == 'U') goto yy966;
     if (yych == 'u') goto yy965;
     goto yy955;
 yy963:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych != '?') goto yy955;
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych == '/') goto yy962;
     goto yy955;
 yy965:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6443,7 +6443,7 @@
     }
 yy966:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6455,7 +6455,7 @@
     }
 yy967:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6467,7 +6467,7 @@
     }
 yy968:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6479,7 +6479,7 @@
     }
 yy969:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6491,7 +6491,7 @@
     }
 yy970:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6503,7 +6503,7 @@
     }
 yy971:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6515,7 +6515,7 @@
     }
 yy972:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6527,7 +6527,7 @@
     }
 yy973:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6541,7 +6541,7 @@
     }
 yy974:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6553,7 +6553,7 @@
     }
 yy975:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6565,7 +6565,7 @@
     }
 yy976:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yych <= '@') {
         if (yych <= '/') goto yy955;
@@ -6838,7 +6838,7 @@
     }
 yy1004:
     ++YYCURSOR;
- if (YYLIMIT == YYCURSOR) YYFILL(1);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
     yych = *YYCURSOR;
     if (yybm[0+yych] & 128) {
         goto yy1004;

Modified: trunk/libs/wave/test/build/Jamfile.v2
==============================================================================
--- trunk/libs/wave/test/build/Jamfile.v2 (original)
+++ trunk/libs/wave/test/build/Jamfile.v2 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -29,6 +29,7 @@
 #
 TESTWAVE_ARGUMENTS =
         -d4 # use -d4 for verbose results
+ --hooks=1 # test hooks as well
         -S$(TESTWAVE_DIR)
         -S$(BOOST_ROOT) -I$(BOOST_ROOT)
     ;

Modified: trunk/tools/wave/cpp_version.hpp
==============================================================================
--- trunk/tools/wave/cpp_version.hpp (original)
+++ trunk/tools/wave/cpp_version.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -19,7 +19,7 @@
 
 #define CPP_VERSION_FULL_STR BOOST_PP_STRINGIZE(CPP_VERSION_FULL)
                                      
-#define CPP_VERSION_DATE 20090309L
-#define CPP_VERSION_DATE_STR "20090309"
+#define CPP_VERSION_DATE 20090522L
+#define CPP_VERSION_DATE_STR "20090522"
 
 #endif // !defined(CPP_VERSION_HPP_CE4FE67F_63F9_468D_8364_C855F89D3C5D_INCLUDED)

Modified: trunk/tools/wave/trace_macro_expansion.hpp
==============================================================================
--- trunk/tools/wave/trace_macro_expansion.hpp (original)
+++ trunk/tools/wave/trace_macro_expansion.hpp 2009-05-22 19:40:53 EDT (Fri, 22 May 2009)
@@ -80,7 +80,6 @@
     }
     ~bad_pragma_exception() throw() {}
     
-
     virtual char const *what() const throw()
     {
         return "boost::wave::bad_pragma_exception";
@@ -534,7 +533,7 @@
     opened_include_file(ContextT const& ctx, std::string const &relname,
         std::string const &absname, bool is_system_include)
     {
- std::size_t include_depth = ctx.get_max_include_nesting_depth();
+ std::size_t include_depth = ctx.get_iteration_depth();
 #endif
         if (enabled_include_tracing()) {
             // print indented filename


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