You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Manoj PG (JIRA)" <ji...@apache.org> on 2015/05/25 15:21:17 UTC

[jira] [Created] (THRIFT-3171) copyBinary line created when a tyoedef list<> is sued as method argument

Manoj PG created THRIFT-3171:
--------------------------------

             Summary: copyBinary line created when a tyoedef list<> is sued as method argument
                 Key: THRIFT-3171
                 URL: https://issues.apache.org/jira/browse/THRIFT-3171
             Project: Thrift
          Issue Type: Bug
          Components: Java - Compiler
    Affects Versions: 0.9.2
         Environment: Solaris Sparc
            Reporter: Manoj PG


When a list<struct> is typedef and used as a method param, the generated Java source file has the following code which fails to compile.

Generated code:
    public saveEmployees_args(saveEmployees_args other) {
      if (other.isSetListEmployees()) {
        this.listEmployees = org.apache.thrift.TBaseHelper.copyBinary(other.listEmployees);
;
      }
    }


The idl that reproduces the problem:

struct Employee
{
    1:string firstName,
    2:string lastName,
}

typedef list<Employee>                    TEmployeeList

service CB {
void saveEmployees(1:TEmployeeList listEmployees);
}

If we do not use the typedef Java compilation is fine.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)