[ https://issues.apache.org/jira/browse/THRIFT-3037?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Can Celasun reassigned THRIFT-3037: ----------------------------------- Assignee: Can Celasun > Can not build Go code when using typedef in IDL > ----------------------------------------------- > > Key: THRIFT-3037 > URL: https://issues.apache.org/jira/browse/THRIFT-3037 > Project: Thrift > Issue Type: Bug > Components: Go - Compiler > Affects Versions: 0.9.2 > Reporter: Joe Bruner > Assignee: Can Celasun > > {code} > // Base.thrift > namespace go a.X.c > struct Foo { > 1: required string s > } > {code} > and the dependent file > {code} > // Child.thrift > namespace go a.Y.c > include "Base.thrift" > typedef Base.Foo Foo // <---- This is what causes the problem > struct Bar { > 1:Foo f // <-- Will error > // 1:Base.Foo f Need to comment out typedef and use this instead > } > {code} > Compiling the thrift as is works, but when you go to install the a.Y.c > package will produce: > {code} > /scratch/go/src/a/Y/c/ttypes.go:78: cannot use c.Foo literal (type *c.Foo) as > type *Foo in assignment > /scratch/go/src/a/Y/c/ttypes.go:79: p.F.Read undefined (type *Foo has no > field or method Read) > /scratch/go/src/a/Y/c/ttypes.go:105: p.F.Write undefined (type *Foo has no > field or method Write) > {code} > If I comment out the typedef and swap the lines in Bar then everything works > fine. This appears to only happen in Go. -- This message was sent by Atlassian JIRA (v6.3.15#6346)