go 运行时:显示非ASCII包名的混淆包路径 ```markdown 运行时:显示非ASCII包名的混淆包路径 ```

4ktjp1zp  于 4个月前  发布在  Go
关注(0)|答案(1)|浏览(84)

请在提交问题之前回答以下问题。谢谢!

您正在使用的Go版本是什么( go version )?

go提示:
go version devel +16687a3bbf Fri Sep 14 12:39:54 2018 +0000 linux/amd64

这个问题是否在最新版本中重现?

是的

您正在使用什么操作系统和处理器架构( go env )?

linux/amd64

您做了什么?

在您的$GOPATH中解压附件中的tar文件:tarfile.gz,这将创建两个子目录'Äfoo'和'Äbar'。切换到第二个并执行'go run':

$ tar zxvf - < tarfile.gz
./Äbar/
./Äbar/Äbar.go
./Äfoo/
./Äfoo/Äfoo.go
$ cd Äbar
$ go run .
- more:true | runtime.Callers
- more:true | %c3%84foo.PrintTrace
- more:true | %c3%84foo.Äblix
- more:true | %c3%84foo.Äbar
- more:true | main.main
- more:true | runtime.main
- more:false | runtime.goexit
Äfoo.Äbar(33) returns 134
$

请注意,在runtime.CallersFrames的输出中,来自包Äbar的函数显示为带有混淆形式的包路径(例如%c3%84foo.Äblix),而不是常规形式(Äbar.Äblix)。

您期望看到什么?

调用者帧输出中的正确包路径Äbar.Äblix

您看到了什么?

混淆的包路径%c3%84foo
注意:不确定这是否是一个真正的bug,是我自己的错误,还是WAI。如果合适,请关闭。还不确定(假设有bug)这是否是一个编译器问题还是运行时问题(可能是运行时只是输出编译器告诉它的任何内容。谢谢-NM。

相关问题