Index: /issm/trunk-jpl/src/c/classes/Elements/Penta.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Penta.cpp	(revision 25318)
+++ /issm/trunk-jpl/src/c/classes/Elements/Penta.cpp	(revision 25319)
@@ -984,6 +984,6 @@
 		control_gradient->Serve(1,&this->lid);
 
-		vector_control->SetValue(this->sid,control_value->element_values[0],ADD_VAL);
-		vector_gradient->SetValue(this->sid,control_gradient->element_values[0],ADD_VAL);
+		vector_control->SetValue(this->sid,reCast<IssmPDouble>(control_value->element_values[0]),ADD_VAL);
+		vector_gradient->SetValue(this->sid,reCast<IssmPDouble>(control_gradient->element_values[0]),ADD_VAL);
 	}
 	else{
Index: /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp	(revision 25318)
+++ /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp	(revision 25319)
@@ -1179,6 +1179,6 @@
 		control_gradient->Serve(1,&this->lid);
 
-		vector_control->SetValue(this->sid,control_value->element_values[0],ADD_VAL);
-		vector_gradient->SetValue(this->sid,control_gradient->element_values[0],ADD_VAL);
+		vector_control->SetValue(this->sid,reCast<IssmPDouble>(control_value->element_values[0]),ADD_VAL);
+		vector_gradient->SetValue(this->sid,reCast<IssmPDouble>(control_gradient->element_values[0]),ADD_VAL);
 	}
 	else{
