Issue 2971: Reflective IDL fix for CORBA 2.3 (mof-rtf) Source: DSTC (Dr. Stephen Crawley, nobody) Nature: Uncategorized Issue Severity: Summary: The Reflective module contains the following IDL type alias: typedef any ValueType; Unfortunately, CORBA 2.3 has added a new IDL keyword "valuetype". Hence a CORBA 2.3 compliant compiler will give syntax errors for the Reflective IDL. Possible solutions include: 1) Replace "ValueType" with "_ValueType" throughout the Reflective module. 2) Change "ValueType" to another name; e.g. "CorbaValueType". 3) Remove the typedef, and replace all instances with "any". Resolution: Adopt approach 1 to minimize impact on interoperability. Flag this to be fixed properly in MOF 2.0. Revised Text: Change all occurrences of "ValueType" in IDL to "_ValueType". Change all occurrences of "ValueType" in text to "Reflective::ValueType" Sections 5.4, 6.2.1, 6.2.3, 6.3.2, Appendix B.2 Actions taken: October 14, 1999: received issue December 3, 2001: closed issue Discussion: End of Annotations:===== X-Mailer: exmh version 2.1.0 09/18/1999 To: issues@omg.org, mof-rtf@omg.org Subject: Reflective IDL fix for CORBA 2.3 Mime-Version: 1.0 Date: Thu, 14 Oct 1999 12:03:21 +1000 From: Stephen Crawley Content-Type: text/plain; charset=us-ascii X-UIDL: M+*!!Zd>!!Scd!!R$/e9 The Reflective module contains the following IDL type alias: typedef any ValueType; Unfortunately, CORBA 2.3 has added a new IDL keyword "valuetype". Hence a CORBA 2.3 compliant compiler will give syntax errors for the Reflective IDL. Possible solutions include: 1) Replace "ValueType" with "_ValueType" throughout the Reflective module. 2) Change "ValueType" to another name; e.g. "CorbaValueType". 3) Remove the typedef, and replace all instances with "any". Solution 1) has no impact on pre- MOF 1.4 clients and servers. However, it makes use of another feature of CORBA 2.3, and means that MOF vendors would need to supply different Reflective.idl files for CORBA 2.3 and pre CORBA 2.3 implementations of MOF. [I don't think this should create any ORB version related interoperability problems for MOFs, since the IDL types / TypeCodes would be the same in both cases.] Solutions 2) and 3) change the MOF interfaces and could cause minor interoperability problems between MOF 1.3 and MOF 1.4. -- Steve X-Mailer: exmh version 2.2 06/23/2000 with nmh-1.0.4 To: mof-rtf@omg.org Subject: Proposed resolution for Issue 2971 Mime-Version: 1.0 Date: Mon, 09 Apr 2001 15:17:41 +1000 From: Stephen Crawley X-Scanned-By: MIMEDefang 1.0 (http://www.roaringpenguin.com/mimedefang/) Content-Type: text/plain; charset=us-ascii X-UIDL: ?/6!!)O>e9*Y!!!j7f!! > Title: Issue 2971: Reflective IDL fix for CORBA 2.3 > Summary: The Reflective module contains the following IDL type > alias: > > typedef any ValueType; > > Unfortunately, CORBA 2.3 has added a new IDL keyword > "valuetype". Hence a > CORBA 2.3 compliant compiler will give syntax errors for the > Reflective IDL. > > Possible solutions include: > 1) Replace "ValueType" with "_ValueType" throughout the Reflective > module. > 2) Change "ValueType" to another name; e.g. "CorbaValueType". > 3) Remove the typedef, and replace all instances with "any". Proposed resolution: Adopt approach 1 to minimize impact on interoperability. Flag this to be fixed properly in MOF 2.0. Proposed revised text: Change all occurrences of "ValueType" in IDL to "_ValueType". Change all occurrences of "ValueType" in text to "Reflective::ValueType" Sections 5.4, 6.2.1, 6.2.3, 6.3.2, Appendix B.2 Add the following sentence to the second paragraph of 6.3.2: "Note: the ValueType typedef in CORBA IDL is written with a leading "_" escape to avoid collision with the CORBA 2.3 valuetype keyword. (The name of this type will be changed in a future revision of this specification.)" [Editorial:] Change the last sentence of the second paragraph of 6.3.2 to say "... is meta-model specific according to the patterns defined in 6.2.1. Add the ValueType typedef to the IDL for the MofError exception in 5.4.