66=======
77
88This proposal introduces the possibility of dynamically creating an access to
9- and Ada unconstrained array from an address and its bounds.
9+ an Ada unconstrained array from an address and its bounds.
1010
1111Motivation
1212==========
@@ -28,13 +28,13 @@ For example:
2828 type Arr_Access is access all Arr;
2929
3030 function Create_C_Array_Of_Int (Size : Integer) return System.Address;
31- pragma Import (C, Create_C_Array_Of_Int, "create_c_array_of_int);
31+ pragma Import (C, Create_C_Array_Of_Int, "create_c_array_of_int" );
3232
3333 V : Arr_Access := Arr_Access'Address_To_Access (Create_C_Array_Of_Int (10), 1, 10);
3434```
3535
3636This attribute is available for all arrays. Constrained arrays do not require
37- bounds to be provided. Multi-dimenstional arrays will need dimensions to
37+ bounds to be provided. Multidimensional arrays will need dimensions to
3838be provided in order, and fixed lower bound only requires one dimension. For
3939example:
4040
@@ -76,7 +76,7 @@ Rationale and alternatives
7676The attribute could have been provided on arrays, and return an anonymous
7777access type instead. To some respect, not presuming the type of the object
7878and not requiring the creation of an explicit access type, might be better.
79- However, this requires performing all accessinility checks that don't really
79+ However, this requires performing all accessibility checks that don't really
8080make sense when addressing external memory. It's most likely that these checks
8181will need to be disabled anyway. Note that if accessibilty checks are required,
8282it is still possible to create a local array mapped to an address instead:
@@ -86,7 +86,7 @@ it is still possible to create a local array mapped to an address instead:
8686 type Arr_Access is access all Arr;
8787
8888 function Create_C_Array_Of_Int (Size : Integer) return System.Address;
89- pragma Import (C, Create_C_Array_Of_Int, "create_c_array_of_int);
89+ pragma Import (C, Create_C_Array_Of_Int, "create_c_array_of_int" );
9090
9191 V : aliased Arr (1 .. 10) with Address => Create_C_Array_Of_Int (10);
9292```
0 commit comments