[Bug tree-optimization/18727] [4.0/4.1 Regression] ACATS c43214c fails at runtime (aliasing pb)

cvs-commit at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Thu Mar 17 19:53:00 GMT 2005


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-03-17 19:53 -------
Subject: Bug 18727

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-4_0-branch
Changes by:	ebotcazou@gcc.gnu.org	2005-03-17 19:53:07

Modified files:
	gcc/ada        : ChangeLog exp_ch13.adb exp_ch3.adb exp_ch3.ads 
	                 freeze.adb sem_ch3.adb gigi.h decl.c trans.c 

Log message:
	PR ada/18727
	Backport from mainline:
	
	2005-03-15  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
	* exp_ch13.adb (Expand_N_Freeze_Entity): If Freeze_Type returns True,
	replace the N_Freeze_Entity with a null statement.
	* exp_ch3.adb (Freeze_Type): Now a function that returns True if
	the N_Freeze_Entity is to be deleted.
	* exp_ch3.ads (Freeze_Type): Now a function that returns Boolean.
	* freeze.adb (Undelay_Type): New Subprogram.
	(Set_Small_Size): Pass T, the type to modify; all callers changed.
	(Freeze_Entity, Freeze_Record_Type): Change the way we handle types
	within records; allow them to have freeze nodes if their base types
	aren't frozen yet.
	* sem_ch3.adb (Constrain_Access, Constrain_Array): Allow itypes to be
	delayed.
	* gigi.h (gnat_to_gnu_field_decl): New decl.
	* decl.c (gnat_to_gnu_entity, case E_Array_Subtype): Call
	copy_alias_set.
	(gnat_to_gnu_field_decl): New function.
	(substitution_list, annotate_rep): Call it.
	(gnat_to_gnu_entity, case E_Record_Subtype): Likewise.
	(gnat_to_gnu_entity, case E_Record_Type): Likewise.
	No longer update discriminants to not be a COMPONENT_REF.
	(copy_alias_set): Strip padding from input type; also handle
	unconstrained arrays properly.
	* trans.c (gnat_to_gnu, case N_Selected_Component): Call
	gnat_to_gnu_field_decl.
	(assoc_to_constructor): Likewise.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.638.4.7&r2=1.638.4.8
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/exp_ch13.adb.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.9&r2=1.9.40.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/exp_ch3.adb.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.29&r2=1.29.6.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/exp_ch3.ads.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.10&r2=1.10.6.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/freeze.adb.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.23&r2=1.23.12.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/sem_ch3.adb.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.57&r2=1.57.6.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/gigi.h.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.33&r2=1.33.10.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/decl.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.65.6.2&r2=1.65.6.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/trans.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.90.6.2&r2=1.90.6.3



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18727



More information about the Gcc-bugs mailing list