gpt4 book ai didi

perl - perl -cw 中的行号指的是什么?

转载 作者:行者123 更新时间:2023-12-01 04:43:32 26 4
gpt4 key购买 nike

当我运行“perl -cw”来检查我的 perl 模块的语法并遇到警告或错误时,会给出两个行号:

perl -cw lib/My/Module.pm
Global symbol "%badvar" requires explicit package name at lib/My/Module.pm line 93, <DATA> line 132.
lib/My/Module.pm had compilation errors.

“第 93 行”在源文件中是正确的位置,但是“ 第 132 行”指的是什么?

最佳答案

错误信息的结构是:

message at file line x, <handle> line y.

  • 消息 是对错误的描述。
  • file 是发生错误的文件。
  • x 是文件中发生错误的行号。
  • handle 是最后读取的文件句柄。
  • y 是从句柄读取的最后一行1

在您的例子中,错误发生在 lib/My/Module.pm 的第 93 行,在第 132 次读取 DATA 句柄之后。 DATA 是内置句柄,用于读取源文件的 __DATA__ 标记后的文本。请注意,DATA 句柄的行号是倾斜的。 " line 132"是 __DATA__ 标签之后的第 132 行,而不是文件的第 132 行。

1] 从技术上讲,它是 $. 的值。这通常是一个行号,但如果您更改了 $/ 的值,则可能是其他内容。它也偏向于 DATA 句柄。

关于perl - perl -cw 中的行号指的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3110682/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com