Closed leofang closed 2 months ago
I confirm this simple patch would make it work:
diff --git a/cuda/cuda.pyx.in b/cuda/cuda.pyx.in
index 74f49d9..e46ea4b 100644
--- a/cuda/cuda.pyx.in
+++ b/cuda/cuda.pyx.in
@@ -21414,12 +21414,12 @@ def cuLibraryLoadData(code, jitOptions : Optional[List[CUjit_option]], jitOption
ccode = utils.HelperInputVoidPtr(code)
cdef void* ccode_ptr = <void*><void_ptr>ccode.cptr
cdef vector[ccuda.CUjit_option] cjitOptions = [pyjitOptions.value for pyjitOptions in (jitOptions)]
- pylist = [utils.HelperCUjit_option(pyoptions, pyoptionValues) for pyoptions, pyoptionValues in zip(numJitOptions, jitOptionsValues)]
+ pylist = [utils.HelperCUjit_option(pyoptions, pyoptionValues) for pyoptions, pyoptionValues in zip(jitOptions, jitOptionsValues)]
cdef utils.InputVoidPtrPtrHelper voidStarHelperjitOptionsValues = utils.InputVoidPtrPtrHelper(pylist)
if numJitOptions > len(jitOptions): raise RuntimeError("List is too small: " + str(len(jitOptions)) + " < " + str(numJitOptions))
if numJitOptions > len(jitOptionsValues): raise RuntimeError("List is too small: " + str(len(jitOptionsValues)) + " < " + str(numJitOptions))
cdef vector[ccuda.CUlibraryOption] clibraryOptions = [pylibraryOptions.value for pylibraryOptions in (libraryOptions)]
- pylist = [utils.HelperCUlibraryOption(pyoptions, pyoptionValues) for pyoptions, pyoptionValues in zip(numLibraryOptions, libraryOptionValues)]
+ pylist = [utils.HelperCUlibraryOption(pyoptions, pyoptionValues) for pyoptions, pyoptionValues in zip(libraryOptions, libraryOptionValues)]
cdef utils.InputVoidPtrPtrHelper voidStarHelperlibraryOptionValues = utils.InputVoidPtrPtrHelper(pylist)
if numLibraryOptions > len(libraryOptions): raise RuntimeError("List is too small: " + str(len(libraryOptions)) + " < " + str(numLibraryOptions))
if numLibraryOptions > len(libraryOptionValues): raise RuntimeError("List is too small: " + str(len(libraryOptionValues)) + " < " + str(numLibraryOptions))
@@ -46813,4 +46813,4 @@ def sizeof(objType):
{{if True}}
if objType == VdpOutputSurface:
return sizeof(ccuda.VdpOutputSurface){{endif}}
- raise TypeError("Unknown type: " + str(objType))
\ No newline at end of file
+ raise TypeError("Unknown type: " + str(objType))
This line is wrong: https://github.com/NVIDIA/cuda-python/blob/b88592ae51c35af3bf1399a48d2180a6d9cec5cc/cuda/cuda.pyx.in#L21417
numJitOptions
is an int, so it cannot be iterated over. What's should have been there in the zip isjitOptions
.