From 64f44677f2c879304d8a2c2df5fe4e71b52a2eb1 Mon Sep 17 00:00:00 2001 From: charlet Date: Thu, 23 Oct 2014 10:39:50 +0000 Subject: 2014-10-23 Ed Schonberg * sem_ch6.adb (Analyze_Expression_Function): Simplify analysis in generic context, and generate body in this case as well, to simplify ASIS traversals on the construct. 2014-10-23 Ed Schonberg * sem_ch4.adb (Complete_Object_Operation): Indicate that the scope of the operation (s) is referenced, to prevent spurious warnings about unused units. 2014-10-23 Johannes Kanig * errout.adb (Error_Msg_Internal): Copy check flag, increment check msg count. * erroutc.adb (Delete_Msg) adjust check msg count. (Output_Msg_Text) handle check msg case (do nothing). (Prescan_Message) recognize check messages with severity prefixes. * errutil.adb (Error_Msg) handle check flag, adjust counter. 2014-10-23 Ed Schonberg * sem_eval.adb (Subtypes_Statically_Match): For a generic actual type, check for the presence of discriminants in its parent type, against the presence of discriminants in the context type. 2014-10-23 Tristan Gingold * adaint.c: __gnat_get_file_names_case_sensitive: Default is true on arm-darwin. 2014-10-23 Arnaud Charlet * pprint.adb (Expression_Image): Add handling of quantifiers. 2014-10-23 Ed Schonberg * exp_pakd.adb (Expand_Packed_Element_Reference): If the prefix is a source entity, generate a reference to it before transformation, because rewritten node might not generate a proper reference, leading to spurious warnings. 2014-10-23 Tristan Gingold * init.c: Fix thinko in previous patch. 2014-10-23 Hristian Kirtchev * sem_ch3.adb (Decimal_Fixed_Point_Type_Declaration): Inherit the rep chain of the implicit base type. (Floating_Point_Type_Declaration): Inherit the rep chain of the implicit base type. (Ordinary_Fixed_Point_Type_Declaration): Inherit the rep chain of the implicit base type. (Signed_Integer_Type_Declaration): Inherit the rep chain of the implicit base type. * sem_util.ads, sem_util.adb (Inherit_Rep_Item_Chain): New routine. 2014-10-23 Pascal Obry * g-regist.adb, g-regist.ads: Add support for reading 32bit or 64bit view of the registry. 2014-10-23 Ed Schonberg * exp_ch3.adb (Expand_N_Object_Declaration): If type is abstract, return without expanding expression, to prevent subsequent crash. * freeze.adb: better error message for illegal declaration. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216587 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ada/exp_pakd.adb | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'gcc/ada/exp_pakd.adb') diff --git a/gcc/ada/exp_pakd.adb b/gcc/ada/exp_pakd.adb index 21487c0b3f5..e6bcb999869 100644 --- a/gcc/ada/exp_pakd.adb +++ b/gcc/ada/exp_pakd.adb @@ -30,6 +30,7 @@ with Errout; use Errout; with Exp_Dbug; use Exp_Dbug; with Exp_Util; use Exp_Util; with Layout; use Layout; +with Lib.Xref; use Lib.Xref; with Namet; use Namet; with Nlists; use Nlists; with Nmake; use Nmake; @@ -1682,6 +1683,16 @@ package body Exp_Pakd is Expand_Packed_Element_Reference (Prefix (N)); end if; + -- The prefix may be rewritten below as a conversion. If it is a source + -- entity generate reference to it now, to prevent spurious warnings + -- about unused entities. + + if Is_Entity_Name (Prefix (N)) + and then Comes_From_Source (Prefix (N)) + then + Generate_Reference (Entity (Prefix (N)), Prefix (N), 'r'); + end if; + -- If not bit packed, we have the enumeration case, which is easily -- dealt with (just adjust the subscripts of the indexed component) -- cgit v1.2.1