stage3/datatype_functions.cc
changeset 468 46f8154d506e
parent 467 4910eaa1206a
child 474 85cacf5298fb
equal deleted inserted replaced
467:4910eaa1206a 468:46f8154d506e
   219 /* intersect the candidate_datatype lists of all prev_il_intructions, and set the local candidate_datatype list to the result! */
   219 /* intersect the candidate_datatype lists of all prev_il_intructions, and set the local candidate_datatype list to the result! */
   220 void intersect_prev_candidate_datatype_lists(il_instruction_c *symbol) {
   220 void intersect_prev_candidate_datatype_lists(il_instruction_c *symbol) {
   221 	if (symbol->prev_il_instruction.empty())
   221 	if (symbol->prev_il_instruction.empty())
   222 		return;
   222 		return;
   223 	
   223 	
   224 	copy_candidate_datatype_list(symbol->prev_il_instruction[0] /*from*/, symbol /*to*/);
   224 	symbol->candidate_datatypes = symbol->prev_il_instruction[0]->candidate_datatypes;
   225 	for (unsigned int i = 1; i < symbol->prev_il_instruction.size(); i++) {
   225 	for (unsigned int i = 1; i < symbol->prev_il_instruction.size(); i++) {
   226 		intersect_candidate_datatype_list(symbol /*origin, dest.*/, symbol->prev_il_instruction[i] /*with*/);
   226 		intersect_candidate_datatype_list(symbol /*origin, dest.*/, symbol->prev_il_instruction[i] /*with*/);
   227 	}  
   227 	}  
   228 }
   228 }
   229 
   229