thrift-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James E. King, III (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (THRIFT-4399) plugin.thrift t_const_value is not used as a union in C++ code -- fix this
Date Thu, 11 Jan 2018 04:51:00 GMT

     [ https://issues.apache.org/jira/browse/THRIFT-4399?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

James E. King, III resolved THRIFT-4399.
----------------------------------------
       Resolution: Fixed
    Fix Version/s: 0.12.0

Committed - thanks!

> plugin.thrift t_const_value is not used as a union in C++ code -- fix this
> --------------------------------------------------------------------------
>
>                 Key: THRIFT-4399
>                 URL: https://issues.apache.org/jira/browse/THRIFT-4399
>             Project: Thrift
>          Issue Type: Bug
>          Components: Compiler (General)
>    Affects Versions: 0.10.0
>         Environment: Ubuntu 16.04 amd64
>            Reporter: Chet Murthy
>            Assignee: James E. King, III
>            Priority: Minor
>             Fix For: 0.12.0
>
>
> plugin.thrift defines t_const_value as a union.  But in plugin_output.cc and plugin.cc,
the converters clearly either (a) SET NEITHER of identifier_val & enum_val, or (b) SET
BOTH.  But these are two different fields in the union.  So clearly, the type t_const_value
isn't being treated as a union.
> I think we need to fix Thrift's treatment of unions, but independently, the plugin should
use Thrift's type system in a correct manner.  This is easy-to-fix, but since the current
plugin relies on a bug, the fix will be a breaking change.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message