From d69cf005d0df53b9ebcd3eaf0c1e2740d5b36f1c Mon Sep 17 00:00:00 2001 From: Arnaud Charlet Date: Mon, 4 Oct 2010 15:59:18 +0200 Subject: [multiple changes] 2010-10-04 Robert Dewar * exp_cg.adb: Minor reformatting. 2010-10-04 Javier Miranda * exp_cg.adb (Expand_N_Assignment_Statement): Restore tag check when the target object is an interface. * sem_disp.adb (Propagate_Tag): If the controlling argument is an interface type then we generate an implicit conversion to force displacement of the pointer to the object to reference the secondary dispatch table associated with the interface. 2010-10-04 Robert Dewar * sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Set Enumeration_Rep_Expr to point to the literal, not the identifier. (Analyze_Enumeration_Representation_Clause): Improve error message for size too small for enum rep value (Analyze_Enumeration_Representation_Clause): Fix size test to use proper size (RM_Size, not Esize). From-SVN: r164939 --- gcc/ada/exp_ch5.adb | 6 ------ 1 file changed, 6 deletions(-) (limited to 'gcc/ada/exp_ch5.adb') diff --git a/gcc/ada/exp_ch5.adb b/gcc/ada/exp_ch5.adb index 18bda5d..fb1888da 100644 --- a/gcc/ada/exp_ch5.adb +++ b/gcc/ada/exp_ch5.adb @@ -1956,12 +1956,6 @@ package body Exp_Ch5 is if Is_Class_Wide_Type (Typ) and then Is_Tagged_Type (Typ) and then Is_Tagged_Type (Underlying_Type (Etype (Rhs))) - - -- Do not generate a tag check when the target object is - -- an interface since the expression of the right hand - -- side must only cover the interface. - - and then not Is_Interface (Typ) then Append_To (L, Make_Raise_Constraint_Error (Loc, -- cgit v1.1