[omniORB] omniidl2-Parsing error?

David Riddoch djr@orl.co.uk
Mon, 26 Oct 1998 18:35:03 +0000 (GMT)


Jan,

The spec says that although the case of identifiers is significant, two
identifiers may not differ only in case. This means that in your sample
IDL <R_dodo> and <r_dodo> collide, and correctly cause a compilation
error (ref CORBA 2.2 3.2.3). It is exactly as if you had written:

...
  long   bla( out R_dodo R_dodo );
...

The reason for this is to allow mappings to languages which are case
insensitive.

David


On Mon, 26 Oct 1998 Jan.Zurek@dresdner-bank.com wrote:

> Hello everybody!
> 
> We faced a problem with the omniidl2-compiler when processing one of our
> idl-files. We reduced the problem to the following example.
> 
> Compiling the following idl
> 
> interface test {
> 
>   struct R_dodo {
>     long a;
>   };
> 
>   long   bla( out R_dodo r_dodo );
> };
> 
> produces the output:
> /opt/omniORB2/bin/omniidl2: "/tmp/idli_a11556.cc", line 7: identifier used
> with two differing spellings: "r_dodo" and "R_dodo"
> /opt/omniORB2/bin/omniidl2: "/tmp/idli_a11556.cc", line 7: redefinition
> after use, ::test::bla::r_dodo, ::test::bla, ::test::R_dodo
> /opt/omniORB2/bin/omniidl2: dodo.idl: found 2 errors
> 
> 
> Any ideas? Is there something wrong?
> 
> 
> Regards
> Jan Zurek
> Dresdner Kleinwort Benson
> Global Markets Division
> Information Technology
> Tel: 	+49 69 263 6318
> Fax: 	+49 69 263 11454
> e-mail:	jan.zurek@dresdner-bank.de
> <http://www.ltt.de/ciow97/pr_oo_winners_e.html>
> 
> 
>