stage3/constant_folding.cc
changeset 602 456add88d64c
parent 601 683ae5444237
child 603 a45a62dd6df9
equal deleted inserted replaced
601:683ae5444237 602:456add88d64c
   717 /***********************/
   717 /***********************/
   718 void *constant_folding_c::visit(or_expression_c *symbol) {
   718 void *constant_folding_c::visit(or_expression_c *symbol) {
   719 	symbol->l_exp->accept(*this);
   719 	symbol->l_exp->accept(*this);
   720 	symbol->r_exp->accept(*this);
   720 	symbol->r_exp->accept(*this);
   721 	DO_BINARY_OPER(  bool, ||, bool);
   721 	DO_BINARY_OPER(  bool, ||, bool);
   722 	DO_BINARY_OPER(uint64, | , bool);
   722 	DO_BINARY_OPER(uint64, | , uint64);
   723 	return NULL;
   723 	return NULL;
   724 }
   724 }
   725 
   725 
   726 
   726 
   727 void *constant_folding_c::visit(xor_expression_c *symbol) {
   727 void *constant_folding_c::visit(xor_expression_c *symbol) {