OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [gnat.dg/] [frame_overflow.adb] - Rev 779

Go to most recent revision | Compare with Previous | Blame | View Log

-- { dg-do compile }
 
with System;
 
procedure frame_overflow is
 
   type Bitpos_Range_T is range 1..2**(System.Word_Size-1)-1;
   type Bitmap_Array_T is array (Bitpos_Range_T) of Boolean;
 
   type Bitmap_T is record
      Bits : Bitmap_Array_T := (others => False);
   end record;
 
   function -- { dg-error "too large" }
     Set_In (Bitmap : Bitmap_T; Bitpos : Bitpos_Range_T)  return Bitmap_T
   is
      Result: Bitmap_T := Bitmap; -- { dg-error "Storage_Error" }
   begin
      Result.Bits (Bitpos) := True;
      return Result;
   end;
 
   function Negate (Bitmap : Bitmap_T) return Bitmap_T is
      Result: Bitmap_T; -- { dg-error "Storage_Error" }
   begin
      for E in Bitpos_Range_T loop
        Result.Bits (E) := not Bitmap.Bits (E);
      end loop;
      return Result;
  end;
 
begin
   null;
end;
 

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.