diff options
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | src/clpp11.hpp | 4 |
2 files changed, 4 insertions, 1 deletions
@@ -6,6 +6,7 @@ Development (next version) - Improved the performance potential by adding a second tunable GEMM kernel with 2D register tiling - Re-added a local memory size constraint to the tuners - Updated and reorganised the CLBlast documentation +- Fixed an access violation when compiled with Visual Studio upon releasing the OpenCL program - Various minor fixes and enhancements - Added tuned parameters for various devices (see doc/tuning.md) - Added non-BLAS level-1 routines: diff --git a/src/clpp11.hpp b/src/clpp11.hpp index 2119f26b..c4b721b9 100644 --- a/src/clpp11.hpp +++ b/src/clpp11.hpp @@ -442,7 +442,9 @@ class Program { // Source-based constructor with memory management explicit Program(const Context &context, const std::string &source): program_(new cl_program, [](cl_program* p) { - if (*p) { CheckErrorDtor(clReleaseProgram(*p)); } + #ifndef _MSC_VER // 'clReleaseProgram' caused an access violation with Visual Studio + if (*p) { CheckErrorDtor(clReleaseProgram(*p)); } + #endif delete p; }) { const char *source_ptr = &source[0]; |