Solidity已知bug列表
蓝天天使2017
发表于 2022-12-31 20:05:40
191
0
0
该文件被放置于 Github 仓库 _ 。
该列表可以追溯到 0.3.0 版本,只在此版本之前存在的 bug 没有被列入。
这里,还有另外一个 bugs_by_version.json _ 文件。5 p9 n2 ?4 e" F+ y; ]) _
该文件可用于查询特定的某个编译器版本会受哪些 bug 影响。/ A6 ?. {2 o0 l/ {& m W
合约的源文件检查工具以及其他与合约交互的工具,需基于以下规则查阅上述 bug 列表文件:8 W# t/ k1 X: L: Z* h4 v
如果合约是用每日构建版本的编译器编译,而不是发布版本的编译器,那就有点可疑了。上述bug列表不跟踪未发布或每日构建版本的编译器。如果一个合约并不是由它被创建时点的最新版本编译器所编译的,那么这也是值得怀疑的。对于由其他合约创建的合约,您必须沿着创建链追溯最初交易,并使用该交易的日期作为创建日期。高度可疑的情况是,如果一份合约由一个包含已知 bug 的编译器编译,但在合约创建时,已修复了相应 bug 的新版编译器已经发布了。
3 V. x9 M2 D( N9 {% u, s: d# E
下面这份包含已知 bug 的 JSON 文件实际上是一个对象数组,每个对象对应一个 bug,并包含以下的 keys :9 M6 A: d9 J0 ^! \ F9 s
name
赋予该 bug 的唯一的名字summary
对该 bug 的简要描述description! i9 l) k- H4 K4 c% T
对该 bug 的详细描述link
包含更多详尽信息的链接,可选introduced! `) D4 k6 [) t0 J2 w% S
第一个包含该 bug 的编译器的发布版本,可选fixed
第一个不再包含该 bug 的编译器的发布版本publish
该 bug 被公开的日期,可选severity
bug 的严重性: very low, low, medium, high。综合考虑了在合约测试中的可发现性、发生的可能性和被利用后的潜在损害。conditions' M0 E# j3 j- Q, W
触发该 bug 所需满足的条件。当前,这是一个包含了 optimizer 布尔值的对象,这意味着只有打开优化器选项时,才会触发该 bug。/ R, q+ k# l( \1 e% ]0 q$ K9 T
如果没有给出任何条件,则意味着此 bug 始终存在。
3 {. n1 s' t, _0 R
原文 https://github.com/etherchina/solidity-doc-cn/blob/develop/bugs.rst
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
成为第一个吐槽的人