This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r125407 - in /trunk/gcc/ada: exp_pakd.adb freez...
- From: charlet at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Wed, 06 Jun 2007 10:27:26 -0000
- Subject: r125407 - in /trunk/gcc/ada: exp_pakd.adb freez...
Author: charlet
Date: Wed Jun 6 10:27:26 2007
New Revision: 125407
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=125407
Log:
2007-04-20 Robert Dewar <dewar@adacore.com>
Ed Schonberg <schonberg@adacore.com>
* exp_pakd.adb (Expand_Packed_Not): Use RM_Size rather than ESize to
compute masking constant, since we now set Esize properly to the
underlying size.
(Create_Packed_Array_Type): Set proper Esize value adjusted as required
to match the alignment.
(Create_Packed_Array_Type): Use Short_Short_Unsigned as base type for
packed arrays of 8 bits or less.
* freeze.adb (Freeze_Entity): When freezing the formals of a
subprogram, freeze the designated type of a parameter of an access type
only if it is an access parameter.
Increase size of C convention enumeration object
(Freeze_Entity, array type case): Make sure Esize value is properly
adjusted for the alignment if it is known.
(Freeze_Entity, array type case): When checking bit packed arrays for
the size being incorrect, check RM_Size, not Esize.
(Freeze_Record_Type): Check for bad discriminated record convention
(In_Exp_Body): Return true if the body is generated for a subprogram
renaming, either an attribute renaming or a renaming as body.
(Check_Itype): If the designated type of an anonymous access component
is a non-protected subprogram type, indicate that it is frozen, to
prevent out-of-scope freeze node at some subsequent call.
(Freeze_Subprogram): On OpenVMS, reject descriptor passing mechanism
only if the subprogram is neither imported nor exported, as well as the
NCA descriptor class if the subprogram is exported.
Modified:
trunk/gcc/ada/exp_pakd.adb
trunk/gcc/ada/freeze.adb