Index: /issm/trunk-jpl/src/c/shared/Numerics/isnan.cpp
===================================================================
--- /issm/trunk-jpl/src/c/shared/Numerics/isnan.cpp	(revision 12582)
+++ /issm/trunk-jpl/src/c/shared/Numerics/isnan.cpp	(revision 12583)
@@ -1,8 +1,10 @@
 /*This routine only used by Intel compler: */
-#ifdef _INTEL_WIN_
 
-int xIsNan<IssmDouble>(IssmPDouble x){
-	return (x!=x)?1:0;
+#include "../../include/include.h"
+#include "isnan.h"
+
+#ifdef _HAVE_ADOLC_
+template <> int xIsNan<adouble> (const adouble& X) {
+  return isnan(X.getValue());
 }
 #endif
-
Index: /issm/trunk-jpl/src/c/shared/Numerics/isnan.h
===================================================================
--- /issm/trunk-jpl/src/c/shared/Numerics/isnan.h	(revision 12582)
+++ /issm/trunk-jpl/src/c/shared/Numerics/isnan.h	(revision 12583)
@@ -17,7 +17,5 @@
 
 #ifdef _HAVE_ADOLC_
-template <> int xIsNan<adouble> (const adouble& X) {
-  return isnan(X.getValue());
-}
+template <> int xIsNan<adouble> (const adouble& X);
 #endif
 
