[
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)