go/ssa: sanity check for package transient fields

This commit is contained in:
xieyuschen 2024-09-17 00:54:18 +08:00
Родитель 91d4bdb347
Коммит 9a332833af
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 874E18CA289EACD5
1 изменённых файлов: 13 добавлений и 0 удалений

Просмотреть файл

@ -609,6 +609,19 @@ func sanityCheckPackage(pkg *Package) {
if pkg.Pkg == nil {
panic(fmt.Sprintf("Package %s has no Object", pkg))
}
if pkg.info != nil {
panic(fmt.Sprintf("package %s field 'info' is not cleared", pkg))
}
if pkg.files != nil {
panic(fmt.Sprintf("package %s field 'files' is not cleared", pkg))
}
if pkg.created != nil {
panic(fmt.Sprintf("package %s field 'created' is not cleared", pkg))
}
if pkg.initVersion != nil {
panic(fmt.Sprintf("package %s field 'initVersion' is not cleared", pkg))
}
_ = pkg.String() // must not crash
for name, mem := range pkg.Members {