comp.lang.ada
 help / color / mirror / Atom feed
From: "J-P. Rosen" <rosen@adalog.fr>
Subject: Re: How to challenge a GCC patch?
Date: Thu, 30 Sep 2021 08:19:30 +0200	[thread overview]
Message-ID: <sj3ktk$emb$1@dont-email.me> (raw)
In-Reply-To: <d1be0d32-e153-42ad-8b78-eec6b6fda07en@googlegroups.com>

Le 29/09/2021 à 21:04, Emmanuel Briot a écrit :

> I might have misunderstood Arno's point, but my understanding is that AdaCore no longer makes any patch for ASIS.
No, ASIS is still maintained (although as LTM) for paying customers.

> So whatever pro customers have access to (and ASIS was always a paying addon), the community also has access to by downloading the latest available sources.
No, asis-gcc is not distributed by AdaCore.

> The GNAT Pro compiler apparently is losing the capability to generate the tree information, just like the free version of the compiler.
> If you want to use ASIS, my understanding is that you would have to do a separate "compilation" pass using the compiler from the dedicated branch just for the purpose of generating the tree files (and you can discard all the object files it perhaps generates at the same time). Then you can run ASIS tools.
Not really. Compile-on-the-fly is still working with asis-gcc 
(AdaControl is working like that).

> This is for sure a pain for AdaControl maintainers and users, no one disputes that. On the other hand, if tree generation was indeed getting in the way of compiler improvements that benefit every one, I, for one, am happy to see the change.
I'm afraid this is a red herring. I think rather that AdaCore has a hard 
time convincing people of moving from the well defined, carefully 
designed ASIS to the terrible mess of LibAdalang.

To anybody interested in that issue: don't take my word for it. Please 
read the specification of any ASIS module, and compare it to 
libadalang.analysis package.

Personnaly, I will never trust an interface that documents that I should 
expect a character literal on the LHS of an assignment statement!

Another example: it's only very recently (not sure if it is already in 
GitHub) that LibAdalang considered the case of a variable declaration 
with multiple names. How do you explain such an omission after 5 years 
of development?

>> Perhaps Adacore could help the community and Jean-Pierre in this
>> process? (targeted help, improved documentation, etc.)?
> 
I have had a tool partner's agreement with AdaCore, and until recently 
they have been very helpful. But the whole design of LibAdalang is not 
appropriate for deep static analysis, and it is an error to believe that 
it could replace ASIS. OTOH, it has plenty of useful features for other 
use cases not covered by ASIS, like handling of incomplete/incorrect 
code, no question about that.

> I suggested in an early message that perhaps the community could build an ASIS API on top of libadalang, if there is a need for that.
In the beginning of LibAdalang, AdaCore suggested doing that, but they 
abandonned it.

> I also suggested that libadalang documentation should be improved, I definitely agree with that one !
> 
Unfortunately, the whole design (and especially the typing system) of 
Libadalang makes it much more difficult to use than ASIS.

-- 
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

  parent reply	other threads:[~2021-09-30  6:19 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-27 10:06 How to challenge a GCC patch? J-P. Rosen
2021-09-27 11:23 ` Stéphane Rivière
2021-09-27 14:18   ` J-P. Rosen
2021-09-28  7:38   ` Arnaud Charlet
2021-09-29 16:26     ` Stéphane Rivière
2021-09-29 19:04       ` Emmanuel Briot
2021-09-29 23:29         ` Luke A. Guest
2021-09-30  6:23           ` J-P. Rosen
2021-09-30  7:53             ` Luke A. Guest
2021-09-30  8:13               ` J-P. Rosen
2021-09-30  8:26                 ` Luke A. Guest
2021-09-30 10:54                   ` J-P. Rosen
2021-09-30 12:27                     ` Luke A. Guest
2021-09-30 15:25                       ` J-P. Rosen
2021-10-01  0:37                       ` Randy Brukardt
2021-10-01  0:33                     ` Randy Brukardt
2021-10-01  0:30                 ` Randy Brukardt
2021-10-01  9:41                   ` J-P. Rosen
2021-10-02  9:14                     ` Randy Brukardt
2021-10-04 12:30                       ` J-P. Rosen
2021-10-14  1:48                         ` Randy Brukardt
2021-10-14  6:09                           ` J-P. Rosen
2021-09-30  7:53             ` Luke A. Guest
2021-09-30  8:16               ` J-P. Rosen
2021-09-30  8:28                 ` Luke A. Guest
2021-09-30 10:56                   ` J-P. Rosen
2021-09-30 12:27                     ` Luke A. Guest
2021-09-30 15:28                       ` J-P. Rosen
2021-09-30  6:19         ` J-P. Rosen [this message]
2021-10-01  0:18           ` Randy Brukardt
2021-10-01  9:24             ` J-P. Rosen
2021-10-02  9:34               ` Randy Brukardt
2021-10-04 12:26                 ` J-P. Rosen
2021-10-14  1:40                   ` Randy Brukardt
2021-10-14  6:04                     ` J-P. Rosen
2021-09-30  5:57     ` J-P. Rosen
2021-09-30  7:29       ` Arnaud Charlet
2021-09-30  7:52         ` J-P. Rosen
2021-09-30  8:21           ` Arnaud Charlet
2021-10-01  9:56             ` J-P. Rosen
2021-10-01 12:29             ` J-P. Rosen
2021-09-30  8:28           ` Fabien Chouteau
2021-09-27 12:48 ` Simon Wright
2021-09-27 14:20   ` J-P. Rosen
2021-09-28  6:55     ` Emmanuel Briot
2021-09-30  6:44       ` J-P. Rosen
2021-09-29  8:58     ` nobody in particular
2021-09-29  9:34       ` Emmanuel Briot
2021-09-29 10:03       ` Simon Wright
2021-09-29 11:03         ` Luke A. Guest
2021-09-29 11:07           ` Simon Wright
2021-09-29 18:58     ` Andreas ZEURCHER
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox