找出 errors.As 里的 bug

来自 错误包装
Go 1.27 进阶 4分钟 找出 1处问题

找出这段生成代码为什么会 panic,而不是输出 true。

Go
package main

import (
    "errors"
    "fmt"
)

type ParseError struct{ Input string }

func (e *ParseError) Error() string {
    return "invalid input: " + e.Input
}

func main() {
    err := fmt.Errorf("import: %w", &ParseError{Input: "x"})
    var target ParseError
    fmt.Println(errors.As(err, &target))
}
在试验场中打开
报告错误