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-Thread: 103376,4ef4bf3098ab117 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!news.glorb.com!border1.nntp.dca.giganews.com!nntp.giganews.com!local1.nntp.dca.giganews.com!nntp.megapath.net!news.megapath.net.POSTED!not-for-mail NNTP-Posting-Date: Mon, 25 Oct 2004 19:27:33 -0500 From: "Randy Brukardt" Newsgroups: comp.lang.ada References: Subject: Re: Ada compiler differences Date: Mon, 25 Oct 2004 19:28:57 -0500 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4807.1700 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300 Message-ID: NNTP-Posting-Host: 64.32.209.38 X-Trace: sv3-E56vqcviqOb7H0zxAWn/NdhZycTqcfcI72FNNQ/joHCp6ydKAte+hsMdRMej9rNO0XBMQ+I8ytiUcKi!HFuapGmFUbvyNR/uRuOyBaq/2cy1msPVPRDGkwj+Rp+tgB/lS5GmLTmWdvu2+L/TJPavhIkVOWja X-Complaints-To: abuse@megapath.net X-DMCA-Complaints-To: abuse@megapath.net X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.3.20 Xref: g2news1.google.com comp.lang.ada:5702 Date: 2004-10-25T19:28:57-05:00 List-Id: "Simon Wright" wrote in message news:x7vzn2iq6t4.fsf@smaug.pushface.org... > Stephen Leake writes: > > > Hmm. If the Language Reference Manual does not _explicitly_ state > > that a particular function is safe for calling from multiple tasks, > > then you must assume it is not, and provide your own layer of task > > protection for it. I suspect Nick has been violating this rule. > > What, even Generic_Elementary_Functions.Arctan?! This is wrong. As long as the tasks are not passing the same objects, the language requires that multiple tasks can call predefined routines at the same time. See A(3). (That's the third paragraph of the introduction to Annex A.) Any implementation that fails to do that for any predefined subprogram is incorrect. Of course, it is not unusual for implementations to be incorrect, especially in this area; and that seemed to be Nick's original point. It will be very important that this property is true for the containers, for instance. Randy.