Assert tensor isn't sparse in enforce_invariants. (#18338)
authorGregory Chanan <gchanan@fb.com>
Mon, 25 Mar 2019 15:38:11 +0000 (08:38 -0700)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Mon, 25 Mar 2019 15:44:17 +0000 (08:44 -0700)
Summary:
There's no reason we can't check this, but I'm punting on implementing it for now.  But it currently segfaults, so this is an improvements.
Pull Request resolved: https://github.com/pytorch/pytorch/pull/18338

Differential Revision: D14580308

Pulled By: gchanan

fbshipit-source-id: 44d4cafeab12e1beeb3453a2d4068d221c2e9c4f

aten/src/ATen/core/Tensor.cpp

index 776b4bb..d575423 100644 (file)
@@ -20,6 +20,9 @@ void Tensor::enforce_invariants() {
           impl_->dtype_initialized(),
           "Partially-initialized tensor not supported by at::Tensor");
       AT_ASSERTM(
+          !impl_->is_sparse(),
+          "Sparse Tensors are supported by at::Tensor, but invariant checking isn't implemented.  Please file a bug.");
+      AT_ASSERTM(
           impl_->storage_initialized(),
           "Partially-initialized tensor not supported by at::Tensor");
     }