Fixed bugs in if-else & in_curve_calc
This commit is contained in:
parent
1a74e67abd
commit
ec1d496c11
|
@ -677,12 +677,12 @@ abstract_syntax_tree nasal_parser::if_else_expr()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
node.add_child(temp);
|
node.add_child(temp);
|
||||||
temp.set_clear();
|
|
||||||
if(parse.empty())
|
if(parse.empty())
|
||||||
return node;
|
return node;
|
||||||
get_token();
|
get_token();
|
||||||
while(this_token.type==__elsif || else_if_check())
|
while(this_token.type==__elsif || else_if_check())
|
||||||
{
|
{
|
||||||
|
temp.set_clear();
|
||||||
temp.set_node_type(__elsif);
|
temp.set_node_type(__elsif);
|
||||||
get_token();
|
get_token();
|
||||||
if(this_token.type!=__left_curve)
|
if(this_token.type!=__left_curve)
|
||||||
|
@ -772,11 +772,11 @@ abstract_syntax_tree nasal_parser::if_else_expr()
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
node.add_child(temp);
|
||||||
if(parse.empty())
|
if(parse.empty())
|
||||||
return node;
|
return node;
|
||||||
get_token();
|
get_token();
|
||||||
}
|
}
|
||||||
node.add_child(temp);
|
|
||||||
temp.set_clear();
|
temp.set_clear();
|
||||||
if(this_token.type==__else)
|
if(this_token.type==__else)
|
||||||
{
|
{
|
||||||
|
@ -837,6 +837,7 @@ abstract_syntax_tree nasal_parser::if_else_expr()
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
node.add_child(temp);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
parse.push(this_token);
|
parse.push(this_token);
|
||||||
|
@ -1268,10 +1269,7 @@ abstract_syntax_tree nasal_parser::mul_div_operator_expr()
|
||||||
node=temp;
|
node=temp;
|
||||||
break;
|
break;
|
||||||
case __id:
|
case __id:
|
||||||
node.set_clear();
|
node=identifier_call_expr();
|
||||||
node.set_node_type(__id);
|
|
||||||
node.set_var_name(this_token.content);
|
|
||||||
node.add_child(identifier_call_expr());
|
|
||||||
temp.add_child(node);
|
temp.add_child(node);
|
||||||
node=temp;
|
node=temp;
|
||||||
break;
|
break;
|
||||||
|
@ -1307,9 +1305,7 @@ abstract_syntax_tree nasal_parser::unary_operator_expr()
|
||||||
node.add_child(temp);
|
node.add_child(temp);
|
||||||
break;
|
break;
|
||||||
case __id:
|
case __id:
|
||||||
temp.set_node_type(__id);
|
temp=identifier_call_expr();
|
||||||
temp.set_var_name(this_token.content);
|
|
||||||
temp.add_child(identifier_call_expr());
|
|
||||||
node.add_child(temp);
|
node.add_child(temp);
|
||||||
break;
|
break;
|
||||||
case __left_curve:
|
case __left_curve:
|
||||||
|
|
Loading…
Reference in New Issue