[omniORB] cannot marshal a null fixed
Renzo Tomaselli
renzo.tomaselli@tecnotp.it
Tue Mar 11 14:55:02 2003
Duncan,
got it, excellent support as usual. Thank you very much,
Renzo Tomaselli
----- Original Message -----
From: "Duncan Grisby" <duncan@grisby.org>
To: "Renzo Tomaselli" <renzo.tomaselli@tecnotp.it>
Cc: "Omniorb list" <omniorb-list@realvnc.com>
Sent: Tuesday, March 11, 2003 2:05 PM
Subject: Re: [omniORB] cannot marshal a null fixed
> On Monday 10 March, "Renzo Tomaselli" wrote:
>
> > this sounds strange. All of:
> >
> > CORBA::Fixed f;
> > CORBA::Fixed f(0);
> > CORBA::Fixed f("0");
> >
> > etc. yield the same null fixed, thus they are invalid.
>
> There is nothing invalid (or null) about them. However, fixed point
> values can only be sent through an IDL interface if either the IDL
> declares a specific fixed point type, with specific limits, or if you
> put it in an any.
>
> To put it in an any, you need a typecode; it is illegal to have a
> typecode specifying a fixed with zero digits, just as it is illegal to
> write IDL that says typedef fixed<0,0> MyFixed. If you are generating
> a typecode, either explicitly or implicitly with
> CORBA::Any::from_fixed, it is up to you to make sure it is legal.
>
> I've attached a simple client and server that demonstrate that it is
> fine to send zero as a fixed point value.
>
> Cheers,
>
> Duncan.
>
>