该 bug 很可能是故意注入到
m4
中的(只是为了演示 GDB
)。我怀疑是否有 GNU m4
的官方版本实际上存在此错误。
您可以下载任意版本的
m4
,更改
len_lquote = strlen(lquote);
到
len_lquote = strlen(rquote);
在
set_quotes()
中,然后重做示例调试会话。
但是,我认为实际这样做没有什么意义。如果您选择您喜欢和使用的任何开源程序,并尝试查找/修复其中真正的开放错误,您的时间可能会花费得更明智。
附注您提到的在线文档已移至此处。