为了账号安全,请及时绑定邮箱和手机立即绑定

避免在 cgo 导出函数文档中出现空行

避免在 cgo 导出函数文档中出现空行

Go
白衣染霜花 2022-05-18 17:05:02
我正在用 Go 编写一个库,我正在使用 CGo 编译为本机库,但是当函数被导出时,它们在函数声明和文档注释之间有这个烦人的空行。例如,假设我的 go 文件中有这个/** * Prints an integer. * * @param p0 an integer to print. *///export PrintIntegerfunc PrintInteger(val C.int) {    fmt.Printf("%v", val);}一旦它在我的 C 头文件中导出,它看起来像这样/** * Prints an integer. * * @param p0 an integer to print. */extern void PrintInteger(int p0);大多数情况下,该空行不是问题,但是在某些 IDE 上,在解析该头文件时,它们很难正确显示智能感知,从而使头的使用更加困难。尤其是当您考虑 cgo重命名函数参数的方式时有什么办法可以避免它,而无需在生成后手动修改头文件?编辑:我发现我认为是 go 源代码中导致此问题的区域:https://github.com/golang/go/blob/master/src/cmd/cgo/out.go#L922
查看完整描述

1 回答

?
富国沪深

TA贡献1790条经验 获得超9个赞

go 1.15 中应该包含对此的修复。

https://go-review.googlesource.com/c/go/+/222419/


查看完整回答
反对 回复 2022-05-18
  • 1 回答
  • 0 关注
  • 158 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信