You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@thrift.apache.org by jk...@apache.org on 2017/02/09 12:54:22 UTC

thrift git commit: THRIFT-4079 add missing use clauses for included thrift sources in generated perl modules Client: perl

Repository: thrift
Updated Branches:
  refs/heads/master 9019b280e -> d1482fe3e


THRIFT-4079 add missing use clauses for included thrift sources in generated perl modules
Client: perl

This closes #1181


Project: http://git-wip-us.apache.org/repos/asf/thrift/repo
Commit: http://git-wip-us.apache.org/repos/asf/thrift/commit/d1482fe3
Tree: http://git-wip-us.apache.org/repos/asf/thrift/tree/d1482fe3
Diff: http://git-wip-us.apache.org/repos/asf/thrift/diff/d1482fe3

Branch: refs/heads/master
Commit: d1482fe3e202be8ca6e428048e0512dc37b127ab
Parents: 9019b28
Author: James E. King, III <jk...@apache.org>
Authored: Thu Feb 9 07:53:44 2017 -0500
Committer: James E. King, III <jk...@apache.org>
Committed: Thu Feb 9 07:53:44 2017 -0500

----------------------------------------------------------------------
 compiler/cpp/src/thrift/generate/t_perl_generator.cc | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/thrift/blob/d1482fe3/compiler/cpp/src/thrift/generate/t_perl_generator.cc
----------------------------------------------------------------------
diff --git a/compiler/cpp/src/thrift/generate/t_perl_generator.cc b/compiler/cpp/src/thrift/generate/t_perl_generator.cc
index bfe08f9..fd11b2a 100644
--- a/compiler/cpp/src/thrift/generate/t_perl_generator.cc
+++ b/compiler/cpp/src/thrift/generate/t_perl_generator.cc
@@ -642,7 +642,15 @@ void t_perl_generator::generate_service(t_service* tservice) {
       ///      "package "<<service_name_<<";"<<endl<<
       autogen_comment() << perl_includes();
 
-  f_service_ << "use " << perl_namespace(tservice->get_program()) << "Types;" << endl;
+  t_program* current = tservice->get_program();
+  std::vector<t_program*>& currInc = current->get_includes();
+  std::vector<t_program*>::size_type numInc = currInc.size();
+  f_service_ << "use " << perl_namespace(current) << "Types;" << endl;
+  for (std::vector<t_program*>::size_type i = 0; i < numInc; ++i)
+  {
+    t_program* incProgram = currInc.at(i);
+    f_service_ << "use " << perl_namespace(incProgram) << "Types;" << std::endl;
+  }
 
   t_service* extends_s = tservice->get_extends();
   if (extends_s != NULL) {