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.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,a011e82e0079f0ea X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-08-11 12:18:33 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!headwall.stanford.edu!newshub.sdsu.edu!elnk-nf2-pas!newsfeed.earthlink.net!stamper.news.pas.earthlink.net!newsread4.news.pas.earthlink.net.POSTED!not-for-mail Message-ID: <3F37EC07.30009@spam.com> From: Jeffrey Carter Organization: jrcarter commercial-at acm [period | full stop] org User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0.0) Gecko/20020530 X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Ravenscar - Multiple Protected Entries References: <3F35AFA7.1030905@spam.com> <3F369A4E.1050406@spam.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Date: Mon, 11 Aug 2003 19:18:33 GMT NNTP-Posting-Host: 63.184.16.134 X-Complaints-To: abuse@earthlink.net X-Trace: newsread4.news.pas.earthlink.net 1060629513 63.184.16.134 (Mon, 11 Aug 2003 12:18:33 PDT) NNTP-Posting-Date: Mon, 11 Aug 2003 12:18:33 PDT Xref: archiver1.google.com comp.lang.ada:41323 Date: 2003-08-11T19:18:33+00:00 List-Id: Stephan Heinemann wrote: > > I am a littlebit confused... In 9.5.3 you can find the following > statement: "If calls from two or more queues are simultaneously > eligible for selection, the default entry queuing policy does not > specify which queue is serviced first.". The default queuing policy is > FIFO_Queuing. In section D.4 you can find the following: "When more > than one condition of an entry_barrier of a protected object becomes > True, and more than one of the respective queues is nonempty, the call > with the highest priority is selected. If more than one such call has > the same priority, the call that is queued on the entry whose > declaration is first in textual order in the protected_definition is > selected. For members of the same entry family, the one with the lower > family index is selected." Well, what shall I believe now? All compilers have to implement the core language, and section 9 is part of the core language. Annex D (Real-Time Systems) is an optional annex that a compiler vendor can choose not to implement, to implement partially, or to implement completely. If your compiler implements Annex D and you don't mind being limited to compilers that implement Annex D, then you can rely on the entry that appears first in the protected unit's specification. If you want to be portable to all compilers, you can only count on the things in the core language. This appears to be the intention of Ravenscar, since it limits protected objects to a single entry to avoid non-determinism. -- Jeff Carter "We use a large, vibrating egg." Annie Hall