diff --git a/cpp/src/dual_simplex/sparse_cholesky.cuh b/cpp/src/dual_simplex/sparse_cholesky.cuh index 7e792998f..bedeb91ff 100644 --- a/cpp/src/dual_simplex/sparse_cholesky.cuh +++ b/cpp/src/dual_simplex/sparse_cholesky.cuh @@ -498,7 +498,7 @@ class sparse_cholesky_cudss_t : public sparse_cholesky_base_t { auto d_nnz = Arow.row_start.element(Arow.m, Arow.row_start.stream()); if (nnz != d_nnz) { settings_.log.printf("Error: nnz %d != A_in.col_start[A_in.n] %d\n", nnz, d_nnz); - exit(1); + return -1; } CUDSS_CALL_AND_CHECK( @@ -568,7 +568,7 @@ class sparse_cholesky_cudss_t : public sparse_cholesky_base_t { #endif if (A_in.n != n) { printf("Analyze input does not match size %d != %d\n", A_in.n, n); - exit(1); + return -1; } nnz = A_in.col_start[A_in.n]; @@ -669,7 +669,7 @@ class sparse_cholesky_cudss_t : public sparse_cholesky_base_t { if (nnz != A_in.col_start[A_in.n]) { settings_.log.printf( "Error: nnz %d != A_in.col_start[A_in.n] %d\n", nnz, A_in.col_start[A_in.n]); - exit(1); + return -1; } CUDA_CALL_AND_CHECK( @@ -741,11 +741,11 @@ class sparse_cholesky_cudss_t : public sparse_cholesky_base_t { handle_ptr_->get_stream().synchronize(); if (static_cast(b.size()) != n) { settings_.log.printf("Error: b.size() %d != n %d\n", b.size(), n); - exit(1); + return -1; } if (static_cast(x.size()) != n) { settings_.log.printf("Error: x.size() %d != n %d\n", x.size(), n); - exit(1); + return -1; } CUDSS_CALL_AND_CHECK(