登录
首页 >  Golang >  Go问答

Go 编译器错误行号显示 1048575,在问题进一步出现时会不正确

来源:stackoverflow

时间:2024-02-27 08:45:25 361浏览 收藏

在IT行业这个发展更新速度很快的行业,只有不停止的学习,才不会被行业所淘汰。如果你是Golang学习者,那么本文《Go 编译器错误行号显示 1048575,在问题进一步出现时会不正确》就很适合你!本篇内容主要包括##content_title##,希望对大家的知识积累有所帮助,助力实战开发!

问题内容

我正在测试代码生成功能并故意创建非常大的 .go 源文件。

但是,我在 1048575 行(即 0xfffff)处看到 go 编译器的错误,例如:

generated.go:1048575:75: invalid character U+0040 '@'
generated.go:1048575:76: const declaration cannot have type without expression
generated.go:1048575:88: syntax error: unexpected E_Blah_Blah, expecting semicolon or newline or )

这是一个已知的限制吗?

edit-1:评论者要求提供有关生成文件内容的更多信息;进一步的测试显示,当我故意在第 1048573 或 1048574 行引入一个新错误时,它会按照我的预期进行报告,但如果我在 1048575 或更高的行号处引入一个新错误,我总是会在 1048575 处报告错误。

edit-2:我现在意识到原来的问题 invalid character u+0040 '@' 确实是我生成的文件中的一个错误,但它位于编译器告诉我的行号的更下方。

edit-3:所以我想问题实际上应该是: 如果错误低于 0xfffff 行,有没有办法让 go-compiler 给出正确的行号?


解决方案


根本原因是:

根据@icza 的评论

没有。

今天带大家了解了的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>