From 63c7175250cfe0c1a00ec86be180d055af13c912 Mon Sep 17 00:00:00 2001 From: James Harris Date: Mon, 28 Oct 2013 08:39:21 -0500 Subject: [PATCH] Remove warnings from generated adaptors. This patch modifies the dbusxx-xml2cpp's generate_adaptor function so that it prevents generation of the MessageIter ri in cases where an interface method has no input arguments. By making this element conditional based on the presence of input arguments we avoid "unused-but-set-variable" warning in code that uses the DBus-C++ adaptor glue headers. Change-Id: I0f04439bf7b2b3cecb9d639e61c2b6dedc148e51 Type: Code Improvement --- tools/generate_adaptor.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/tools/generate_adaptor.cpp b/tools/generate_adaptor.cpp index f7972be..cb167cf 100644 --- a/tools/generate_adaptor.cpp +++ b/tools/generate_adaptor.cpp @@ -485,9 +485,12 @@ void generate_adaptor(Xml::Document &doc, const char *filename) Xml::Nodes args_out = args.select("direction", "out"); body << tab << "::DBus::Message " << stub_name(method.get("name")) << "(const ::DBus::CallMessage &call)" << endl - << tab << "{" << endl - << tab << tab << "::DBus::MessageIter ri = call.reader();" << endl - << endl; + << tab << "{" << endl; + if(!args_in.empty()) + { + body << tab << tab << "::DBus::MessageIter ri = call.reader();" << endl; + body << endl; + } // generate the 'in' variables unsigned int i = 1;