From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-2.9 required=3.0 tests=BAYES_00,NICE_REPLY_A autolearn=ham autolearn_force=no version=3.4.6 Path: eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail From: "J-P. Rosen" Newsgroups: comp.lang.ada Subject: Re: How to challenge a GCC patch? Date: Mon, 4 Oct 2021 14:26:25 +0200 Organization: Adalog Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Mon, 4 Oct 2021 12:26:26 -0000 (UTC) Injection-Info: reader02.eternal-september.org; posting-host="3f21aaf0f3df8d1289d91ba75ff5432b"; logging-data="6017"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/33XvABRpIk9wN1aHZYBvl" User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 Cancel-Lock: sha1:pijr3E9LOa5GNRRyP3Gm7cZWGxo= In-Reply-To: Content-Language: fr Xref: reader02.eternal-september.org comp.lang.ada:62939 List-Id: Le 02/10/2021 à 11:34, Randy Brukardt a écrit : > No, the existing part also had major problems. Many of the terms were never > defined, many possible effects were missing from the various lists of > results, and loads of other things as well. Huh? ASIS uses the terms of, and as defined in, the LRM. And I never hit a "missing result". Curious to see what you are aluding too. > >>> The entire model of ASIS doesn't make much sense for static analysis >>> purposes, it's way too focused on syntax rather than semantics. Yes, it is a description of the syntactic. Where else can you start from? >> It is a exact image of the program, from which you can derive all >> information you need. Some higher level queries are needed, but they can >> be provided as secondary queries or added to the standard. > > That's exactly the problem. You start with the source code, which is way too > low a level for any useful analysis. At most, you want a simple connection > to the source in the semantic information, not trying to preserve every > punctuation mark and comment. (Janus/Ada discards all of that stuff as soon > as parsing succeeds.) If you need to refer to the original source, say for > error handling purposes, then do that, but don't waste vast amounts of space > and time trying to keep loads of irrelevant material. The liaison to the source is not fundamental to any serious analysis, and anyway you are not required to provide it. > No sane compiler (validated or not) keeps all of the irrelevant syntactic > detail required by ASIS. It ends up getting reconstructed solely for the use > of ASIS, and how a rarely used interface is somehow more reliable escapes > me. Except for the not-required text interface, I see very few of these "irrelevant syntactic details". OK, you have to keep a boolean to remember if "end" is followed by a name. Big deal... > A true semantic interface on the lines of the one proposed for ASIS would > make good sense (design of types), but the vast majority of the existing > ASIS belongs in a rubbish bin. Good riddance. Says someone who didn't use or implement ASIS. BTW, I understand that ASIS would be difficult to implement in Janus Ada, especially when it comes to generic expansion. But it's not a reason to deprive others from it... >> [...] (I think it is a fairly close > representation of the internals of early Rational compilers True, the design was based on ideas from Diana. But it was designed with inputs from various compilers. > I've assumed most people used it because it was there and because some > people had spent a lot of time trying to define it as some sort of Standard. > Just because people put a lot of work into something doesn't mean that it is > a useful thing. It allowed me to build a very sophisticated tool, valued at 1.24M$ (see https://www.adacontrol.fr), and used by very serious customers. Seems enough to qualify it "useful". -- J-P. Rosen Adalog 2 rue du Docteur Lombard, 92441 Issy-les-Moulineaux CEDEX Tel: +33 1 45 29 21 52 https://www.adalog.fr