Gautier write-only expounded in news:58bc837c-16b5-4a9d-af74-40417ad538c5@k29g2000yqh.googlegroups.com: > On May 11, 12:39�am, Yannick Duch�ne (Hibou57) > wrote: > > [...] >> Well, to be honest, this is not exactly the same as with C, as � >> Ada.Streams.Stream_Element is implementation defined (which is good, >> � because this is indeed platform dependent), so you will need an >> Assert > � >> pragma somewhere is your application, which ensures � >> Ada.Streams.Stream_Element is 8 bits or at least 8 bits (this is, in >> most > � >> of case), and then convert from Ada.Streams.Stream_Element to your � >> Byte_Type or anything your application defined as such. .. > You can make a size check (even a compile-time one!). Here, for > arrays: > subtype Size_test_a is Byte_Array(1..19); > subtype Size_test_b is Ada.Streams.Stream_Element_Array(1..19); > -- > is_mapping_possible: constant Boolean: Size_test_a'Size = > Size_test_b'Size and then > Size_test_a'Alignment = Size_test_b'Alignment; I suspect that Ada.Streams.Stream_Element being > 1 byte, is probably academic for my purposes. However, if a posix platform made a stream element 2 or 4 bytes, then the "whole gig is off". Which is what my OP was about. Should that happen, I'd be forced to look at bindings to something else. But this is probably academic. Warren