Chapter 2: Restrictions
No | Restriction | Alternative Method | Date of | |
|
|
|
| Removal |
|
|
|
| |
3 | Preprocessing declarations cannot be used | None | Not | |
| under the following conditions: |
| determined | |
| 1) | In an exception declaration |
|
|
| 2) | In a struct/union/enum declaration, and in |
|
|
| a member declaration (ending before a |
|
| |
| semicolon) |
|
| |
| Example: |
|
| |
|
| struct STR1{ |
|
|
|
| long |
|
|
|
| #pragma version STR1 2.3 |
|
|
|
| a; |
|
|
|
| string b; |
|
|
|
| char c; |
|
|
|
| }; |
|
|
|
|
|
| |
4 | The following recursive declarations cannot | None | Not | |
| be used in the Java mapping of the IDL |
| determined | |
| definition: |
|
| |
| 1) | Recursive declaration of a structure |
|
|
| (struct) |
|
| |
|
| struct STR1 { |
|
|
|
| sequence<STR1> para1; |
|
|
|
| }; |
|
|
| 2) | Recursive declaration of a union (union) |
|
|
|
| union UNI1 switch(long){ |
|
|
|
| case1: sequence<UNI1> para1; |
|
|
|
| }; |
|
|
5 | Type union cannot be used in the | None | Not | |
| CORBA/SOAP gateway generation of the |
| determined | |
| IDL definition. |
|
|