[omniORB] is this an omniidl bug or feature?
Wernke zur Borg
wernke.zur.borg at vega.de
Fri Oct 13 09:28:29 BST 2006
>
> tao_idl, mico_idl and orbit_idl say OK but omniidl
>
> // x.idl
> typedef long L;
>
> struct test
> {
> L _l;
> };
>
>
> [jw at dell idl]$ omniidl x.idl
> omniidl: Warning: No back-ends specified; checking IDL for validity
> x.idl:5: Instance identifier 'l' clashes with use of identifier 'L'
> x.idl:5: ('L' used here)
> omniidl: 1 error.
>
omniIDL is right. Perhaps it should have spotted the illegal underscore
character instead of ignoring it. See the spec here:
http://www.omg.org/technology/documents/formal/corba_2.htm
[quote]
3.2.3 Identifiers
An identifier is an arbitrarily long sequence of ASCII alphabetic,
digit, and underscore ("_") characters. The first character must be an
ASCII alphabetic character. All characters are significant.
3.20 Names and Scoping
OMG IDL identifiers are case insensitive; that is, two identifiers that
differ only in the case of their characters are considered redefinitions
of one another. However, all
references to a definition must use the same case as the defining
occurrence.
[/quote]
Regards,
Wernke
More information about the omniORB-list
mailing list