Index: /issm/trunk-jpl/src/c/classes/FemModel.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 14890)
+++ /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 14891)
@@ -641,5 +641,5 @@
 	xDelete<IssmDouble>(thickness);
 	xDelete<IssmDouble>(bed);
-	xdelete(&vz);
+	delete vz;
 	return 1;
 }
@@ -887,11 +887,11 @@
 	/*Assign output pointers: */
 	if(pKff) *pKff=Kff;
-	else      xdelete(&Kff);
+	else      delete Kff;
 	if(pKfs) *pKfs=Kfs;
-	else      xdelete(&Kfs);
+	else      delete Kfs;
 	if(ppf)  *ppf=pf;
-	else      xdelete(&pf);
+	else      delete pf;
 	if(pdf)  *pdf=df;
-	else      xdelete(&df);
+	else      delete df;
 	if(pkmax) *pkmax=kmax;
 }
Index: /issm/trunk-jpl/src/c/classes/objects/Params/MatrixParam.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/objects/Params/MatrixParam.cpp	(revision 14890)
+++ /issm/trunk-jpl/src/c/classes/objects/Params/MatrixParam.cpp	(revision 14891)
@@ -39,5 +39,5 @@
 /*FUNCTION MatrixParam::~MatrixParam(){{{*/
 MatrixParam::~MatrixParam(){
-	xdelete(&value);
+	delete value;
 }
 /*}}}*/
@@ -98,5 +98,5 @@
 
 	/*avoid leak: */
-	xdelete(&value);
+	delete value;
 
 	/*copy: */
Index: /issm/trunk-jpl/src/c/solvers/solver_adjoint_linear.cpp
===================================================================
--- /issm/trunk-jpl/src/c/solvers/solver_adjoint_linear.cpp	(revision 14890)
+++ /issm/trunk-jpl/src/c/solvers/solver_adjoint_linear.cpp	(revision 14891)
@@ -28,8 +28,8 @@
 	femmodel->SystemMatricesx(&Kff, &Kfs, &pf, &df, NULL);
 	CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type);
-	Reduceloadx(pf, Kfs, ys,true); xdelete(&Kfs); //true means spc = 0
-	Solverx(&uf, Kff, pf, NULL, df, femmodel->parameters); xdelete(&Kff); xdelete(&pf); xdelete(&df);
-	Mergesolutionfromftogx(&ug, uf,ys,femmodel->nodes,femmodel->parameters,true); xdelete(&uf);xdelete(&ys); //true means spc0
+	Reduceloadx(pf, Kfs, ys,true); delete Kfs; //true means spc = 0
+	Solverx(&uf, Kff, pf, NULL, df, femmodel->parameters); delete Kff; delete pf; delete df;
+	Mergesolutionfromftogx(&ug, uf,ys,femmodel->nodes,femmodel->parameters,true); delete ys; //true means spc0
 	InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug);
-	xdelete(&ug); xdelete(&uf);
+	delete ug; delete uf;
 }
Index: /issm/trunk-jpl/src/c/solvers/solver_hydro_nonlinear.cpp
===================================================================
--- /issm/trunk-jpl/src/c/solvers/solver_hydro_nonlinear.cpp	(revision 14890)
+++ /issm/trunk-jpl/src/c/solvers/solver_hydro_nonlinear.cpp	(revision 14891)
@@ -48,9 +48,9 @@
 			femmodel->SystemMatricesx(&Kff, &Kfs, &pf,&df, &sediment_kmax);
 			CreateNodalConstraintsx(&ys,femmodel->nodes,HydrologyDCInefficientAnalysisEnum);
-			Reduceloadx(pf,Kfs,ys); xdelete(&Kfs); xdelete(&uf);
+			Reduceloadx(pf,Kfs,ys); delete Kfs; delete uf;
 			Solverx(&uf, Kff, pf,uf_old, df, femmodel->parameters);
-			xdelete(&uf_old); uf_old=uf->Duplicate();
-			xdelete(&Kff);xdelete(&pf);xdelete(&ug); xdelete(&df);
-			Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters); xdelete(&ys);
+			delete uf_old; uf_old=uf->Duplicate();
+			delete Kff; delete pf; delete ug; delete df;
+			Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters); delete ys;
 			InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ug);
 
@@ -85,9 +85,9 @@
 			femmodel->SystemMatricesx(&Kff, &Kfs, &pf,&df,NULL);
 			CreateNodalConstraintsx(&ys,femmodel->nodes,HydrologyDCEfficientAnalysisEnum);
-			Reduceloadx(pf,Kfs,ys); xdelete(&Kfs); xdelete(&uf);
+			Reduceloadx(pf,Kfs,ys); delete Kfs; delete uf;
 			Solverx(&uf, Kff, pf,uf_old, df, femmodel->parameters);
-			xdelete(&uf_old); uf_old=uf->Duplicate();
-			xdelete(&Kff);xdelete(&pf);xdelete(&ug); xdelete(&df);
-			Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters); xdelete(&ys);
+			delete uf_old; uf_old=uf->Duplicate();
+			delete Kff;delete pf; delete ug; delete df;
+			Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters); delete ys;
 			InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ug);
 
@@ -118,7 +118,6 @@
 
 	/*Free ressources: */
-	xdelete(&ug);
-	xdelete(&uf);
-	xdelete(&uf_old);
-	xdelete(&ys);
+	delete ug;
+	delete uf;
+	delete uf_old;
 }
Index: /issm/trunk-jpl/src/c/solvers/solver_linear.cpp
===================================================================
--- /issm/trunk-jpl/src/c/solvers/solver_linear.cpp	(revision 14890)
+++ /issm/trunk-jpl/src/c/solvers/solver_linear.cpp	(revision 14891)
@@ -26,7 +26,7 @@
 	femmodel->SystemMatricesx(&Kff, &Kfs, &pf, &df, NULL);
 	CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type);
-	Reduceloadx(pf, Kfs, ys); xdelete(&Kfs);
+	Reduceloadx(pf, Kfs, ys); delete Kfs;
 	Solverx(&uf, Kff, pf, NULL, df, femmodel->parameters); 
-	xdelete(&Kff); xdelete(&pf); xdelete(&df);
+	delete Kff; delete pf; delete df;
 //#ifdef  _HAVE_ADOLC_
 //        for (int i =0; i<uf->svector->M; ++i) {
@@ -34,6 +34,6 @@
 //        }
 //#endif
-	Mergesolutionfromftogx(&ug, uf,ys,femmodel->nodes,femmodel->parameters);xdelete(&uf); xdelete(&ys);
+	Mergesolutionfromftogx(&ug, uf,ys,femmodel->nodes,femmodel->parameters);delete uf; delete ys;
 	InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug); 
-	xdelete(&ug);  xdelete(&uf);
+	delete ug;  
 }
Index: /issm/trunk-jpl/src/c/solvers/solver_newton.cpp
===================================================================
--- /issm/trunk-jpl/src/c/solvers/solver_newton.cpp	(revision 14890)
+++ /issm/trunk-jpl/src/c/solvers/solver_newton.cpp	(revision 14891)
@@ -53,6 +53,6 @@
 	for(;;){
 
-		xdelete(&old_ug);old_ug=ug;
-		xdelete(&old_uf);old_uf=uf;
+		delete old_ug;old_ug=ug;
+		delete old_uf;old_uf=uf;
 
 		/*Solver forward model*/
@@ -60,31 +60,31 @@
 			femmodel->SystemMatricesx(&Kff, &Kfs, &pf, &df, NULL);
 			CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type);
-			Reduceloadx(pf,Kfs,ys);xdelete(&Kfs);
-			Solverx(&uf,Kff,pf,old_uf,df,femmodel->parameters);xdelete(&df);
-			Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters);xdelete(&ys);
-			InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ug);xdelete(&ug);
-			xdelete(&old_ug);old_ug=ug;
-			xdelete(&old_uf);old_uf=uf;
+			Reduceloadx(pf,Kfs,ys);delete Kfs;
+			Solverx(&uf,Kff,pf,old_uf,df,femmodel->parameters);delete df;
+			Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters);delete ys;
+			InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ug);delete ug;
+			delete old_ug;old_ug=ug;
+			delete old_uf;old_uf=uf;
 		}
 		uf=old_uf->Duplicate(); old_uf->Copy(uf);
 
 		/*Prepare next iteration using Newton's method*/
-		femmodel->SystemMatricesx(&Kff, &Kfs, &pf, &df, NULL);xdelete(&df);
+		femmodel->SystemMatricesx(&Kff, &Kfs, &pf, &df, NULL);delete df;
 		CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type);
-		Reduceloadx(pf,Kfs,ys);xdelete(&Kfs);
+		Reduceloadx(pf,Kfs,ys);delete Kfs;
 
 		pJf=pf->Duplicate();
-		Kff->MatMult(uf,pJf);// xdelete(&Kff);
-		pJf->Scale(-1.0); pJf->AXPY(pf,+1.0);     //xdelete(&pf);
+		Kff->MatMult(uf,pJf);// delete Kff);
+		pJf->Scale(-1.0); pJf->AXPY(pf,+1.0);     //delete pf);
 
 		femmodel->CreateJacobianMatrixx(&Jff,kmax);
-		Solverx(&duf,Jff,pJf,NULL,NULL,femmodel->parameters); xdelete(&Jff); xdelete(&pJf);
-		uf->AXPY(duf, 1.0); xdelete(&duf);
-		Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters);xdelete(&ys);
+		Solverx(&duf,Jff,pJf,NULL,NULL,femmodel->parameters); delete Jff; delete pJf;
+		uf->AXPY(duf, 1.0); delete duf;
+		Mergesolutionfromftogx(&ug,uf,ys,femmodel->nodes,femmodel->parameters);delete ys;
 		InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ug);
 
 		/*Check convergence*/
 		convergence(&converged,Kff,pf,uf,old_uf,femmodel->parameters); 
-		xdelete(&Kff); xdelete(&pf);
+		delete Kff; delete pf;
 		if(converged==true){	
 			bool max_iteration_state=false;
@@ -109,7 +109,7 @@
 
 	/*clean-up*/
-	xdelete(&uf);
-	xdelete(&ug);
-	xdelete(&old_ug);
-	xdelete(&old_uf);
+	delete uf;
+	delete ug;
+	delete old_ug;
+	delete old_uf;
 }
Index: /issm/trunk-jpl/src/c/solvers/solver_nonlinear.cpp
===================================================================
--- /issm/trunk-jpl/src/c/solvers/solver_nonlinear.cpp	(revision 14890)
+++ /issm/trunk-jpl/src/c/solvers/solver_nonlinear.cpp	(revision 14891)
@@ -60,14 +60,14 @@
 
 		//save pointer to old velocity
-		xdelete(&old_ug);old_ug=ug;
-		xdelete(&old_uf);old_uf=uf;
+		delete old_ug;old_ug=ug;
+		delete old_uf;old_uf=uf;
 
 		femmodel->SystemMatricesx(&Kff, &Kfs, &pf, &df, NULL);
 		CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type);
-		Reduceloadx(pf, Kfs, ys); xdelete(&Kfs);
+		Reduceloadx(pf, Kfs, ys); delete Kfs;
 		Solverx(&uf, Kff, pf, old_uf, df, femmodel->parameters);
-		Mergesolutionfromftogx(&ug, uf,ys,femmodel->nodes,femmodel->parameters);xdelete(&ys);
+		Mergesolutionfromftogx(&ug, uf,ys,femmodel->nodes,femmodel->parameters);delete ys;
 
-		convergence(&converged,Kff,pf,uf,old_uf,femmodel->parameters); xdelete(&Kff); xdelete(&pf); xdelete(&df);
+		convergence(&converged,Kff,pf,uf,old_uf,femmodel->parameters); delete Kff; delete pf; delete df;
 		InputUpdateFromConstantx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,converged,ConvergedEnum);
 		InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug);
@@ -113,7 +113,7 @@
 		femmodel->loads=savedloads;
 	}
-	xdelete(&uf);
-	xdelete(&ug);
-	xdelete(&old_ug);
-	xdelete(&old_uf);
+	delete uf;
+	delete ug;
+	delete old_ug;
+	delete old_uf;
 }
Index: /issm/trunk-jpl/src/c/solvers/solver_stokescoupling_nonlinear.cpp
===================================================================
--- /issm/trunk-jpl/src/c/solvers/solver_stokescoupling_nonlinear.cpp	(revision 14890)
+++ /issm/trunk-jpl/src/c/solvers/solver_stokescoupling_nonlinear.cpp	(revision 14891)
@@ -57,18 +57,18 @@
 		//Update once again the solution to make sure that vx and vxold are similar (for next step in transient or steadystate)
 		InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug_horiz);
-		xdelete(&ug_horiz);
+		delete ug_horiz;
 
 		//save pointer to old velocity
-		xdelete(&old_uf_horiz); old_uf_horiz=uf_horiz;
+		delete old_uf_horiz; old_uf_horiz=uf_horiz;
 
 		/*solve: */
 		femmodel->SystemMatricesx(&Kff_horiz, &Kfs_horiz, &pf_horiz, &df_horiz, NULL);
 		CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type);
-		Reduceloadx(pf_horiz, Kfs_horiz, ys); xdelete(&Kfs_horiz);
+		Reduceloadx(pf_horiz, Kfs_horiz, ys); delete Kfs_horiz;
 		Solverx(&uf_horiz, Kff_horiz, pf_horiz, old_uf_horiz, df_horiz,femmodel->parameters);
-		Mergesolutionfromftogx(&ug_horiz, uf_horiz,ys,femmodel->nodes,femmodel->parameters); xdelete(&ys);
+		Mergesolutionfromftogx(&ug_horiz, uf_horiz,ys,femmodel->nodes,femmodel->parameters); delete ys;
 		InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug_horiz);
 
-		convergence(&converged,Kff_horiz,pf_horiz,uf_horiz,old_uf_horiz,femmodel->parameters); xdelete(&Kff_horiz); xdelete(&pf_horiz); xdelete(&df_horiz);
+		convergence(&converged,Kff_horiz,pf_horiz,uf_horiz,old_uf_horiz,femmodel->parameters); delete Kff_horiz; delete pf_horiz; delete df_horiz;
 
 		/*Second compute vertical velocity: */
@@ -79,9 +79,9 @@
 		femmodel->SystemMatricesx(&Kff_vert, &Kfs_vert, &pf_vert,  &df_vert,NULL);
 		CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type);
-		Reduceloadx(pf_vert, Kfs_vert, ys); xdelete(&Kfs_vert);
-		Solverx(&uf_vert, Kff_vert, pf_vert, NULL, df_vert,femmodel->parameters); xdelete(&Kff_vert); xdelete(&pf_vert); xdelete(&df_vert);
-		Mergesolutionfromftogx(&ug_vert, uf_vert,ys,femmodel->nodes,femmodel->parameters);xdelete(&uf_vert); xdelete(&ys); 
+		Reduceloadx(pf_vert, Kfs_vert, ys); delete Kfs_vert;
+		Solverx(&uf_vert, Kff_vert, pf_vert, NULL, df_vert,femmodel->parameters); delete Kff_vert; delete pf_vert; delete df_vert;
+		Mergesolutionfromftogx(&ug_vert, uf_vert,ys,femmodel->nodes,femmodel->parameters);delete uf_vert; delete ys; 
 		InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,ug_vert);
-		xdelete(&ug_vert); xdelete(&uf_vert);
+		delete ug_vert; delete uf_vert;
 
 		/*Increase count: */
@@ -95,7 +95,7 @@
 
 	/*clean-up*/
-	xdelete(&old_uf_horiz);
-	xdelete(&uf_horiz);
-	xdelete(&ug_horiz);
-	xdelete(&ys);
+	delete old_uf_horiz;
+	delete uf_horiz;
+	delete ug_horiz;
+	delete ys;
 }
Index: /issm/trunk-jpl/src/c/solvers/solver_thermal_nonlinear.cpp
===================================================================
--- /issm/trunk-jpl/src/c/solvers/solver_thermal_nonlinear.cpp	(revision 14890)
+++ /issm/trunk-jpl/src/c/solvers/solver_thermal_nonlinear.cpp	(revision 14891)
@@ -51,9 +51,9 @@
 		femmodel->SystemMatricesx(&Kff, &Kfs, &pf,&df, &melting_offset);
 		CreateNodalConstraintsx(&ys,femmodel->nodes,configuration_type);
-		Reduceloadx(pf, Kfs, ys); xdelete(&Kfs); xdelete(&tf);
+		Reduceloadx(pf, Kfs, ys); delete Kfs; delete tf;
 		Solverx(&tf, Kff, pf,tf_old, df, femmodel->parameters);
-		xdelete(&tf_old); tf_old=tf->Duplicate();
-		xdelete(&Kff);xdelete(&pf);xdelete(&tg); xdelete(&df);
-		Mergesolutionfromftogx(&tg, tf,ys,femmodel->nodes,femmodel->parameters); xdelete(&ys);
+		delete tf_old; tf_old=tf->Duplicate();
+		delete Kff;delete pf;delete tg; delete df;
+		Mergesolutionfromftogx(&tg, tf,ys,femmodel->nodes,femmodel->parameters); delete ys;
 		InputUpdateFromSolutionx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,tg);
 
@@ -79,7 +79,6 @@
 
 	/*Free ressources: */
-	xdelete(&tg);
-	xdelete(&tf);
-	xdelete(&tf_old);
-	xdelete(&ys);
+	delete tg;
+	delete tf;
+	delete tf_old;
 }
