comp.lang.ada
 help / color / mirror / Atom feed
From: Jeffrey Carter <jrcarter@acm.org>
Subject: Re: Size and pack
Date: Thu, 01 Nov 2001 03:45:35 GMT
Date: 2001-11-01T03:45:35+00:00	[thread overview]
Message-ID: <3BE0C552.8FD0ACD7@acm.org> (raw)
In-Reply-To: nHRD7.162473$vq.40258001@typhoon.ne.mediaone.net

Jeff Creem wrote:
> 
> a little too broad. There ARE indeed times when you want a pragma pack and a
> rep spec. Not for the record case but for arrays of items that have been rep
> spec'ed.
> 
> for example, the code fragment
> 
> type My_Type is range 0 .. 3;
> for My_Type'size use 2;
> 
> type My_Array is array (1 .. 4) of My_Type;
> pragma Pack (My_Array); -- Without this the following could fail
> for My_Array'size use 8;

Generally a compiler would use 4 bytes (or storage units) for My_Array,
and without something to tell the compiler to use less storage for each
component the size clause should be rejected. However, one can replace
the pragma Pack with

for My_Array'Component_Size use My_Type'Size;
for My_Array'Size use My_Array'Length * My_Type'Size;

to obtain the same effect without relying on Pack, which is allowed to
be ignored.

-- 
Jeff Carter
"We call your door-opening request a silly thing."
Monty Python & the Holy Grail



  parent reply	other threads:[~2001-11-01  3:45 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-10-10  8:05 Size and pack Adrian Hoe
2001-10-10  8:59 ` Alfred Hilscher
2001-10-10  9:50   ` John McCabe
2001-10-11  6:36     ` Adrian Hoe
2001-10-11  8:55       ` John McCabe
2001-10-31  1:53         ` Robert Dewar
2001-10-31  1:50     ` Robert Dewar
2001-10-31  9:17       ` John McCabe
2001-10-31 11:58       ` Jeff Creem
2001-11-01  1:58         ` Adrian Hoe
2001-11-01  2:34           ` Jeff Creem
2001-11-01 14:58             ` Marin David Condic
2001-11-01  3:53           ` Matthew Heaney
2001-11-01 18:37             ` Jeff Creem
2001-11-02  3:39               ` Robert Dewar
2001-11-01  3:45         ` Jeffrey Carter [this message]
2001-11-01  6:00         ` Robert Dewar
2001-10-10  9:24 ` Pi
2001-10-10  9:27 ` Lutz Donnerhacke
2001-10-11  6:24   ` Adrian Hoe
2001-10-11  8:58     ` John McCabe
2001-10-11 13:20       ` Mark Johnson
2001-10-11 16:23         ` John McCabe
2001-10-11 16:00           ` Pat Rogers
2001-10-12  8:37             ` John McCabe
2001-10-28  1:30         ` Robert Dewar
2001-10-11  9:30     ` Lutz Donnerhacke
2001-10-11 10:12 ` Vincent Smeets
2001-10-11 10:19   ` Lutz Donnerhacke
2001-10-11 11:18     ` David C. Hoos, Sr.
2001-10-11 12:06       ` Lutz Donnerhacke
2001-10-11 13:49 ` Ted Dennison
2001-10-26  4:00 ` Smark
2001-10-26  6:14   ` tmoran
2001-10-26 17:51     ` Smark
2001-10-26 23:21       ` Jeffrey Carter
2001-10-26 23:39       ` tmoran
2001-10-29  1:01         ` Adrian Hoe
2001-10-29  2:21           ` tmoran
2001-10-29 10:42             ` Adrian Hoe
2001-10-29 23:15               ` tmoran
2001-10-29  9:52         ` Lutz Donnerhacke
2001-10-29 10:29           ` Larry Kilgallen
2001-10-29 10:50             ` Lutz Donnerhacke
2001-10-29 11:12               ` Larry Kilgallen
2001-10-31  2:02                 ` Robert Dewar
2001-10-31  2:00               ` Robert Dewar
2001-10-31  2:51                 ` Larry Kilgallen
2001-10-31  1:59           ` Robert Dewar
2001-10-31  1:57       ` Robert Dewar
2001-10-31  1:55   ` Robert Dewar
replies disabled

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