#line 255 "utilities/const_eval.bas"
int32 FUNC_LOGICALIMP(qbs*_FUNC_LOGICALIMP_STRING_EXP,void*_FUNC_LOGICALIMP_UDT_STATE){
#line 255 "utilities/const_eval.bas"
qbs *tqbs;
#line 255 "utilities/const_eval.bas"
ptrszint tmp_long;
#line 255 "utilities/const_eval.bas"
int32 tmp_fileno;
#line 255 "utilities/const_eval.bas"
uint32 qbs_tmp_base=qbs_tmp_list_nexti;
#line 255 "utilities/const_eval.bas"
uint8 *tmp_mem_static_pointer=mem_static_pointer;
#line 255 "utilities/const_eval.bas"
uint32 tmp_cmem_sp=cmem_sp;
#line 255 "utilities/const_eval.bas"
#include "data246.txt"
#line 255 "utilities/const_eval.bas"
mem_lock *sf_mem_lock;
#line 255 "utilities/const_eval.bas"
new_mem_lock();
#line 255 "utilities/const_eval.bas"
sf_mem_lock=mem_lock_tmp;
#line 255 "utilities/const_eval.bas"
sf_mem_lock->type=3;
#line 255 "utilities/const_eval.bas"
libqb_check_stack();
#line 255 "utilities/const_eval.bas"
if (is_error_pending()) goto exit_subfunc;
#line 256 "utilities/const_eval.bas"
S_40738:;
#line 256 "utilities/const_eval.bas"
if (( 0ll )||is_error_pending()){
#line 256 "utilities/const_eval.bas"
if(qbevent){evnt(28806,256,"const_eval.bas");if(r)goto S_40738;}
#line 256 "utilities/const_eval.bas"
do{
#line 256 "utilities/const_eval.bas"
sub__echo(qbs_new_txt_len("LogicalImp",10));
#line 256 "utilities/const_eval.bas"
qbs_cleanup(qbs_tmp_base,0);
#line 256 "utilities/const_eval.bas"
if(!qbevent)break;evnt(28806,256,"const_eval.bas");}while(r);
#line 256 "utilities/const_eval.bas"
}
#line 257 "utilities/const_eval.bas"
S_40741:;
#line 257 "utilities/const_eval.bas"
if ((qbs_cleanup(qbs_tmp_base,-(FUNC_LOGICALEQV(_FUNC_LOGICALIMP_STRING_EXP,(void*)( ((char*)(_FUNC_LOGICALIMP_UDT_STATE)) + ((0+0)) ))== 0 )))||is_error_pending()){
#line 257 "utilities/const_eval.bas"
if(qbevent){evnt(28806,257,"const_eval.bas");if(r)goto S_40741;}
#line 257 "utilities/const_eval.bas"
do{
#line 257 "utilities/const_eval.bas"
goto exit_subfunc;
#line 257 "utilities/const_eval.bas"
if(!qbevent)break;evnt(28806,257,"const_eval.bas");}while(r);
#line 257 "utilities/const_eval.bas"
}
#line 259 "utilities/const_eval.bas"
do{
#line 259 "utilities/const_eval.bas"
if(!qbevent)break;evnt(28806,259,"const_eval.bas");}while(r);
#line 260 "utilities/const_eval.bas"
do{
#line 260 "utilities/const_eval.bas"
memcpy((((char*)_FUNC_LOGICALIMP_UDT_NUM)+((0+0))+((0+0))),(((char*)_FUNC_LOGICALIMP_UDT_STATE)+((0+8))+((0+0))),32);
#line 260 "utilities/const_eval.bas"
memcpy((((char*)_FUNC_LOGICALIMP_UDT_NUM)+((0+0))+((0+32))),(((char*)_FUNC_LOGICALIMP_UDT_STATE)+((0+8))+((0+32))),8);
#line 260 "utilities/const_eval.bas"
memcpy((((char*)_FUNC_LOGICALIMP_UDT_NUM)+((0+0))+((0+40))),(((char*)_FUNC_LOGICALIMP_UDT_STATE)+((0+8))+((0+40))),8);
#line 260 "utilities/const_eval.bas"
qbs_set(*(qbs**)(((char*)_FUNC_LOGICALIMP_UDT_NUM)+((0+0))+((0+48))),*(qbs**)(((char*)_FUNC_LOGICALIMP_UDT_STATE)+((0+8))+((0+48))));
#line 260 "utilities/const_eval.bas"
memcpy((((char*)_FUNC_LOGICALIMP_UDT_NUM)+((0+0))+((0+56))),(((char*)_FUNC_LOGICALIMP_UDT_STATE)+((0+8))+((0+56))),4);
#line 260 "utilities/const_eval.bas"
if(!qbevent)break;evnt(28806,260,"const_eval.bas");}while(r);
#line 262 "utilities/const_eval.bas"
S_40746:;
#line 262 "utilities/const_eval.bas"
do{
#line 262 "utilities/const_eval.bas"
if(qbevent){evnt(28806,262,"const_eval.bas");if(r)goto S_40746;}
#line 263 "utilities/const_eval.bas"
do{
#line 263 "utilities/const_eval.bas"
qbs_set(_FUNC_LOGICALIMP_STRING_ELE,FUNC_PEEKNEXTELEMENT(_FUNC_LOGICALIMP_STRING_EXP,(int32*)(void*)( ((char*)(_FUNC_LOGICALIMP_UDT_STATE)) + ((0+0)) ),(int32*)(void*)( ((char*)(_FUNC_LOGICALIMP_UDT_STATE)) + ((0+4)) )));
#line 263 "utilities/const_eval.bas"
qbs_cleanup(qbs_tmp_base,0);
#line 263 "utilities/const_eval.bas"
if(!qbevent)break;evnt(28806,263,"const_eval.bas");}while(r);
#line 264 "utilities/const_eval.bas"
S_40748:;
#line 264 "utilities/const_eval.bas"
if ((qbs_cleanup(qbs_tmp_base,qbs_equal(_FUNC_LOGICALIMP_STRING_ELE,qbs_new_txt_len("IMP",3))))||is_error_pending()){
#line 264 "utilities/const_eval.bas"
if(qbevent){evnt(28806,264,"const_eval.bas");if(r)goto S_40748;}
#line 265 "utilities/const_eval.bas"
do{
#line 265 "utilities/const_eval.bas"
qbs_set(_FUNC_LOGICALIMP_STRING_ELE,FUNC_GETNEXTELEMENT(_FUNC_LOGICALIMP_STRING_EXP,(int32*)(void*)( ((char*)(_FUNC_LOGICALIMP_UDT_STATE)) + ((0+0)) ),(int32*)(void*)( ((char*)(_FUNC_LOGICALIMP_UDT_STATE)) + ((0+4)) )));
#line 265 "utilities/const_eval.bas"
qbs_cleanup(qbs_tmp_base,0);
#line 265 "utilities/const_eval.bas"
if(!qbevent)break;evnt(28806,265,"const_eval.bas");}while(r);
#line 266 "utilities/const_eval.bas"
S_40750:;
#line 266 "utilities/const_eval.bas"
if ((qbs_cleanup(qbs_tmp_base,-(FUNC_LOGICALEQV(_FUNC_LOGICALIMP_STRING_EXP,(void*)( ((char*)(_FUNC_LOGICALIMP_UDT_STATE)) + ((0+0)) ))== 0 )))||is_error_pending()){
#line 266 "utilities/const_eval.bas"
if(qbevent){evnt(28806,266,"const_eval.bas");if(r)goto S_40750;}
#line 266 "utilities/const_eval.bas"
do{
#line 266 "utilities/const_eval.bas"
SUB_FIXUPERRORMESSAGE((void*)( ((char*)(_FUNC_LOGICALIMP_UDT_STATE)) + ((0+0)) ),qbs_new_txt_len("IMP",3));
#line 266 "utilities/const_eval.bas"
qbs_cleanup(qbs_tmp_base,0);
#line 266 "utilities/const_eval.bas"
if(!qbevent)break;evnt(28806,266,"const_eval.bas");}while(r);
#line 266 "utilities/const_eval.bas"
do{
#line 266 "utilities/const_eval.bas"
goto exit_subfunc;
#line 266 "utilities/const_eval.bas"
if(!qbevent)break;evnt(28806,266,"const_eval.bas");}while(r);
#line 266 "utilities/const_eval.bas"
}
#line 268 "utilities/const_eval.bas"
S_40754:;
#line 268 "utilities/const_eval.bas"
if (((*(int32*)(((char*)_FUNC_LOGICALIMP_UDT_NUM)+((0+56)))&*__LONG_ISUNSIGNED)|(*(int32*)(((char*)_FUNC_LOGICALIMP_UDT_STATE)+((0+64)))&*__LONG_ISUNSIGNED))||is_error_pending()){
#line 268 "utilities/const_eval.bas"
if(qbevent){evnt(28806,268,"const_eval.bas");if(r)goto S_40754;}
#line 269 "utilities/const_eval.bas"
do{
#line 269 "utilities/const_eval.bas"
SUB_PARSENUMSETUI((void*)( ((char*)(_FUNC_LOGICALIMP_UDT_NUM)) + ((0+0)) ),&(pass4042=*__LONG_UINTEGER64TYPE-*__LONG_ISPOINTER),&(pass4043=~*(uint64*)(((char*)_FUNC_LOGICALIMP_UDT_NUM)+((0+40)))|*(uint64*)(((char*)_FUNC_LOGICALIMP_UDT_STATE)+((0+48)))));
#line 269 "utilities/const_eval.bas"
if(!qbevent)break;evnt(28806,269,"const_eval.bas");}while(r);
#line 270 "utilities/const_eval.bas"
}else{
#line 271 "utilities/const_eval.bas"
do{
#line 271 "utilities/const_eval.bas"
SUB_PARSENUMSETI((void*)( ((char*)(_FUNC_LOGICALIMP_UDT_NUM)) + ((0+0)) ),&(pass4044=*__LONG_INTEGER64TYPE-*__LONG_ISPOINTER),&(pass4045=~*(int64*)(((char*)_FUNC_LOGICALIMP_UDT_NUM)+((0+32)))|*(int64*)(((char*)_FUNC_LOGICALIMP_UDT_STATE)+((0+40)))));
#line 271 "utilities/const_eval.bas"
if(!qbevent)break;evnt(28806,271,"const_eval.bas");}while(r);
#line 272 "utilities/const_eval.bas"
}
#line 273 "utilities/const_eval.bas"
}else{
#line 274 "utilities/const_eval.bas"
do{
#line 274 "utilities/const_eval.bas"
memcpy((((char*)_FUNC_LOGICALIMP_UDT_STATE)+((0+8))+((0+0))),(((char*)_FUNC_LOGICALIMP_UDT_NUM)+((0+0))+((0+0))),32);
#line 274 "utilities/const_eval.bas"
memcpy((((char*)_FUNC_LOGICALIMP_UDT_STATE)+((0+8))+((0+32))),(((char*)_FUNC_LOGICALIMP_UDT_NUM)+((0+0))+((0+32))),8);
#line 274 "utilities/const_eval.bas"
memcpy((((char*)_FUNC_LOGICALIMP_UDT_STATE)+((0+8))+((0+40))),(((char*)_FUNC_LOGICALIMP_UDT_NUM)+((0+0))+((0+40))),8);
#line 274 "utilities/const_eval.bas"
qbs_set(*(qbs**)(((char*)_FUNC_LOGICALIMP_UDT_STATE)+((0+8))+((0+48))),*(qbs**)(((char*)_FUNC_LOGICALIMP_UDT_NUM)+((0+0))+((0+48))));
#line 274 "utilities/const_eval.bas"
memcpy((((char*)_FUNC_LOGICALIMP_UDT_STATE)+((0+8))+((0+56))),(((char*)_FUNC_LOGICALIMP_UDT_NUM)+((0+0))+((0+56))),4);
#line 274 "utilities/const_eval.bas"
if(!qbevent)break;evnt(28806,274,"const_eval.bas");}while(r);
#line 275 "utilities/const_eval.bas"
do{
#line 275 "utilities/const_eval.bas"
*_FUNC_LOGICALIMP_LONG_LOGICALIMP= -1 ;
#line 275 "utilities/const_eval.bas"
if(!qbevent)break;evnt(28806,275,"const_eval.bas");}while(r);
#line 276 "utilities/const_eval.bas"
do{
#line 276 "utilities/const_eval.bas"
goto exit_subfunc;
#line 276 "utilities/const_eval.bas"
if(!qbevent)break;evnt(28806,276,"const_eval.bas");}while(r);
#line 277 "utilities/const_eval.bas"
}
#line 278 "utilities/const_eval.bas"
dl_continue_4041:;
#line 278 "utilities/const_eval.bas"
}while(1);
#line 278 "utilities/const_eval.bas"
dl_exit_4041:;
#line 279 "utilities/const_eval.bas"
exit_subfunc:;
#line 279 "utilities/const_eval.bas"
free_mem_lock(sf_mem_lock);
#line 279 "utilities/const_eval.bas"
#include "free246.txt"
#line 279 "utilities/const_eval.bas"
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;
#line 279 "utilities/const_eval.bas"
cmem_sp=tmp_cmem_sp;
#line 279 "utilities/const_eval.bas"
return *_FUNC_LOGICALIMP_LONG_LOGICALIMP;
#line 279 "utilities/const_eval.bas"
}
