From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,e7dd5c59df710c50 X-Google-Attributes: gid103376,public From: "Matthew Heaney" Subject: Re: Record comparison special case Date: 1999/12/06 Message-ID: <384bff4a_3@news1.prserv.net>#1/1 X-Deja-AN: 557352161 Content-transfer-encoding: 7bit References: <829bp3$oba$1@nnrp1.deja.com> <384a1027_2@news1.prserv.net> <82gqnl$k9c$1@nnrp1.deja.com> Content-Type: text/plain; charset="US-ASCII" X-Complaints-To: abuse@prserv.net X-Trace: 6 Dec 1999 18:24:10 GMT, 32.101.8.128 Organization: Global Network Services - Remote Access Mail & News Services Mime-version: 1.0 Newsgroups: comp.lang.ada Date: 1999-12-06T00:00:00+00:00 List-Id: In article <82gqnl$k9c$1@nnrp1.deja.com> , keniwasa@my-deja.com wrote: > Is tagged part of Ada95? I'm using Ada83. You have to make it clear that you're using Ada83; otherwise, CLA readers will assume you mean Ada95. No, you don't need to say tagged; I just did that so predefined equality wouldn't reemerge. However, you can't declare your nonprivate record type as limited in Ada83, and there's no simple way to override the equality operator for a nonprivate nonlimited type (in Ada83). You have to take advantage of a loophole in the language, called the "Goodenough Trick." See the Ada FAQ for details. > The problem I had was that the "small parts" are not necessarily the > same for all records. I also wanted to be able to merge records whose > "small parts" did not conflict and identify records whose "small > parts" did conflict. Simplest way (in Ada83) is to declare a comparison function: type T is ; function Is_Equal (L, R : T) return Boolean; I don't really understand what you mean by "small parts being in conflict." Perhaps with more detail about your problem we can provide more information.