From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 58917 invoked by alias); 4 Sep 2019 13:44:08 -0000 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 Received: (qmail 58904 invoked by uid 89); 4 Sep 2019 13:44:07 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-6.1 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_2,KAM_ASCII_DIVIDERS,KAM_SHORT autolearn=ham version=3.3.1 spammy=states, services X-HELO: esa4.hgst.iphmx.com Received: from esa4.hgst.iphmx.com (HELO esa4.hgst.iphmx.com) (216.71.154.42) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 04 Sep 2019 13:44:05 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1567604645; x=1599140645; h=date:from:to:cc:subject:in-reply-to:message-id: references:mime-version; bh=7Z1xNulB3XJLI33kr5lgwk2v/EvXTrgqgnAqiAtlOas=; b=nzZYoeZqPQ797x8TKc9Vo/U6ThXXEwsGZM9qKcl9k0xdgMzDdle6R56w ztSUjMBGeuSMd7P0NcOyjtPzHU2sYXJ6n6gZ9qS2oR9UVSC/WqQTuRLG2 ildV2p7ww5xKRU4m8lwt/owXq+prrGpxsWpwUGAj9pvD+Leta/XUJiZ4X n9p9cnxB0vmDr3mM7wbrhSlEdt4czNVrihRGN/sI68jfj4a2+MMtB72cJ 2piUT+MxpXa/4hF2KyrgnrXP2omyE2kkQKH8xoIDwHDA8xC4qR1ySndRS wr3E8shv50A0AaRDAcPR3P2HBvJBy2Z5v8j7Pqa9oxJ7v58Ls/Ay+vf8P Q==; IronPort-SDR: T68Pscl/bDvWyYqyOcKsaxoydJVgQU5l7Zo8CdkCHVx2xn0RWLfnC5n93LQ/k1nxb6TZuU6f8g Rk7OLzj++PXBZ2+DrSbyt0rO2Qy/JC8EPKE6vFdOeN3rvy+ppm0G82o6B/C7AESq66ZVFk4r50 CAz/46QBkKzLC8p/++R2aOOuskNcyGbdm+uwFA4lu/FHwpVltVbwN+q0HY0DEdQtwjlZ65iFGw 2tCWres2m127YtyHOrWS8QwV/87c6nbH20CXKqIUx8/sQJy5R1eo9ug/dl2ZV79KYpTJqxs1l0 juY= Received: from h199-255-45-14.hgst.com (HELO uls-op-cesaep01.wdc.com) ([199.255.45.14]) by ob1.hgst.iphmx.com with ESMTP; 04 Sep 2019 21:44:04 +0800 IronPort-SDR: tqOVE7zu1+ivkVejt3624gkD8zYyLDtO6Wn96R/q+BVsdgkMpKSJh//sHwGS5lCjEr5OGWcZUg jHmK0kT4cVzvz68x4KnMrai/DnQfxrZjBHm4DufQfoypjlR0pu0BF25UlHC8LnbGVtogh4CThT fXbfS1fupGnMQKVWnULFKShYTkdpGxQCEQs3OcDssEXFL4RPB9ljEedwtdZd4QhbHxAMG8RXaY GnLPO1IhXVYNuFI8pLNYqqufygcQ25vj9J60uroe+k1H7C/1A15RM6ZRo5UXjFe/tnEiGCbtii QSKC+1WFjFJS+EsMTOjjnU+W Received: from uls-op-cesaip01.wdc.com ([10.248.3.36]) by uls-op-cesaep01.wdc.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Sep 2019 06:41:02 -0700 IronPort-SDR: K80DsApazMPJjbGMuMCBjlxovvJZbHYgtdfB+jt1/vmDUFj2o/aXS6/94GTKQCwOZkptbe+1nX 3K0meTStpKxc29DqMGx4JuaB3FL5dKiF6FstEWR0xEoUj0+k53YzgvpydrIBqK+TQcqi8zzQvO 6dHawYrxfb9L1aKidvkn9gglQu+weaikPEEbsoT45OXWyUOQ1nQxCjZ0kI4HKNrDS6M7f7pESx nEixolHFDBRI4GkBzmHxI7y9c2b6/EQ+tu97Wh5yFlAY+MzjVh5TTvJk3cSRHbZ89wK2N8WpSI dGY= WDCIronportException: Internal Received: from unknown (HELO redsun52) ([10.149.66.28]) by uls-op-cesaip01.wdc.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Sep 2019 06:44:04 -0700 Date: Wed, 04 Sep 2019 13:44:00 -0000 From: "Maciej W. Rozycki" To: Hristian Kirtchev , Pierre-Marie de Rodat cc: gcc-patches@gcc.gnu.org Subject: Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ... In-Reply-To: <20190703081457.62952.qmail@sourceware.org> Message-ID: References: <20190703081457.62952.qmail@sourceware.org> User-Agent: Alpine 2.21 (LFD 202 2017-01-01) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-SW-Source: 2019-09/txt/msg00191.txt.bz2 Hi, On Wed, 3 Jul 2019, pmderodat@gcc.gnu.org wrote: > Author: pmderodat > Date: Wed Jul 3 08:14:57 2019 > New Revision: 272976 > > URL: https://gcc.gnu.org/viewcvs?rev=272976&root=gcc&view=rev > Log: > [Ada] ABE checks v3.0, foundations of Elaboration order v4.0 > > ------------------------ > -- Elaboration checks -- > ------------------------ > > The dynamic ABE checks model now emits the same diagnostics as those of the > static ABE checks model. > > The ABE checks mechanism has been redesigned and refactored in the face of > increasing requirements. Most of the functionality can now be toggled, thus > allowing for various combinations of behavior. The combinations are defined > as "initial states" and may be further altered. > > Scenarios and targets have been distinctly separated at the higher level, > instead of directly working with nodes and entitites. Scenarios and targets > now carry a representation which removes the need to constantly recompute > relevant attributes, and offers a common interface for the various processors. > > Most processing has now been refactored into "services" which perform a single > ABE-related function. > > ----------------------- > -- Elaboration order -- > ----------------------- > > A new elaboration order mechanism based on the use of an invocation graph to > provide extra information about the flow of execution at elaboration time has > been introduced. > > The ABE checks mechanism has been altered to encode pieces of the invocation > graph in the associated ALI files of units. > > The new elaboration order mechanism reconstructs the full invocation graph at > bind time, and coupled with the library item graph, determines the elaboration > order of units. > > The new elaboration order mechanism is currently inaccessible. This change (not posted to `gcc-patches' for some reason) has caused a regression in the form of a build failure with the `riscv-linux-gnu' target (and for the record the `x86_64-linux-gnu' build/host running GCC 8.3.0): ali.adb:34:28: warning: use clause for package "GNAT" has no effect ali.adb:35:28: warning: use clause for package "Dynamic_HTables" has no effect ali.adb:155:52: "Bucket_Range_Type" is undefined (more references follow) ali.adb:158:27: "Dynamic_Hash_Tables" is undefined ali.adb:173:30: "Sig_Map" is undefined (more references follow) gnatmake: ".../gcc/ada/ali.adb" compilation error make[3]: *** [../gcc-interface/Makefile:469: gnatmake-re] Error 4 make[3]: Leaving directory '.../gcc/ada/tools' make[2]: *** [Makefile:216: gnattools-cross] Error 2 make[2]: Leaving directory '.../gnattools' make[1]: *** [Makefile:11224: all-gnattools] Error 2 -- that has persisted ever since. I have noticed that the `Bucket_Range_Type' data type has only been added after GCC 8 has branched, so I tried GCC 9 instead, Debian 9.2.1 20190821 specifically, but that still fails: ali.adb:35:28: warning: use clause for package "Dynamic_HTables" has no effect ali.adb:158:27: "Dynamic_Hash_Tables" is undefined ali.adb:173:30: "Sig_Map" is undefined (more references follow) gnatmake: ".../gcc/ada/ali.adb" compilation error ../gcc-interface/Makefile:468: recipe for target 'gnatmake-re' failed -- likely due to r272860, which renamed the `Dynamic_HTable' package to `Dynamic_Hash_Tables' (r272860 is earlier than r272976, but it is only r272976 that has made GNAT proper use `Dynamic_Hash_Tables'; previously only `libgnat' used that package). This means that no released GCC version can be used to build trunk GNAT, which would provide a clean upgrade path, and there is only a narrow window between r272860 and r272975 inclusive that lets one move on to GNAT 10. I find this rather unfortunate. Can you please look into it? Maciej