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.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,df854b5838c3e14 X-Google-Attributes: gid103376,public From: dewar@cs.nyu.edu (Robert Dewar) Subject: Re: Gripe about Ada, rep specs that won't. Date: 1996/03/25 Message-ID: #1/1 X-Deja-AN: 144210277 references: <00001a73+00002504@msn.com> organization: Courant Institute of Mathematical Sciences newsgroups: comp.lang.ada Date: 1996-03-25T00:00:00+00:00 List-Id: "OK, so we know Boolean'Size = 1. So the two-Boolean-components example has to be packed "as tightly as possible", given 2 1-bit components. To me, that says it has to be 2 bits. Now, if we put that record inside *another* record, "as tightly as possible" means 2 bits for the inner record, not 8 bits. I would say that the above para implies that 'Size = 2 for the two-Boolean-components example record. Otherwise, what on earth would "as tightly as possible" mean?" I will tell you EXACTLY what I think "as tightly as possible means", it means that the components are packed together. YOu may want it to mean that the size is set to the maximum bit used plus one, but you did not say so, and that's a pity, but we can't go by what you meant! I actually think a reasonable rule would be to say that up to a certain size (the magic value k?) the size is set to the minimum, and above that it can be rounded up. The ARG has a LOT of work to do here I think! I agree that the ACVC suite was weak on record packing, that at the time was a concession to the reality that several compilers did not implement record packing, but ACVC 1.10 is MUCH fiercer than the RM 95 requirements in many other respects. So to summarize, I think it would be wrong if 7 packed boolean objects in a record took 56 bits, but packing them tightly together with one fill bit does not seem to violate the above paragraph to me. I agree that the default n GNAT should be revisited, actually we are looking at that right now, and there are a few places where the defaults chosen by GNAT need adjusting.