qbs* FUNC_EVALUATE_EXPRESSION(qbs*_FUNC_EVALUATE_EXPRESSION_STRING_E,void*_FUNC_EVALUATE_EXPRESSION_UDT_NUM){
qbs *tqbs;
ptrszint tmp_long;
int32 tmp_fileno;
uint32 qbs_tmp_base=qbs_tmp_list_nexti;
uint8 *tmp_mem_static_pointer=mem_static_pointer;
uint32 tmp_cmem_sp=cmem_sp;
#include "data206.txt"
mem_lock *sf_mem_lock;
new_mem_lock();
sf_mem_lock=mem_lock_tmp;
sf_mem_lock->type=3;
libqb_check_stack();
if (is_error_pending()) goto exit_subfunc;
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_T,_FUNC_EVALUATE_EXPRESSION_STRING_E);
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,12,"const_eval.bas");}while(r);
do{
SUB_PREPARSE(_FUNC_EVALUATE_EXPRESSION_STRING_T);
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,14,"const_eval.bas");}while(r);
S_39066:;
if (( 0ll )||is_error_pending()){
if(qbevent){evnt(28169,16,"const_eval.bas");if(r)goto S_39066;}
do{
sub__echo(qbs_add(qbs_new_txt_len("t$: ",4),_FUNC_EVALUATE_EXPRESSION_STRING_T));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,16,"const_eval.bas");}while(r);
}
S_39069:;
if ((qbs_cleanup(qbs_tmp_base,qbs_equal(qbs_left(_FUNC_EVALUATE_EXPRESSION_STRING_T, 5 ),qbs_new_txt_len("ERROR",5))))||is_error_pending()){
if(qbevent){evnt(28169,17,"const_eval.bas");if(r)goto S_39069;}
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EVALUATE_EXPRESSION,_FUNC_EVALUATE_EXPRESSION_STRING_T);
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,17,"const_eval.bas");}while(r);
do{
goto exit_subfunc;
if(!qbevent)break;evnt(28169,17,"const_eval.bas");}while(r);
}
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,qbs_add(qbs_add(qbs_add(qbs_add(qbs_new_txt_len("(",1),__STRING1_SP),_FUNC_EVALUATE_EXPRESSION_STRING_T),__STRING1_SP),qbs_new_txt_len(")",1)));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,20,"const_eval.bas");}while(r);
S_39074:;
if (( 0ll )||is_error_pending()){
if(qbevent){evnt(28169,21,"const_eval.bas");if(r)goto S_39074;}
do{
sub__echo(qbs_add(qbs_new_txt_len("exp$: ",6),_FUNC_EVALUATE_EXPRESSION_STRING_EXP));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,21,"const_eval.bas");}while(r);
}
do{
if(!qbevent)break;evnt(28169,23,"const_eval.bas");}while(r);
S_39078:;
do{
if(qbevent){evnt(28169,24,"const_eval.bas");if(r)goto S_39078;}
do{
SUB_FINDINNERPARENS(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,_FUNC_EVALUATE_EXPRESSION_LONG_C,_FUNC_EVALUATE_EXPRESSION_LONG_EVAL_E);
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,25,"const_eval.bas");}while(r);
S_39080:;
if ((-(*_FUNC_EVALUATE_EXPRESSION_LONG_EVAL_E> 0 ))||is_error_pending()){
if(qbevent){evnt(28169,27,"const_eval.bas");if(r)goto S_39080;}
S_39081:;
if ((-(*_FUNC_EVALUATE_EXPRESSION_LONG_C== 0 ))||is_error_pending()){
if(qbevent){evnt(28169,28,"const_eval.bas");if(r)goto S_39081;}
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EVALUATE_EXPRESSION,qbs_new_txt_len("ERROR - BAD () Count",20));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,28,"const_eval.bas");}while(r);
do{
goto exit_subfunc;
if(!qbevent)break;evnt(28169,28,"const_eval.bas");}while(r);
}
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EVAL,FUNC_GETELEMENTS(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,&(pass4704=*_FUNC_EVALUATE_EXPRESSION_LONG_C+ 1 ),&(pass4705=*_FUNC_EVALUATE_EXPRESSION_LONG_EVAL_E- 1 )));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,29,"const_eval.bas");}while(r);
do{
SUB_PARSEEXPRESSION2(_FUNC_EVALUATE_EXPRESSION_STRING_EVAL);
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,31,"const_eval.bas");}while(r);
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EVAL,qbs_ltrim(qbs_rtrim(_FUNC_EVALUATE_EXPRESSION_STRING_EVAL)));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,33,"const_eval.bas");}while(r);
S_39088:;
if ((qbs_cleanup(qbs_tmp_base,qbs_equal(qbs_left(_FUNC_EVALUATE_EXPRESSION_STRING_EVAL, 5 ),qbs_new_txt_len("ERROR",5))))||is_error_pending()){
if(qbevent){evnt(28169,34,"const_eval.bas");if(r)goto S_39088;}
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EVALUATE_EXPRESSION,_FUNC_EVALUATE_EXPRESSION_STRING_EVAL);
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,34,"const_eval.bas");}while(r);
do{
goto exit_subfunc;
if(!qbevent)break;evnt(28169,34,"const_eval.bas");}while(r);
}
do{
*_FUNC_EVALUATE_EXPRESSION_LONG_FUNCOP=FUNC_ISFUNCTIONIDENTIFIER(FUNC_GETELEMENT(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,&(pass4706=*_FUNC_EVALUATE_EXPRESSION_LONG_C- 1 )));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,38,"const_eval.bas");}while(r);
S_39093:;
if ((-(*_FUNC_EVALUATE_EXPRESSION_LONG_FUNCOP> 0 ))||is_error_pending()){
if(qbevent){evnt(28169,39,"const_eval.bas");if(r)goto S_39093;}
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EVAL,FUNC_EVALUATEFUNCTION(_FUNC_EVALUATE_EXPRESSION_LONG_FUNCOP,_FUNC_EVALUATE_EXPRESSION_STRING_EVAL));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,40,"const_eval.bas");}while(r);
S_39095:;
if ((qbs_cleanup(qbs_tmp_base,qbs_equal(qbs_left(_FUNC_EVALUATE_EXPRESSION_STRING_EVAL, 5 ),qbs_new_txt_len("ERROR",5))))||is_error_pending()){
if(qbevent){evnt(28169,41,"const_eval.bas");if(r)goto S_39095;}
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EVALUATE_EXPRESSION,_FUNC_EVALUATE_EXPRESSION_STRING_EVAL);
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,41,"const_eval.bas");}while(r);
do{
goto exit_subfunc;
if(!qbevent)break;evnt(28169,41,"const_eval.bas");}while(r);
}
do{
*_FUNC_EVALUATE_EXPRESSION_LONG_C=*_FUNC_EVALUATE_EXPRESSION_LONG_C- 1 ;
if(!qbevent)break;evnt(28169,43,"const_eval.bas");}while(r);
}
S_39101:;
if (( 0ll )||is_error_pending()){
if(qbevent){evnt(28169,46,"const_eval.bas");if(r)goto S_39101;}
do{
sub__echo(qbs_add(qbs_new_txt_len("eval$: ",7),_FUNC_EVALUATE_EXPRESSION_STRING_EVAL));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,46,"const_eval.bas");}while(r);
}
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_LEFTELE,FUNC_GETELEMENTS(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,&(pass4707= 1 ),&(pass4708=*_FUNC_EVALUATE_EXPRESSION_LONG_C- 1 )));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,47,"const_eval.bas");}while(r);
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_RIGHTELE,FUNC_GETELEMENTS(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,&(pass4709=*_FUNC_EVALUATE_EXPRESSION_LONG_EVAL_E+ 1 ),&(pass4710=FUNC_NUMELEMENTS(_FUNC_EVALUATE_EXPRESSION_STRING_EXP))));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,48,"const_eval.bas");}while(r);
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,_FUNC_EVALUATE_EXPRESSION_STRING_LEFTELE);
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,50,"const_eval.bas");}while(r);
S_39107:;
if ((qbs_cleanup(qbs_tmp_base,qbs_notequal(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,qbs_new_txt_len("",0))))||is_error_pending()){
if(qbevent){evnt(28169,51,"const_eval.bas");if(r)goto S_39107;}
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,qbs_add(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,__STRING1_SP));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,51,"const_eval.bas");}while(r);
}
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,qbs_add(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,_FUNC_EVALUATE_EXPRESSION_STRING_EVAL));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,52,"const_eval.bas");}while(r);
S_39111:;
if ((qbs_cleanup(qbs_tmp_base,qbs_notequal(_FUNC_EVALUATE_EXPRESSION_STRING_RIGHTELE,qbs_new_txt_len("",0))))||is_error_pending()){
if(qbevent){evnt(28169,53,"const_eval.bas");if(r)goto S_39111;}
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,qbs_add(qbs_add(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,__STRING1_SP),_FUNC_EVALUATE_EXPRESSION_STRING_RIGHTELE));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,53,"const_eval.bas");}while(r);
}
}
S_39115:;
dl_continue_4703:;
}while((!(-(*_FUNC_EVALUATE_EXPRESSION_LONG_EVAL_E== 0 )))&&(!is_error_pending()));
dl_exit_4703:;
if(qbevent){evnt(28169,55,"const_eval.bas");if(r)goto S_39115;}
S_39116:;
if (( 0ll )||is_error_pending()){
if(qbevent){evnt(28169,57,"const_eval.bas");if(r)goto S_39116;}
do{
sub__echo(qbs_add(qbs_add(qbs_add(qbs_new_txt_len("resulting exp$: ",16),_FUNC_EVALUATE_EXPRESSION_STRING_EXP),qbs_new_txt_len(", numelements:",14)),qbs_str((int32)(FUNC_NUMELEMENTS(_FUNC_EVALUATE_EXPRESSION_STRING_EXP)))));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,57,"const_eval.bas");}while(r);
}
S_39119:;
if ((qbs_cleanup(qbs_tmp_base,-(FUNC_NUMELEMENTS(_FUNC_EVALUATE_EXPRESSION_STRING_EXP)!= 1 )))||is_error_pending()){
if(qbevent){evnt(28169,58,"const_eval.bas");if(r)goto S_39119;}
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EVALUATE_EXPRESSION,qbs_new_txt_len("ERROR - Invalid characters in expression",40));
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,59,"const_eval.bas");}while(r);
do{
goto exit_subfunc;
if(!qbevent)break;evnt(28169,59,"const_eval.bas");}while(r);
}
S_39123:;
if ((qbs_cleanup(qbs_tmp_base,FUNC_ELEMENTISSTRING(_FUNC_EVALUATE_EXPRESSION_STRING_EXP)))||is_error_pending()){
if(qbevent){evnt(28169,62,"const_eval.bas");if(r)goto S_39123;}
do{
*(int32*)(((char*)_FUNC_EVALUATE_EXPRESSION_UDT_NUM)+((0+56)))=*__LONG_STRINGTYPE;
if(!qbevent)break;evnt(28169,63,"const_eval.bas");}while(r);
do{
qbs_set(*((qbs**)((char*)(_FUNC_EVALUATE_EXPRESSION_UDT_NUM)+((0+48)))),_FUNC_EVALUATE_EXPRESSION_STRING_EXP);
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,64,"const_eval.bas");}while(r);
}else{
do{
*(int32*)(((char*)_FUNC_EVALUATE_EXPRESSION_UDT_NUM)+((0+56)))=FUNC_ELEMENTGETNUMERICVALUE(_FUNC_EVALUATE_EXPRESSION_STRING_EXP,(long double*)(void*)( ((char*)(_FUNC_EVALUATE_EXPRESSION_UDT_NUM)) + ((0+0)) ),(int64*)(void*)( ((char*)(_FUNC_EVALUATE_EXPRESSION_UDT_NUM)) + ((0+32)) ),(uint64*)(void*)( ((char*)(_FUNC_EVALUATE_EXPRESSION_UDT_NUM)) + ((0+40)) ));
if(!qbevent)break;evnt(28169,66,"const_eval.bas");}while(r);
}
do{
qbs_set(_FUNC_EVALUATE_EXPRESSION_STRING_EVALUATE_EXPRESSION,_FUNC_EVALUATE_EXPRESSION_STRING_EXP);
qbs_cleanup(qbs_tmp_base,0);
if(!qbevent)break;evnt(28169,69,"const_eval.bas");}while(r);
exit_subfunc:;
free_mem_lock(sf_mem_lock);
#include "free206.txt"
if ((tmp_mem_static_pointer>=mem_static)&&(tmp_mem_static_pointer<=mem_static_limit)) mem_static_pointer=tmp_mem_static_pointer; else mem_static_pointer=mem_static;
cmem_sp=tmp_cmem_sp;
qbs_maketmp(_FUNC_EVALUATE_EXPRESSION_STRING_EVALUATE_EXPRESSION);return _FUNC_EVALUATE_EXPRESSION_STRING_EVALUATE_EXPRESSION;
}
