view gcc/testsuite/gnat.dg/specs/static_initializer3.ads @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents 04ced10e8804
children
line wrap: on
line source

-- { dg-do compile }

with Unchecked_Conversion;

package Static_Initializer3 is

  type Byte is range 0 .. 16#FF#;
  for Byte'Size use 8;

  type Word is range 0 .. 16#FFFF# ;
  for Word'Size use 16;

  type R is record
    b1 : Boolean;
    b2 : Boolean;
  end record;
  for R use record
    b1 at 0 range 0..3;
    b2 at 0 range 4..7;
  end record;
  for R'Size use 8;

  function Conv is new Unchecked_Conversion (R, Byte);

  C1 : constant Byte := Conv ((true, false));

  C2 : constant Word := Word(C1);

end Static_Initializer3;