C++ Mathematical Expression Library (ExprTk) http://www.partow.net/programming/exprtk/index.html

This commit is contained in:
Arash Partow 2015-04-10 01:44:57 +10:00
parent cc15c264b3
commit 9aaae045bf
1 changed files with 9 additions and 9 deletions

View File

@ -17039,6 +17039,8 @@ namespace exprtk
parser(const settings_t& settings = settings_t()) parser(const settings_t& settings = settings_t())
: settings_(settings), : settings_(settings),
parsing_return_stmt_ (false),
parsing_break_stmt_ (false),
return_stmt_present_ (false), return_stmt_present_ (false),
resolve_unknown_symbol_(false), resolve_unknown_symbol_(false),
scope_depth_(0), scope_depth_(0),
@ -20344,9 +20346,7 @@ namespace exprtk
#ifndef exprtk_disable_break_continue #ifndef exprtk_disable_break_continue
inline expression_node_ptr parse_break_statement() inline expression_node_ptr parse_break_statement()
{ {
static bool parsing_break_stmt = false; if (parsing_break_stmt_)
if (parsing_break_stmt)
{ {
set_error( set_error(
make_error(parser_error::e_syntax, make_error(parser_error::e_syntax,
@ -20356,7 +20356,7 @@ namespace exprtk
return error_node(); return error_node();
} }
scoped_bool_negator sbn(parsing_break_stmt); scoped_bool_negator sbn(parsing_break_stmt_);
if (!brkcnt_list_.empty()) if (!brkcnt_list_.empty())
{ {
@ -21224,9 +21224,7 @@ namespace exprtk
inline expression_node_ptr parse_return_statement() inline expression_node_ptr parse_return_statement()
{ {
static bool parsing_return_stmt = false; if (parsing_return_stmt_)
if (parsing_return_stmt)
{ {
set_error( set_error(
make_error(parser_error::e_syntax, make_error(parser_error::e_syntax,
@ -21236,7 +21234,7 @@ namespace exprtk
return error_node(); return error_node();
} }
scoped_bool_negator sbn(parsing_return_stmt); scoped_bool_negator sbn(parsing_return_stmt_);
std::vector<expression_node_ptr> arg_list; std::vector<expression_node_ptr> arg_list;
@ -30408,6 +30406,8 @@ namespace exprtk
dependent_entity_collector dec_; dependent_entity_collector dec_;
std::deque<parser_error::type> error_list_; std::deque<parser_error::type> error_list_;
std::deque<bool> brkcnt_list_; std::deque<bool> brkcnt_list_;
bool parsing_return_stmt_;
bool parsing_break_stmt_;
bool return_stmt_present_; bool return_stmt_present_;
bool resolve_unknown_symbol_; bool resolve_unknown_symbol_;
std::size_t scope_depth_; std::size_t scope_depth_;