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,470860aa3e635a7 X-Google-Attributes: gid103376,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news2.google.com!postnews.google.com!g4g2000hsf.googlegroups.com!not-for-mail From: Matthew Heaney Newsgroups: comp.lang.ada Subject: Re: GNAT for MS Visual Studio Date: Sat, 06 Oct 2007 07:47:01 -0700 Organization: http://groups.google.com Message-ID: <1191682021.844225.236870@g4g2000hsf.googlegroups.com> References: <13duou81kg3sd1c@corp.supernews.com> <13f3e0vbb05s47c@corp.supernews.com> <13f6eg0te46m2a3@corp.supernews.com> <4xsl4zw3bp.fsf@hod.lan.m-e-leypold.de> <1191357491.860178.230380@22g2000hsm.googlegroups.com> <4702ADCC.7080209@obry.net> <1191439439.120567.172630@g4g2000hsf.googlegroups.com> <4703F02D.3030207@obry.net> NNTP-Posting-Host: 65.110.143.10 Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Trace: posting.google.com 1191682022 20432 127.0.0.1 (6 Oct 2007 14:47:02 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Sat, 6 Oct 2007 14:47:02 +0000 (UTC) In-Reply-To: <4703F02D.3030207@obry.net> User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727),gzip(gfe),gzip(gfe) Complaints-To: groups-abuse@google.com Injection-Info: g4g2000hsf.googlegroups.com; posting-host=65.110.143.10; posting-account=ps2QrAMAAAA6_jCuRt2JEIpn5Otqf_w0 Xref: g2news2.google.com comp.lang.ada:2325 Date: 2007-10-06T07:47:01-07:00 List-Id: On Oct 3, 2:40 pm, Pascal Obry wrote: > > "use" here does not mean "modification". I don't even start to > understand what could be wrong to have two tasks "reading" the same > container. The container won't change, so this can't be a problem. No, this is incorrect. The container keeps track of nested calls (e.g. Query_Element, Iterate) using a count, in order to prevent container misuse (e.g. deleting the element while it's being queried). So even though the logical view of the container doesn't change, then physical view does change, and so the standard requires that multiple tasks accessing a container must be properly synchronized, even when the access is read-only.