stage3/datatype_functions.cc
changeset 447 aad0f3e5df33
parent 445 e6c34ee82954
child 457 67d8b07bac22
--- a/stage3/datatype_functions.cc	Fri Feb 17 19:47:23 2012 +0000
+++ b/stage3/datatype_functions.cc	Fri Feb 17 19:47:58 2012 +0000
@@ -193,7 +193,10 @@
 void copy_candidate_datatype_list(symbol_c *from, symbol_c *to) {
 	if ((NULL == from) || (NULL == to))
 		return;
-	std::copy(from->candidate_datatypes.begin(), from->candidate_datatypes.end(), to->candidate_datatypes.begin());
+	for(unsigned int i = 0; i < from->candidate_datatypes.size(); i++)
+		to->candidate_datatypes.push_back(from->candidate_datatypes[i]);
+	/* for some reason, the following alternative implementation results in a segmentation fault! I am not going to bother with this for now! */
+// 	std::copy(from->candidate_datatypes.begin(), from->candidate_datatypes.end(), to->candidate_datatypes.begin());
 }