[Bug 978] New: typelib fails to compile on Debian Wheezy (testing)

http://bugs.orocos.org/show_bug.cgi?id=978

Summary: typelib fails to compile on Debian Wheezy (testing)
Product: Toolchain
Version: 2.5.0
Platform: All
OS/Version: All
Status: NEW
Severity: enhancement
Priority: P3
Component: Typelib
AssignedTo: orocos-dev [..] ...
ReportedBy: kunz [..] ...
CC: orocos-dev [..] ...
Estimated Hours: 0.0

biorob@debianbr64:~/rosstacks/orocos_toolchain/typelib/build$ make
[ 2%] Building CXX object typelib/CMakeFiles/typeLib.dir/registry.o
[ 4%] Building CXX object typelib/CMakeFiles/typeLib.dir/typebuilder.o
[ 7%] Building CXX object typelib/CMakeFiles/typeLib.dir/typemodel.o
/home/biorob/rosstacks/orocos_toolchain/typelib/typelib/typemodel.cc: In
Elementfunktion »virtual bool Typelib::Compound::do_compare(const
Typelib::Type&, bool, Typelib::Type::RecursionStack&) const«:
/home/biorob/rosstacks/orocos_toolchain/typelib/typelib/typemodel.cc:253:13:
Warnung: Variable »right_end« gesetzt, aber nicht verwendet
[-Wunused-but-set-variable]
[ 9%] Building CXX object typelib/CMakeFiles/typeLib.dir/typename.o
In file included from
/home/biorob/rosstacks/orocos_toolchain/typelib/typelib/typename.cc:3:0:
/home/biorob/rosstacks/orocos_toolchain/install/include/utilmm/stringtools.hh:
In Funktion »std::string utilmm::join(const stringlist&, const string&)«:
/home/biorob/rosstacks/orocos_toolchain/install/include/utilmm/stringtools.hh:47:42:
Warnung: Variable »end« gesetzt, aber nicht verwendet
[-Wunused-but-set-variable]
/home/biorob/rosstacks/orocos_toolchain/install/include/utilmm/stringtools.hh:
In Funktion »std::string utilmm::upcase(const string&)«:
/home/biorob/rosstacks/orocos_toolchain/install/include/utilmm/stringtools.hh:67:30:
Warnung: Variable »end« gesetzt, aber nicht verwendet
[-Wunused-but-set-variable]
[ 11%] Building CXX object typelib/CMakeFiles/typeLib.dir/typevisitor.o
[ 14%] Building CXX object typelib/CMakeFiles/typeLib.dir/typedisplay.o
[ 16%] Building CXX object typelib/CMakeFiles/typeLib.dir/exporter.o
In file included from
/home/biorob/rosstacks/orocos_toolchain/typelib/typelib/exporter.cc:5:0:
/home/biorob/rosstacks/orocos_toolchain/install/include/utilmm/stringtools.hh:
In Funktion »std::string utilmm::join(const stringlist&, const string&)«:
/home/biorob/rosstacks/orocos_toolchain/install/include/utilmm/stringtools.hh:47:42:
Warnung: Variable »end« gesetzt, aber nicht verwendet
[-Wunused-but-set-variable]
/home/biorob/rosstacks/orocos_toolchain/install/include/utilmm/stringtools.hh:
In Funktion »std::string utilmm::upcase(const string&)«:
/home/biorob/rosstacks/orocos_toolchain/install/include/utilmm/stringtools.hh:67:30:
Warnung: Variable »end« gesetzt, aber nicht verwendet
[-Wunused-but-set-variable]
[ 19%] Building CXX object typelib/CMakeFiles/typeLib.dir/pluginmanager.o
[ 21%] Building CXX object typelib/CMakeFiles/typeLib.dir/value.o
[ 23%] Building CXX object typelib/CMakeFiles/typeLib.dir/importer.o
[ 26%] Building CXX object typelib/CMakeFiles/typeLib.dir/csvoutput.o
In file included from
/home/biorob/rosstacks/orocos_toolchain/typelib/typelib/csvoutput.cc:4:0:
/home/biorob/rosstacks/orocos_toolchain/install/include/utilmm/stringtools.hh:
In Funktion »std::string utilmm::join(const stringlist&, const string&)«:
/home/biorob/rosstacks/orocos_toolchain/install/include/utilmm/stringtools.hh:47:42:
Warnung: Variable »end« gesetzt, aber nicht verwendet
[-Wunused-but-set-variable]
/home/biorob/rosstacks/orocos_toolchain/install/include/utilmm/stringtools.hh:
In Funktion »std::string utilmm::upcase(const string&)«:
/home/biorob/rosstacks/orocos_toolchain/install/include/utilmm/stringtools.hh:67:30:
Warnung: Variable »end« gesetzt, aber nicht verwendet
[-Wunused-but-set-variable]
[ 28%] Building CXX object typelib/CMakeFiles/typeLib.dir/endianness.o
[ 30%] Building CXX object typelib/CMakeFiles/typeLib.dir/memory_layout.o
[ 33%] Building CXX object typelib/CMakeFiles/typeLib.dir/value_ops.o
Linking CXX shared library ../../lib/libtypeLib.so
[ 33%] Built target typeLib
[ 35%] Building CXX object
lang/csupport/CMakeFiles/typeLang_cSupport.dir/containers.o
[ 38%] Building CXX object
lang/csupport/CMakeFiles/typeLang_cSupport.dir/plugin.o
[ 40%] Building CXX object
lang/csupport/CMakeFiles/typeLang_cSupport.dir/standard_types.o
Linking CXX shared library ../../../lib/libtypeLang_cSupport.so
[ 40%] Built target typeLang_cSupport
[ 45%] Built target dyncall
[ 47%] Building CXX object
bindings/ruby/CMakeFiles/typelib_ruby.dir/ext/typelib_ruby.o
[ 50%] Building CXX object
bindings/ruby/CMakeFiles/typelib_ruby.dir/ext/value.o
/home/biorob/rosstacks/orocos_toolchain/typelib/bindings/ruby/ext/value.cc: In
Funktion »VALUE type_memory_layout(VALUE, VALUE, VALUE, VALUE, VALUE)«:
/home/biorob/rosstacks/orocos_toolchain/typelib/bindings/ruby/ext/value.cc:290:40:
Fehler: Format ist kein Zeichenkettenliteral, und keine Formatargumente
[-Werror=format-security]
/home/biorob/rosstacks/orocos_toolchain/typelib/bindings/ruby/ext/value.cc: In
Funktion »VALUE value_initialize(VALUE, VALUE)«:
/home/biorob/rosstacks/orocos_toolchain/typelib/bindings/ruby/ext/value.cc:345:46:
Fehler: Format ist kein Zeichenkettenliteral, und keine Formatargumente
[-Werror=format-security]
/home/biorob/rosstacks/orocos_toolchain/typelib/bindings/ruby/ext/value.cc: In
Funktion »VALUE typelib_compare(VALUE, VALUE, VALUE)«:
/home/biorob/rosstacks/orocos_toolchain/typelib/bindings/ruby/ext/value.cc:512:40:
Fehler: Format ist kein Zeichenkettenliteral, und keine Formatargumente
[-Werror=format-security]
cc1plus: some warnings being treated as errors
make[2]: *** [bindings/ruby/CMakeFiles/typelib_ruby.dir/ext/value.o] Fehler 1
make[1]: *** [bindings/ruby/CMakeFiles/typelib_ruby.dir/all] Fehler 2
make: *** [all] Fehler 2

biorob@debianbr64:~/rosstacks/orocos_toolchain/typelib/build$ make
[ 33%] Built target typeLib
[ 38%] Built target dyncall
[ 45%] Built target typeLang_cSupport
[ 47%] Building CXX object
bindings/ruby/CMakeFiles/typelib_ruby.dir/ext/value.o
/home/biorob/rosstacks/orocos_toolchain/typelib/bindings/ruby/ext/value.cc: In
function ‘VALUE type_memory_layout(VALUE, VALUE, VALUE, VALUE, VALUE)’:
/home/biorob/rosstacks/orocos_toolchain/typelib/bindings/ruby/ext/value.cc:290:40:
error: format not a string literal and no format arguments
[-Werror=format-security]
/home/biorob/rosstacks/orocos_toolchain/typelib/bindings/ruby/ext/value.cc: In
function ‘VALUE typelib_compare(VALUE, VALUE, VALUE)’:
/home/biorob/rosstacks/orocos_toolchain/typelib/bindings/ruby/ext/value.cc:512:40:
error: format not a string literal and no format arguments
[-Werror=format-security]
cc1plus: some warnings being treated as errors
make[2]: *** [bindings/ruby/CMakeFiles/typelib_ruby.dir/ext/value.o] Fehler 1
make[1]: *** [bindings/ruby/CMakeFiles/typelib_ruby.dir/all] Fehler 2
make: *** [all] Fehler 2

This is caused by the code-line:

rb_raise(rb_eArgError, e.what());

If this is changed to

rb_raise(rb_eArgError, "%s", e.what());

the code can be compiled.

[Bug 978] typelib fails to compile on Debian Wheezy (testing)

http://bugs.orocos.org/show_bug.cgi?id=978

Peter Soetens <peter [..] ...> changed:

What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED

[Bug 978] typelib fails to compile on Debian Wheezy (testing)

[Bug 978] typelib fails to compile on Debian Wheezy (testing)

http://bugs.orocos.org/show_bug.cgi?id=978

Peter Soetens <peter [..] ...> changed:

What |Removed |Added
----------------------------------------------------------------------------
CC| |peter [..] ...,
| |sylvain [dot] joyeux [..] ...