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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gcc-4.2.2/] [gcc/] [testsuite/] [gnat.dg/] [frame_overflow.adb] - Diff between revs 149 and 154

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 149 Rev 154
-- { dg-do compile }
-- { dg-do compile }
 
 
procedure frame_overflow is
procedure frame_overflow is
 
 
   type Bitpos_Range_T is new Positive;
   type Bitpos_Range_T is new Positive;
   type Bitmap_Array_T is array (Bitpos_Range_T) of Boolean;
   type Bitmap_Array_T is array (Bitpos_Range_T) of Boolean;
 
 
   type Bitmap_T is record
   type Bitmap_T is record
      Bits : Bitmap_Array_T := (others => False);
      Bits : Bitmap_Array_T := (others => False);
   end record;
   end record;
 
 
   function -- { dg-error "too large" "" }
   function -- { dg-error "too large" "" }
     Set_In (Bitmap : Bitmap_T; Bitpos : Bitpos_Range_T)  return Bitmap_T
     Set_In (Bitmap : Bitmap_T; Bitpos : Bitpos_Range_T)  return Bitmap_T
   is
   is
      Result: Bitmap_T := Bitmap;
      Result: Bitmap_T := Bitmap;
   begin
   begin
      Result.Bits (Bitpos) := True;
      Result.Bits (Bitpos) := True;
      return Result;
      return Result;
   end;
   end;
 
 
   function -- { dg-error "too large" "" }
   function -- { dg-error "too large" "" }
     Negate (Bitmap : Bitmap_T) return Bitmap_T is
     Negate (Bitmap : Bitmap_T) return Bitmap_T is
      Result: Bitmap_T;
      Result: Bitmap_T;
   begin
   begin
      for E in Bitpos_Range_T loop
      for E in Bitpos_Range_T loop
        Result.Bits (E) := not Bitmap.Bits (E);
        Result.Bits (E) := not Bitmap.Bits (E);
      end loop;
      end loop;
      return Result;
      return Result;
  end;
  end;
 
 
begin
begin
   null;
   null;
end;
end;
 
 

powered by: WebSVN 2.1.0

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