From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7959 invoked by alias); 19 Jun 2011 12:55:02 -0000 Received: (qmail 7911 invoked by uid 22791); 19 Jun 2011 12:55:02 -0000 X-SWARE-Spam-Status: No, hits=-2.8 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: sourceware.org Received: from smtp1.u-psud.fr (HELO smtp1.u-psud.fr) (129.175.33.41) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sun, 19 Jun 2011 12:54:48 +0000 Received: from smtp1.u-psud.fr (localhost [127.0.0.1]) by localhost (MTA) with SMTP id B2D9F251C8B for ; Sun, 19 Jun 2011 14:54:46 +0200 (CEST) Received: from matups.math.u-psud.fr (matups.math.u-psud.fr [129.175.50.4]) by smtp1.u-psud.fr (MTA) with ESMTP id 97E122509A9 for ; Sun, 19 Jun 2011 14:54:46 +0200 (CEST) Received: from barah.math.u-psud.fr (barah.math.u-psud.fr [129.175.52.24]) by matups.math.u-psud.fr (Postfix) with ESMTP id 99E3D7541 for ; Sun, 19 Jun 2011 14:54:46 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by barah.math.u-psud.fr (Postfix) with ESMTP id 9FEAD474066 for ; Sun, 19 Jun 2011 14:54:45 +0200 (CEST) Received: from barah.math.u-psud.fr ([127.0.0.1]) by localhost (barah.math.u-psud.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 04eD1jTOrLTC for ; Sun, 19 Jun 2011 14:54:40 +0200 (CEST) Received: from [IPv6:::1] (topodyn-ng.math.u-psud.fr [129.175.50.33]) by barah.math.u-psud.fr (Postfix) with ESMTP id F34BE474061 for ; Sun, 19 Jun 2011 14:54:38 +0200 (CEST) Message-ID: <4DFDF18E.8090201@free.fr> Date: Sun, 19 Jun 2011 18:01:00 -0000 From: Duncan Sands User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110516 Thunderbird/3.1.10 MIME-Version: 1.0 To: gcc-patches@gcc.gnu.org Subject: Re: [Ada] Fix bugs with volatile and components of aggregate types References: <201106181255.09679.ebotcazou@adacore.com> In-Reply-To: <201106181255.09679.ebotcazou@adacore.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2011-06/txt/msg01412.txt.bz2 Hi Eric, > This is the usual problem of volatile accesses not preserved under (heavy) > optimization. In Ada, we can put pragma Volatile on components of composite > types without putting it on the enclosing type itself, if T is a non-volatile composite type with volatile components, and O is an object of type T, are the optimizers allowed to remove the assignment "O := O"? Ciao, Duncan.