compiler: Use correct package path for global
Этот коммит содержится в:
родитель
2534111141
коммит
6ed1ca11c7
1 изменённых файлов: 3 добавлений и 2 удалений
5
tgo.go
5
tgo.go
|
@ -732,9 +732,10 @@ func (c *Compiler) parseExpr(frame *Frame, expr ssa.Value) (llvm.Value, error) {
|
||||||
if strings.HasPrefix(expr.Name(), "__cgofn__cgo_") || strings.HasPrefix(expr.Name(), "_cgo_") {
|
if strings.HasPrefix(expr.Name(), "__cgofn__cgo_") || strings.HasPrefix(expr.Name(), "_cgo_") {
|
||||||
return llvm.Value{}, ErrCGoIgnore
|
return llvm.Value{}, ErrCGoIgnore
|
||||||
}
|
}
|
||||||
value := c.mod.NamedGlobal(expr.Pkg.Pkg.Path() + "." + expr.Name())
|
fullName := pkgPrefix(expr.Pkg) + "." + expr.Name()
|
||||||
|
value := c.mod.NamedGlobal(fullName)
|
||||||
if value.IsNil() {
|
if value.IsNil() {
|
||||||
return llvm.Value{}, errors.New("global not found: " + expr.Name())
|
return llvm.Value{}, errors.New("global not found: " + fullName)
|
||||||
}
|
}
|
||||||
return value, nil
|
return value, nil
|
||||||
case *ssa.IndexAddr:
|
case *ssa.IndexAddr:
|
||||||
|
|
Загрузка…
Создание таблицы
Сослаться в новой задаче