hdf5: figure out how to resolve the Go pointer to Go pointer issue
- Dominant language
- Go
- Stars
- 135
- Forks
- 34
- PR merge metrics
- No merged PRs in 30d
Description
The `GODEBUG=cgocheck=0` incantation is untenable in the long run. So we need to sort out how to deal with types holding pointers.
It is not clear to me how to deal with this using the current approach to calling HDF5 functions where entire values are simply handed off to the library. But anything else involves significant reengineering/reimplementation of the HDF5 code in Go.
Note that the example in the tests that fails this runtime check is already incorrect, since the string field that causes the failure is not correctly round-tripped anyway.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the failing example in the tests and the current approach for handing entire Go values to HDF5 functions. Reproduce the runtime pointer check without relying on GODEBUG=cgocheck=0, then trace how types containing pointers and the string field are passed and round-tripped. Done means pointer-containing types work without that setting and the affected string field round-trips correctly.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- data
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100