[Rock-dev] [rock] #321: nested namespaces don't work in orogen

rock noreply at opendfki.de
Tue Aug 20 11:37:30 CEST 2013


#321: nested namespaces don't work in orogen
-----------------------+-----------------------------------
 Reporter:  chcl01@…   |      Owner:  rock-dev-mailing-list
     Type:  defect     |     Status:  new
 Priority:  normal     |  Milestone:
Component:  toolchain  |   Keywords:
-----------------------+-----------------------------------
 nesting an enum like this (minimalized):

 struct PrimitiveObject
 {
      /** primitive type */
      enum types
      {
          INVALID = 0,
          BOX,
          CYLINDER
      };

      /** type of the the primitive */
      types type;
 }

 will result in this error:

 rock-create-orogen
 WARNING: Nokogiri was built against LibXML version 2.8.0, but has
 dynamically loaded 2.7.8
 xml_find_template_parm encountered unsupported type identifier_node
 Typelib[WARN]: /usr/include/boost/smart_ptr/shared_ptr.hpp:169: ignoring
 /boost/shared_ptr</object_detection/Object> since its field px is private
 Typelib[WARN]:
 /home/clausen/SpaceBot/install/include/object_detection/Objects.hpp:85:
 cannot create the /object_detection/Object/Ptr typedef, as it points to
 /boost/shared_ptr</object_detection/Object> which is ignored
 xml_find_template_parm encountered unsupported type identifier_node
 ===== Internal error =======
 Please report the following error to the orogen developers
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/registry.rb:587:in
 `build': cannot load the definition of opaque m-types: cannot load one of
 the header files /tmp/orogen20130819-30630-1ld5eyr: cannot find /types in
 registry (Orocos::Generation::InternalError)
 The faulty code is

 0 /* Generated from
 orogen/lib/orogen/templates/typekit/marshalling_types.hpp */
 1
 2
 3
 4 #include
 "/home/clausen/SpaceBot/install/include/object_detection/Objects.hpp"
 5 #include
 "/home/clausen/SpaceBot/image_processing/orogen/object_detection/.orogen/object_detectionTaskStates.hpp"
 6 #include "object_detection/object_detectionTaskStates.hpp"
 7 #include <base/Types.hpp>
 8 #include <envire/Types.hpp>
 9 #include <logger/Types.hpp>
 10 #include <std/Types.hpp>
 11
 12
 13
 14
 15     namespace object_detection {
 16
 17     struct Box_m
 18 {
 19    ::wrappers::Vector3d position ;
 20    ::wrappers::Quaterniond orientation ;
 21    double likelihood ;
 22    double shapeMatch ;
 23    ::object_detection::Color color ;
 24    ::wrappers::Vector3d dimensions ;
 25 };
 26     }
 27
 28
 29
 30
 31     namespace object_detection {
 32
 33     struct Cylinder_m
 34 {
 35    ::wrappers::Vector3d position ;
 36    ::wrappers::Quaterniond orientation ;
 37    double likelihood ;
 38    double shapeMatch ;
 39    ::object_detection::Color color ;
 40    float diameter ;
 41    float height ;
 42 };
 43     }
 44
 45
 46
 47
 48     namespace object_detection {
 49
 50     struct Object_m
 51 {
 52    ::wrappers::Vector3d position ;
 53    ::wrappers::Quaterniond orientation ;
 54    double likelihood ;
 55    double shapeMatch ;
 56    ::object_detection::Color color ;
 57 };
 58     }
 59
 60
 61
 62
 63     namespace object_detection {
 64
 65     struct PrimitiveObject_m
 66 {
 67    ::object_detection::PrimitiveObject::types type ;
 68    ::wrappers::Vector4d param ;
 69 };
 70     }
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/registry.rb:587:in
 `add'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:555:in
 `block (2 levels) in resolve_type_definition'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:554:in
 `each'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:554:in
 `block in resolve_type_definition'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/registry.rb:625:in
 `create_compound'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:546:in
 `resolve_type_definition'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:362:in
 `resolve_type_id'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:354:in
 `resolve_context'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:615:in
 `resolve_type_definition'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:362:in
 `resolve_type_id'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:540:in
 `block in resolve_type_definition'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:537:in
 `map'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:537:in
 `resolve_type_definition'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:738:in
 `block in load'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:737:in
 `each'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:737:in
 `load'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/gccxml.rb:830:in
 `load_from_gccxml'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/registry.rb:474:in
 `call'
         from
 /home/clausen/SpaceBot/install/lib/ruby/1.9.1/typelib/registry.rb:474:in
 `import'
         from
 /home/clausen/SpaceBot/tools/orogen/lib/orogen/gen/typekit.rb:1544:in
 `do_import'
         from
 /home/clausen/SpaceBot/tools/orogen/lib/orogen/gen/typekit.rb:1283:in
 `block in perform_pending_loads'
         from
 /home/clausen/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/tempfile.rb:320:in
 `open'
         from
 /home/clausen/SpaceBot/tools/orogen/lib/orogen/gen/typekit.rb:1276:in
 `perform_pending_loads'
         from
 /home/clausen/SpaceBot/tools/orogen/lib/orogen/gen/typekit.rb:1516:in
 `block (2 levels) in handle_opaques_generation'
         from
 /home/clausen/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/tempfile.rb:320:in
 `open'
         from
 /home/clausen/SpaceBot/tools/orogen/lib/orogen/gen/typekit.rb:1507:in
 `block in handle_opaques_generation'
         from
 /home/clausen/SpaceBot/tools/orogen/lib/orogen/gen/typekit.rb:1506:in
 `catch'
         from
 /home/clausen/SpaceBot/tools/orogen/lib/orogen/gen/typekit.rb:1506:in
 `handle_opaques_generation'
         from
 /home/clausen/SpaceBot/tools/orogen/lib/orogen/gen/typekit.rb:1712:in
 `generate'
         from
 /home/clausen/SpaceBot/tools/orogen/lib/orogen/gen/project.rb:666:in
 `generate'
         from /home/clausen/SpaceBot/tools/orogen/bin/orogen:158:in
 `<main>'

-- 
Ticket URL: <http://rock.opendfki.de/ticket/321>
rock <http://rock.opendfki.de>
rock: the robot construction kit


More information about the Rock-dev mailing list