This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
An arbitrary restriction was imposed on renaming in conjunction with the new Aspect/Pragma Volatile_Full_Access for implementation reasons: the compiler was rejecting renamings of components of Volatile_Full_Access objects. It is lifted by this change and the following package must now be accepted: package RenamVFA is type Int8_t is mod 2**8; type Rec is record A,B,C,D : Int8_t; end record; for Rec'Size use 32; for Rec'Alignment use 4; pragma Volatile_Full_Access (Rec); R : Rec; I1 : Int8_t renames R.A; type Arr is array (1 .. 4) of Int8_t; pragma Volatile_Full_Access (Arr); A : Arr; I2 : Int8_t renames A (1); end RenamVFA; Tested on x86_64-pc-linux-gnu, committed on trunk 2015-05-26 Eric Botcazou <ebotcazou@adacore.com> * sem_ch8.adb (Analyze_Object_Renaming): Lift restriction on components of Volatile_Full_Access objects.
Attachment:
difs
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |