Issue 632: Spec insufficient in section 5.2.1 - Reserved Names (java-rtf) Source: (, ) Nature: Uncategorized Severity: Summary: Summary: Reserved words seen as IDL identifiers be prepended by an underscore. Insufficient for Holder, Helper, Package in case where two or three of these strings appear in single identifier Resolution: Clarify the IDL Name conflict resolution rules to resolve this case. Also change the naming rules Revised Text: Solution suggested: extend rule in section 5.2.1 to require one underscore to be prepended for each suffix on the nameAdd the following sentence to paragraph 2 in Section 25.1 "Names": Actions taken: July 23, 1997: received issue May 18, 1998: Deferred June 4, 1999: closed issue Discussion: End of Annotations:===== Jeff Mischkinsky email: jeffm@visigenic.com Senior Software Architect voice: +1(415)312-5158 Visigenic Software, Inc. fax: +1(415)286-2475 951 Mariner's Island Blvd. Suite 460 web: http://www.visigenic.com San Mateo, CA 94404 Return-Path: Received: from mercury.Sun.COM ([192.9.25.1]) by odin.visigenic.com (Netscape Mail Server v2.02) with SMTP id AAA23352; Mon, 21 Jul 1997 07:00:43 -0700 Received: from Eng.Sun.COM ([129.146.1.25]) by mercury.Sun.COM (SMI-8.6/mail.byaddr) with SMTP id HAA22749; Mon, 21 Jul 1997 07:30:47 -0700 Received: from toss.eng.sun.com by Eng.Sun.COM (SMI-8.6/SMI-5.3) id HAA02037; Mon, 21 Jul 1997 07:01:22 -0700 Received: from Eng.Sun.COM by toss.eng.sun.com (SMI-8.6/SMI-SVR4) id HAA17386; Mon, 21 Jul 1997 07:01:18 -0700 Received: from saturn.Sun.COM by Eng.Sun.COM (SMI-8.6/SMI-5.3) id HAA21863; Mon, 21 Jul 1997 07:01:18 -0700 Received: from VNET.IBM.COM (vnet.ibm.com [204.146.168.194]) by saturn.Sun.COM (SMI-8.6/mail.byaddr) with SMTP id HAA14217 for ; Mon, 21 Jul 1997 07:02:33 -0700 Received: from RCHLAND by VNET.IBM.COM (IBM VM SMTP V2R3) with BSMTP id 5005; Mon, 21 Jul 97 10:01:14 EDT Reply-To: "Russell Butek" Received: by po1 (AIX 3.2/UCB 5.64/4.7) id for idl-java-external@toss.eng.sun.com; Mon, 21 Jul 1997 09:00:47 -0500 Received: via switchmail; Mon, 21 Jul 1997 09:00:47 -0500 (CDT) Received: from bourbonst.rchland.ibm.com via qmail ID ; Mon, 21 Jul 1997 09:00:27 -0500 (CDT) Received: from bourbonst.rchland.ibm.com via qmail ID ; Mon, 21 Jul 1997 09:00:24 -0500 (CDT) Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.bourbonst.rchland.ibm.com.rs.aix41 via MS.5.6.bourbonst.rchland.ibm.com.rs_aix41; Mon, 21 Jul 1997 09:00:23 -0500 (CDT) Message-Id: <4noqhrY91Ia09tCZZW@rchland.ibm.com> Date: Mon, 21 Jul 1997 09:00:23 -0500 (CDT) From: Russell Butek To: idl-java-external@toss.Eng.Sun.COM Subject: Spec insufficient in section 5.2.1- Reserved Names The spec defines that any reserved words seen as IDL identifiers be prepended by an underscore. This also applies to identifiers which end in Helper, Holder, and Package. But for these three, this rule is insufficient in the case where two or three of these strings appear in a single identifier. For example: interface FooHelper { struct x { boolean b; }; }; interface FooHelperPackage {}; FooHelper causes the following to be generated: _FooHelper _FooHelperHelper _FooHelperHolder _FooHelperPackage FooHelperPackage causes the following to be generated: _FooHelperPackage _FooHelperPackageHelper _FooHelperPackageHolder There is a conflict between the Package of FooHelper and the interface of FooHelperPackage. The solution suggested to me, which I have implemented in IBM's IDL-to-Java compiler, is to extend the rule in section 5.2.1 to require one underscore to be prepended for each suffix on the name. This rule would map FooHelperPackage to the interface __FooHelperPackage (two prepended underscores), which would not conflict with FooHelper's package _FooHelperPackage (one prepended underscore). Russell Butek