[ https://issues.apache.org/jira/browse/THRIFT-4846?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16811261#comment-16811261 ]
Jens Geyer edited comment on THRIFT-4846 at 4/5/19 9:14 PM: ------------------------------------------------------------ > cyclic refs I was about saying exactly that. BTW, why can't we do this in C++ but can do in "less sophisticated" languages? ;) was (Author: jensg): I was about saying exactly that. BTW, why can't we do this in C++ but can do in "less sophisticated" languages? ;) > C++ generator should topologically sort struct definitions and error on cycles > ------------------------------------------------------------------------------ > > Key: THRIFT-4846 > URL: https://issues.apache.org/jira/browse/THRIFT-4846 > Project: Thrift > Issue Type: Bug > Reporter: Todd Lipcon > Priority: Major > Attachments: thrift-4846.patch > > > C++ (and maybe other languages?) treat Thrift struct-typed fields as plain > struct members of the containing struct. Currently, the generator outputs the > types in the same order as they're defined in the underlying Thrift field, > which means that a file like: > {code} > struct A { > 1: B foo; > } > struct B { > } > {code} > will generate C++ code that fails to compile. > We should topologically-sort the structs before outputting the definitions so > that the generated code compiles correctly. -- This message was sent by Atlassian JIRA (v7.6.3#76005)