summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gnat.dg/atomic5.ads
blob: ce702ba1c93dfbcfb1b18c65ad4cd8874c0e4266 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
with Unchecked_Conversion;

package Atomic5 is

  type Byte is mod 2 ** 8;
  for Byte'Size use 8;

  type Unsigned_32 is mod 2 ** 32;
  for Unsigned_32'Size use 32;

  type R is record
    A,B,C,D : Byte;
  end record;
  for R'Alignment use 4;
  pragma Atomic (R);

  function Conv is new Unchecked_Conversion (R, Unsigned_32);

  procedure Proc1;

  procedure Proc2;

end Atomic5;