diff --git a/var/spack/repos/builtin/packages/denovogear/newmat6.cpp.patch b/var/spack/repos/builtin/packages/denovogear/newmat6.cpp.patch
new file mode 100644
index 0000000000000000000000000000000000000000..36d2e240cd8aa4e73313f587ef4787e5a91fed72
--- /dev/null
+++ b/var/spack/repos/builtin/packages/denovogear/newmat6.cpp.patch
@@ -0,0 +1,11 @@
+--- spack-src/src/contrib/newmat/newmat6.cpp.org	2020-03-19 14:06:13.679032667 +0900
++++ spack-src/src/contrib/newmat/newmat6.cpp	2020-03-19 14:07:34.267492838 +0900
+@@ -428,7 +428,7 @@
+ {
+    if (&gm == this) { REPORT tag_val = -1; return; }
+    REPORT
+-   if (indx > 0) { delete [] indx; indx = 0; }
++   if (indx != NULL) { delete [] indx; indx = 0; }
+    ((CroutMatrix&)gm).get_aux(*this);
+    Eq(gm);
+ }
diff --git a/var/spack/repos/builtin/packages/denovogear/package.py b/var/spack/repos/builtin/packages/denovogear/package.py
index 8f475492c15d20b2a54f4ac48205e20b082eff1a..bc683febeff3d29720a5c82e6e529a94c7d812d6 100644
--- a/var/spack/repos/builtin/packages/denovogear/package.py
+++ b/var/spack/repos/builtin/packages/denovogear/package.py
@@ -25,3 +25,5 @@ class Denovogear(CMakePackage):
     depends_on('zlib', type=('link'))
 
     patch('stream-open.patch', when='@:1.1.1')
+    # fix: ordered comparison between pointer and zero.
+    patch('newmat6.cpp.patch')