diff -r 510d5bd079ad boost/wave/cpplexer/cpp_lex_token.hpp --- a/boost/wave/cpplexer/cpp_lex_token.hpp Fri Jun 27 15:59:57 2008 -0600 +++ b/boost/wave/cpplexer/cpp_lex_token.hpp Mon Jun 30 18:24:30 2008 -0600 @@ -131,7 +131,7 @@ void *ret = pool_type::malloc(); if (0 == ret) - throw std::bad_alloc(); + boost::throw_exception(std::bad_alloc()); return ret; } diff -r 510d5bd079ad boost/wave/grammars/cpp_expression_grammar.hpp --- a/boost/wave/grammars/cpp_expression_grammar.hpp Fri Jun 27 15:59:57 2008 -0600 +++ b/boost/wave/grammars/cpp_expression_grammar.hpp Mon Jun 30 18:24:30 2008 -0600 @@ -782,6 +782,7 @@ } } } +#ifndef BOOST_NO_EXCEPTIONS catch (boost::wave::preprocess_exception const& e) { // expression is illformed if (if_block_status) { @@ -792,6 +793,7 @@ return false; } } +#endif if (!hit.full) { // The token list starts with a valid expression, but there remains