You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@thrift.apache.org by ro...@apache.org on 2012/04/08 20:18:56 UTC

svn commit: r1311066 - /thrift/trunk/compiler/cpp/src/generate/t_cpp_generator.cc

Author: roger
Date: Sun Apr  8 18:18:56 2012
New Revision: 1311066

URL: http://svn.apache.org/viewvc?rev=1311066&view=rev
Log:
THRIFT-1398 Compiler warning on generated code (Multiface kills -Wall -Werror on gcc 4.6.1)
Patch: Nevo Hed

Modified:
    thrift/trunk/compiler/cpp/src/generate/t_cpp_generator.cc

Modified: thrift/trunk/compiler/cpp/src/generate/t_cpp_generator.cc
URL: http://svn.apache.org/viewvc/thrift/trunk/compiler/cpp/src/generate/t_cpp_generator.cc?rev=1311066&r1=1311065&r2=1311066&view=diff
==============================================================================
--- thrift/trunk/compiler/cpp/src/generate/t_cpp_generator.cc (original)
+++ thrift/trunk/compiler/cpp/src/generate/t_cpp_generator.cc Sun Apr  8 18:18:56 2012
@@ -2123,30 +2123,29 @@ void t_cpp_generator::generate_service_m
     indent_up();
     f_header_ <<
       indent() << "size_t sz = ifaces_.size();" << endl <<
-      indent() << "for (size_t i = 0; i < sz; ++i) {" << endl;
+      indent() << "size_t i = 0;" << endl <<
+      indent() << "for (; i < (sz - 1); ++i) {" << endl;
+	indent_up();
+	f_header_ <<
+      indent() << call << ";" << endl;
+	indent_down();
+	f_header_ <<
+      indent() << "}" << endl;
+
     if (!(*f_iter)->get_returntype()->is_void()) {
-      f_header_ <<
-        indent() << "  if (i == sz - 1) {" << endl;
       if (is_complex_type((*f_iter)->get_returntype())) {
         f_header_ <<
-          indent() << "    " << call << ";" << endl <<
-          indent() << "    return;" << endl;
+          indent() << call << ";" << endl <<
+          indent() << "return;" << endl;
       } else {
         f_header_ <<
-          indent() << "    return " << call << ";" << endl;
+          indent() << "return " << call << ";" << endl;
       }
-      f_header_ <<
-        indent() << "  } else {" << endl <<
-        indent() << "    " << call << ";" << endl <<
-        indent() << "  }" << endl;
     } else {
       f_header_ <<
-        indent() << "  " << call << ";" << endl;
+        indent() << call << ";" << endl;
     }
 
-    f_header_ <<
-      indent() << "}" << endl;
-
     indent_down();
     f_header_ <<
       indent() << "}" << endl <<