[Bug ada/19386] ACATS c330001 fails at runtime on sparc-solaris,x86_64-linux

cvs-commit at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Thu Feb 10 19:05:00 GMT 2005


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-02-10 13:53 -------
Subject: Bug 19386

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	charlet@gcc.gnu.org	2005-02-10 13:53:24

Modified files:
	gcc/ada        : decl.c utils2.c utils.c 

Log message:
	2005-02-09  Eric Botcazou  <ebotcazou@adacore.com>
	Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
	
	Fix for c330001 - PR ada/19386
	
	* decl.c:
	(gnat_to_gnu_field): Do not necessarily invoke make_packable_type
	on the field if Pragma Component_Alignment (Storage_Unit).
	(gnat_to_gnu_entity, case object): Do not treat a renaming that has
	side-effects as if it were a constant; also make SAVE_EXPR to protect
	side-effects.
	(gnat_to_gnu_entity, case E_Record_Subtype): If have _Parent, make a
	UNION_TYPE.
	(make_dummy_type): Set TYPE_UNCHECKED_UNION_P.
	(components_to_record): Test it.
	Fix improper usage of REFERENCE_CLASS_P.
	
	* utils2.c (build_binary_op, case MODIFY_EXPRP): Treat UNION_TYPE as
	RECORD_TYPE.
	
	* utils2.c: Minor reformatting.
	
	* utils.c (convert, case UNION_TYPE): Check TYPE_UNCHECKED_UNION;
	handle other cases like RECORD_TYPE.
	
	* utils.c (gnat_pushdecl): Set TREE_NO_WARNING.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/decl.c.diff?cvsroot=gcc&r1=1.64&r2=1.65
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/utils2.c.diff?cvsroot=gcc&r1=1.43&r2=1.44
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ada/utils.c.diff?cvsroot=gcc&r1=1.89&r2=1.90



-- 


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



More information about the Gcc-bugs mailing list