I am not sure there is Win32API function that accepts more than 15 arguments, but there are some OpenGL fuctions that accept more than 15 arguments:
func LGPUCopyImageSubDataNVX(sourceGpu uint32, destinationGpuMask uint32, srcName uint32, srcTarget uint32, srcLevel int32, srcX int32, srxY int32, srcZ int32, dstName uint32, dstTarget uint32, dstLevel int32, dstX int32, dstY int32, dstZ int32, width int32, height int32, depth int32)
func MulticastCopyImageSubDataNV(srcGpu uint32, dstGpuMask uint32, srcName uint32, srcTarget uint32, srcLevel int32, srcX int32, srcY int32, srcZ int32, dstName uint32, dstTarget uint32, dstLevel int32, dstX int32, dstY int32, dstZ int32, srcWidth int32, srcHeight int32, srcDepth int32)
Now we are trying to eliminate Cgo usages from go-gl (OpenGL binding) on Windows (https://github.com/go-gl/gl/issues/109), and I thought it possible to use syscall.SyscallN. However, I found the above functions that cannot be passed to syscall.SyscallN
Adding syscall.Syscall18 SGTM. I am not sure what others will say.
Alex
/cc @bradfitz
"If you have a procedure with ten parameters, you probably missed some." -- Alan Perlis
I guess the answer is 18.
Sure?
I take it @bradfitz is OK with syscall.Syscall18.
@hajimehoshi would you like to do the honors and change the code? This https://golang.org/doc/contribute.html is how to contribute to Go project.
Alex
Sure, I'll try this later!
Change https://golang.org/cl/147117 mentions this issue: syscall: add Syscall18 on Windows
Change https://golang.org/cl/147117 mentions this issue: syscall: add Syscall18 on Windows
Change https://golang.org/cl/147117 mentions this issue: syscall: add Syscall18 on Windows
Most helpful comment
I guess the answer is 18.
Sure?