1-- { dg-do compile } 2-- { dg-options "-gnatwr" } 3 4procedure Slice5 is 5 6 type Item_Type is record 7 I : Integer; 8 end record; 9 10 type Index_Type is (A, B); 11 12 type table is array (integer range <>) of integer; 13 subtype Small is Integer range 1 .. 10; 14 T1 : constant Table (Small) := (Small => 0); 15 T2 : constant Table (Small) := T1 (Small); -- { dg-warning "redundant slice denotes whole array" } 16 17 Item_Array : constant array (Index_Type) of Item_Type 18 := (A => (I => 10), B => (I => 22)); 19 20 Item : Item_Type; 21 for Item'Address use Item_Array(Index_Type)'Address; -- { dg-warning "redundant slice denotes whole array" } 22begin 23 null; 24end; 25