| Summary: | 2.0+ idl compiler cannot compile the idl that has interface inheritance which has the refined attributes. | ||
|---|---|---|---|
| Product: | JacORB | Reporter: | david <wei.guoqiang> |
| Component: | IDL compiler | Assignee: | Simon McQueen <sm> |
| Status: | RESOLVED INVALID | ||
| Severity: | major | CC: | gordon, lxhjw2000 |
| Priority: | P2 | ||
| Version: | 2.2 | ||
| Hardware: | PC | ||
| OS: | Windows 2000 | ||
The CORBA spec (02-06-33) section 3.8.5, page 3.25 - Interface Inheritance says: "Operation and attribute names are used at run-time by both the stub and dynamic interfaces. As a result, all operations attributes that might apply to a particular object must have unique names. This requirement prohibits redefining an operation or attribute name in a derived interface, as well as inheriting two operations or attributes with the same name." So your IDL is incorrect and JacORB is handling it as per the spec. |
2.0+ idl compiler cannot compile the idl that has interface inheritance which has the same attributes. For example, the following idl cannot be compiled correctly by 2.0+ idl compiler but can be compiled by 1.4 idl compiler. module ex{ interface Top { readonly attribute string CLASS; }; interface ManagedElement:Top { readonly attribute string CLASS; };