IDL typedef generation fails

Please use this forum to signal bugs.
Merci d'utiliser ce forum pour signaler des bugs.

IDL typedef generation fails

Postby morini » Fri 21 Aug 2015 16:11

The IDL code generation tool doesn’t generate a typedef defined as nested class named ObservantId marked with stereotype <<typedef>>.

My interface definition (Observant) is nearly as simple as possible. Have a look at the attached screen shots.

— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —
The generated IDL file looks as follows:
Code: Select all
#ifndef OBSERVATION_OBSERVANT_H
#define OBSERVATION_OBSERVANT_H


#include <orbsvcs/CosNotifyComm.idl>

module Observation {

//An Observant may be observated by a, possibly remote, Observer.
//Each Observant has an id unique in the entire applications operation domain
//which may be asked for using id(). The Observer uses it internally to filter the
//observated objects Observation events.

interface Observant : CosNotifyComm::StructuredPushSupplier
{
  readonly attribute ObservantId id;

  ObservantId get_id();

} /* Observant */;

}; // module Observation
#endif


As you’ll see: The typedef statement is missing.

— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —
The generators log output is:

IDL generator release 5.0.3

Generate code for Observant in /Users/tcs/src/CORBA/Observation/idl/Observant.idl
Embedded class ObservantId not generated

/Users/tcs/src/CORBA/Observation/idl/Observant.idl not modified

Generation done : 1 warnings, 0 errors

— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —

As a temporary fix I’ve added an "extra member“ defining the type.

I’m using Bouml 6.8.6


Thanks
Thomas
Attachments
Bildschirmfoto 2015-08-21 um 16.04.48.png
Th corresponding artifact dialog
Bildschirmfoto 2015-08-21 um 16.04.48.png (128.43 KiB) Viewed 7165 times
Bildschirmfoto 2015-08-21 um 16.02.44.png
The class dialog
Bildschirmfoto 2015-08-21 um 16.02.44.png (79.39 KiB) Viewed 7165 times
Bildschirmfoto 2015-08-21 um 15.57.03.png
ObservantId definition from IDL class view
Bildschirmfoto 2015-08-21 um 15.57.03.png (30.82 KiB) Viewed 7165 times
Bildschirmfoto 2015-08-21 um 15.56.47.png
ObservantId definition from UML class view
Bildschirmfoto 2015-08-21 um 15.56.47.png (35.27 KiB) Viewed 7165 times
Bildschirmfoto 2015-08-21 um 15.52.22.png
Interface definition from browser view
Bildschirmfoto 2015-08-21 um 15.52.22.png (27.59 KiB) Viewed 7165 times
--
Thomas Schmidt
Velgen 1, D-29582 Hanstedt
PGP: Key-ID: 0x810B6206
morini
 
Posts: 12
Joined: Tue 9 Oct 2012 10:05
Location: Germany

Re: IDL typedef generation fails

Postby Bruno Pagès » Fri 21 Aug 2015 16:25

You are right, the types can be nested, I will fix that

Thank you for the bug report
ImageAuthor of Bouml
Bruno Pagès
 
Posts: 440
Joined: Mon 20 Feb 2012 08:23
Location: France

Re: IDL typedef generation fails

Postby Bruno Pagès » Sun 23 Aug 2015 18:48

The release 6.8.7 is available, fixing this bug
ImageAuthor of Bouml
Bruno Pagès
 
Posts: 440
Joined: Mon 20 Feb 2012 08:23
Location: France

Re: IDL typedef generation fails

Postby morini » Sun 23 Aug 2015 19:34

Hey, the fastest support I've ever seen!

Thanks, I'll try it immediately.
--
Thomas Schmidt
Velgen 1, D-29582 Hanstedt
PGP: Key-ID: 0x810B6206
morini
 
Posts: 12
Joined: Tue 9 Oct 2012 10:05
Location: Germany

Re: IDL typedef generation fails

Postby morini » Sun 23 Aug 2015 20:05

Sorry, but there's yet another bug coming with this fix. The generator now creates the typedef but it uses the UML type instead of translating it into the IDL type.

I would expect:

Code: Select all
typedef unsigned long ObservantId;


but I get:

Code: Select all
typedef ulong ObservantId;
--
Thomas Schmidt
Velgen 1, D-29582 Hanstedt
PGP: Key-ID: 0x810B6206
morini
 
Posts: 12
Joined: Tue 9 Oct 2012 10:05
Location: Germany

Re: IDL typedef generation fails

Postby Bruno Pagès » Sun 23 Aug 2015 20:29

The way the typedef are generated is unchanged, this is in fact an old unknown bug

To bypass that you can use directly "unsigned long" rather than "ulong" in the typedef definition

I need a full day to compile & packages bouml for all the distributions each time I make a new version, because there is a simple way to bypass this bug I will probably not make the new version before the next weekend, allowing you to find new bugs may be ;) IDL is probably not very used
ImageAuthor of Bouml
Bruno Pagès
 
Posts: 440
Joined: Mon 20 Feb 2012 08:23
Location: France

Re: IDL typedef generation fails

Postby morini » Sun 23 Aug 2015 21:08

That's nice. If there's a fix around something it's ok.

Many thanks!
--
Thomas Schmidt
Velgen 1, D-29582 Hanstedt
PGP: Key-ID: 0x810B6206
morini
 
Posts: 12
Joined: Tue 9 Oct 2012 10:05
Location: Germany

Re: IDL typedef generation fails

Postby Bruno Pagès » Thu 27 Aug 2015 16:08

The release 6.8.8 is available, fixing this bug
ImageAuthor of Bouml
Bruno Pagès
 
Posts: 440
Joined: Mon 20 Feb 2012 08:23
Location: France

Re: IDL typedef generation fails

Postby morini » Thu 27 Aug 2015 18:17

Many thanks,

its working great!
--
Thomas Schmidt
Velgen 1, D-29582 Hanstedt
PGP: Key-ID: 0x810B6206
morini
 
Posts: 12
Joined: Tue 9 Oct 2012 10:05
Location: Germany


Return to Bug reports / Rapports de bugs

Who is online

Users browsing this forum: No registered users and 1 guest

cron