You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "James E. King, III (JIRA)" <ji...@apache.org> on 2016/11/22 13:55:58 UTC
[jira] [Commented] (THRIFT-3847) thrift/config.h includes a #define
for VERSION which will likely conflict with existing user environment or
code
[ https://issues.apache.org/jira/browse/THRIFT-3847?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15686815#comment-15686815 ]
James E. King, III commented on THRIFT-3847:
--------------------------------------------
The fix for this is tucked into THRIFT-3873 right now, just keeping track of it.
> thrift/config.h includes a #define for VERSION which will likely conflict with existing user environment or code
> ----------------------------------------------------------------------------------------------------------------
>
> Key: THRIFT-3847
> URL: https://issues.apache.org/jira/browse/THRIFT-3847
> Project: Thrift
> Issue Type: Bug
> Components: C++ - Library
> Affects Versions: 0.10.0
> Environment: Ubuntu 14.04, used docker environment to build debian packages with "dpkg-buildpackage -d -tc" inside the docker environment.
> Reporter: James E. King, III
> Assignee: James E. King, III
> Priority: Minor
>
> The built debian package installs /usr/include/thrift/config.h which has a #define VERSION in it. This is likely to conflict with third party packages or end-user code. It should be changed to THRIFT_VERSION as soon as possible. I recognize this is a breaking change but also an easy one for people to absorb. It just bit me on a project where VERSION was used as a variable name in some tests, and in some generated code where VERSION was used as the name of a string in a thrift structure, i.e.
> struct SomeStruct { 1: string VERSION }
> This won't build because the compiler will see VERSION in the generated code and change it to a string constant from thrift/config.h, which won't compile.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)