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=-0.9 required=3.0 tests=BAYES_00, PP_MIME_FAKE_ASCII_TEXT autolearn=no autolearn_force=no version=3.4.6 Path: eternal-september.org!reader02.eternal-september.org!gandalf.srv.welterde.de!news.jacob-sparre.dk!franka.jacob-sparre.dk!pnx.dk!.POSTED.rrsoftware.com!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: How to challenge a GCC patch? Date: Wed, 13 Oct 2021 20:40:42 -0500 Organization: JSA Research & Innovation Message-ID: References: Injection-Date: Thu, 14 Oct 2021 01:40:43 -0000 (UTC) Injection-Info: franka.jacob-sparre.dk; posting-host="rrsoftware.com:24.196.82.226"; logging-data="30414"; mail-complaints-to="news@jacob-sparre.dk" X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-RFC2646: Format=Flowed; Response X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.7246 Xref: reader02.eternal-september.org comp.lang.ada:62991 List-Id: "J-P. Rosen" wrote in message news:sjerti$5s1$1@dont-email.me... > 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. Go back and read many of the SI99s. I'm not going to waste time doing it again. >>>> 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? The semantics, of course. You have a list of entities in a scope. The only interesting thing from the source code is the line/position of the declaration and/or use. The details of the source are irrelevant (such as whether optional keywords are given). >>> 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. It's a basic part of the ASIS definition, and I fail to see how you could do much without it. You have to keep nonsense such as whether someone specified "in" or a matching id after "end". A waste of time and space. You also have to keep the entire program in a tree form, which is also dubious (Janus/Ada certainly does not do that). >> 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... It is a big deal when multiplied by dozens of such things. And that information has to be carried through from the front end -- we discard everything possible from the front end, as it cuts the I/O load and effectively doubled the speed of the compiler. Maybe doesn't matter as much these days, but back then it was a difference between running the ACVC in 5 days or 10 days. On the rest, we're going to agree to disagree. Don't expect any support from me for doing anything with ASIS in the ARG. Randy.