view gcc/testsuite/gnat.dg/wide_wide_value1.adb @ 145:1830386684a0

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

--  { dg-do run }

with Ada.Text_IO; use Ada.Text_IO;

procedure Wide_Wide_Value1 is
begin
   begin
      declare
         Str : constant Wide_Wide_String :=
                 Wide_Wide_Character'Val (16#00000411#) &
                 Wide_Wide_Character'Val (16#0000043e#) &
                 Wide_Wide_Character'Val (16#00000434#) &
                 Wide_Wide_Character'Val (16#00000430#) &
                 Wide_Wide_Character'Val (16#00000443#) &
                 Wide_Wide_Character'Val (16#00000431#) &
                 Wide_Wide_Character'Val (16#00000430#) &
                 Wide_Wide_Character'Val (16#00000435#) &
                 Wide_Wide_Character'Val (16#00000432#) &
                 Wide_Wide_Character'Val (16#00000416#) &
                 Wide_Wide_Character'Val (16#00000443#) &
                 Wide_Wide_Character'Val (16#0000043c#) &
                 Wide_Wide_Character'Val (16#00000430#) &
                 Wide_Wide_Character'Val (16#00000442#) &
                 Wide_Wide_Character'Val (16#0000041c#) &
                 Wide_Wide_Character'Val (16#00000430#) &
                 Wide_Wide_Character'Val (16#00000440#) &
                 Wide_Wide_Character'Val (16#00000430#) &
                 Wide_Wide_Character'Val (16#00000442#) &
                 Wide_Wide_Character'Val (16#0000043e#) &
                 Wide_Wide_Character'Val (16#00000432#) &
                 Wide_Wide_Character'Val (16#00000438#) &
                 Wide_Wide_Character'Val (16#00000447#);

         Val : constant Integer := Integer'Wide_Wide_Value (Str);
      begin
         Put_Line ("ERROR: 1: Constraint_Error not raised");
      end;
   exception
      when Constraint_Error =>
         null;
      when others =>
         Put_Line ("ERROR: 1: unexpected exception");
   end;

   begin
      declare
         Str : Wide_Wide_String (1 .. 128) :=
                 (others => Wide_Wide_Character'Val (16#0FFFFFFF#));

         Val : constant Integer := Integer'Wide_Wide_Value (Str);
      begin
         Put_Line ("ERROR: 1: Constraint_Error not raised");
      end;
   exception
      when Constraint_Error =>
         null;
      when others =>
         Put_Line ("ERROR: 1: unexpected exception");
   end;
end Wide_Wide_Value1;