Skip to content

Commit 14842dc

Browse files
committed
Add important note in README
1 parent 11f27d6 commit 14842dc

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@ A Go implementation of coroutines that provides cooperative multitasking using G
2121
go get github.com/webriots/coro
2222
```
2323

24+
> [!IMPORTANT]
25+
> The `-ldflags=-checklinkname=0` flag is required when building and testing this library since it uses the `//go:linkname` directive to access internal Go runtime functions. As of Go 1.23, these accessing internal symbols requires this flag as an "escape hatch" to bypass the new [package handshake requirement](https://github.com/golang/go/issues/67401).
26+
2427
## Requirements
2528

2629
- Go 1.23.1 or later
@@ -378,8 +381,6 @@ value, _ := resume(42) // value is of type string
378381

379382
- Always call `cancel()` when you're done with a coroutine to prevent resource leaks
380383
- Coroutines can propagate panics through the `resume` function
381-
- Use the `-ldflags=-checklinkname=0` flag when running tests
382-
- Go's native coroutines are used via the `//go:linkname` directive
383384

384385
## Contributing
385386

0 commit comments

Comments
 (0)