From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 2002:a37:4d16:: with SMTP id a22mr9648639qkb.237.1576175446426; Thu, 12 Dec 2019 10:30:46 -0800 (PST) X-Received: by 2002:a9d:68ca:: with SMTP id i10mr9432911oto.178.1576175446159; Thu, 12 Dec 2019 10:30:46 -0800 (PST) Path: eternal-september.org!reader01.eternal-september.org!feeder.eternal-september.org!news.gegeweb.eu!gegeweb.org!usenet-fr.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!g89no8063756qtd.0!news-out.google.com!w29ni1141qtc.0!nntp.google.com!g89no8063748qtd.0!postnews.google.com!google-groups.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Thu, 12 Dec 2019 10:30:45 -0800 (PST) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: google-groups.googlegroups.com; posting-host=2.123.205.69; posting-account=L2-UcQkAAAAfd_BqbeNHs3XeM0jTXloS NNTP-Posting-Host: 2.123.205.69 References: <36d45c82-2a6b-4c60-baeb-1a4aef5189c7@googlegroups.com> <69c7677b-4aec-4db2-b240-de6b69f762b9@googlegroups.com> <23879d99-f1b0-4ade-8f2a-e45014fa04a7@googlegroups.com> <5260b4d5-23e7-40f4-ada7-6a3158dbdf80@googlegroups.com> <35e003d5-0805-43f5-ae25-fb94ad201942@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <01eb359c-4898-4e52-8c86-c8c89c55ff75@googlegroups.com> Subject: Re: Is this actually possible? From: Lucretia Injection-Date: Thu, 12 Dec 2019 18:30:46 +0000 Content-Type: text/plain; charset="UTF-8" Xref: reader01.eternal-september.org comp.lang.ada:57720 Date: 2019-12-12T10:30:45-08:00 List-Id: On Thursday, 12 December 2019 18:24:55 UTC, Dmitry A. Kazakov wrote: > On 2019-12-12 16:15, Lucretia wrote: > > On Thursday, 12 December 2019 15:14:33 UTC, Lucretia wrote: > > > > > >>>>> Why? You must know all variants in order to compute the array element > >>>>> size. In Ada you cannot have it either: > >>>> > >>>> Because it's a binding to a C record: https://github.com/Lucretia/aplug/blob/master/ladspa/src/ladspa.ads#L113 > >>> > >>> I cannot recognize problem there. > >> > >> That's a predefined struct, it's referenced in the Descriptors below it. It cannot be changed. The API is too cyclic AFAIK to make generics out of it all. > > > > At the programmer's level, i.e. building a plug-in using the LADSPA API, they define ranges for their ports using that record above. Each port can have different ranges. > > Can you post the C struct type and where it is used. In ladspa.h and in exactly the same place as the Ada. https://www.ladspa.org/ladspa_sdk/ladspa.h.txt Here is the struct on a gh mirror: https://github.com/adsr/ladspa-sdk/blob/master/src/ladspa.h#L337 and it is used here: https://github.com/adsr/ladspa-sdk/blob/master/src/ladspa.h#L419