mirror of
https://github.com/autc04/Retro68.git
synced 2024-09-28 03:55:14 +00:00
26 lines
591 B
Ada
26 lines
591 B
Ada
-- { dg-do compile }
|
|
-- { dg-options "-gnatws" }
|
|
|
|
with System.Multiprocessors;
|
|
|
|
procedure Atomic10 is
|
|
|
|
type Atomic_Unsigned is mod 2 ** 32;
|
|
pragma Atomic (Atomic_Unsigned);
|
|
|
|
Max : Positive := Positive (System.Multiprocessors.Number_Of_CPUs);
|
|
|
|
Comp_Size : constant := 64 * 8;
|
|
|
|
subtype Index_Type is Positive range 1 .. Max;
|
|
|
|
type Array_Type is array (Index_Type) of aliased Atomic_Unsigned; -- { dg-error "cannot be guaranteed" }
|
|
for Array_Type'Component_Size use Comp_Size;
|
|
|
|
Slots : Array_Type;
|
|
begin
|
|
for Index in Index_Type loop
|
|
Slots (Index) := 0;
|
|
end loop;
|
|
end;
|