Update of /cvsroot/boost/boost/boost/wave
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv24959/boost/wave
Modified Files:
cpp_context.hpp wave_config.hpp
Log Message:
Wave: Added the BOOST_WAVE_SUPPORT_LONGLONG_INTEGER_LITERALS pp configuration
constant.
Index: cpp_context.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/wave/cpp_context.hpp,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -d -r1.35 -r1.36
--- cpp_context.hpp 20 Mar 2007 19:19:15 -0000 1.35
+++ cpp_context.hpp 4 Jul 2007 18:25:51 -0000 1.36
@@ -217,6 +217,15 @@
void reset_macro_definitions()
{ macros.reset_macromap(); macros.init_predefined_macros(); }
+ typedef boost::wave::util::macromap<self_type> macromap_type;
+ typedef typename macromap_type::name_iterator name_iterator;
+ typedef typename macromap_type::const_name_iterator const_name_iterator;
+
+ name_iterator macro_names_begin() { return macros.begin(); }
+ name_iterator macro_names_end() { return macros.end(); }
+ const_name_iterator macro_names_begin() const { return macros.begin(); }
+ const_name_iterator macro_names_end() const { return macros.end(); }
+
// get the Wave version information
static std::string get_version()
{ return boost::wave::util::predefined_macros::get_fullversion(false);
}
@@ -442,7 +451,7 @@
boost::wave::util::if_block_stack ifblocks; // conditional compilation
contexts
boost::wave::util::include_paths includes; // lists of include
directories to search
iteration_context_stack_type iter_ctxs; // iteration contexts
- boost::wave::util::macromap<self_type> macros; // map of defined macros
+ macromap_type macros; // map of defined macros
boost::wave::language_support language; // supported
language/extensions
hook_policy_type hooks; // hook policy instance
};
Index: wave_config.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/wave/wave_config.hpp,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- wave_config.hpp 3 Jul 2007 15:47:50 -0000 1.19
+++ wave_config.hpp 4 Jul 2007 18:25:51 -0000 1.20
@@ -351,6 +351,43 @@
#endif
///////////////////////////////////////////////////////////////////////////////
+// Decide, whether to support long long integers in the preprocessor.
+//
+// The C++ standard requires the preprocessor to use one of the following
+// types for integer literals: long or unsigned long depending on a optional
+// suffix ('u', 'l', 'ul', or 'lu')
+//
+// Sometimes it's required to preprocess integer literals bigger than that
+// (i.e. long long or unsigned long long). In this case you need to define
the
+// BOOST_WAVE_SUPPORT_LONGLONG_INTEGER_LITERALS to something not equal to
zero.
+//
+// This pp constant is effective only, if your target platform supports
+// long long integers (BOOST_HAS_LONG_LONG is defined).
+//
+// Please note, that this setting doesn't relate to the Wave support option
+// support_option_long_long, which enables the recognition of 'll' suffixes
+// only.
+//
+// Defining this pp constant enables the recognition of long long integers
+// even if these do not have the 'll' suffix.
+//
+#if !defined(BOOST_WAVE_SUPPORT_LONGLONG_INTEGER_LITERALS)
+#define BOOST_WAVE_SUPPORT_LONGLONG_INTEGER_LITERALS 0
+#endif
+
+namespace boost { namespace wave
+{
+#if defined(BOOST_HAS_LONG_LONG) && \
+ BOOST_WAVE_SUPPORT_LONGLONG_INTEGER_LITERALS != 0
+ typedef boost::long_long_type int_literal_type;
+ typedef boost::ulong_long_type uint_literal_type;
+#else
+ typedef long int_literal_type;
+ typedef unsigned long uint_literal_type;
+#endif
+}}
+
+///////////////////////////////////////////////////////////////////////////////
// configure Boost.Spirit thread support, Boost.Pool is configured
// automatically
#if defined(BOOST_HAS_THREADS)
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Boost-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/boost-cvs