]> gcc.gnu.org Git - gcc.git/blobdiff - gcc/ada/ChangeLog
exp_ch6.adb: (Make_Build_In_Place_Call_In_Object_Declaration): Remove the code at...
[gcc.git] / gcc / ada / ChangeLog
index 2ba6e707def8d8f692d137dbe3e9088a79f31d7b..cba97a1860b055bf7d11d0fd4acb0b5f32d91d4a 100644 (file)
@@ -1,3 +1,48 @@
+2017-10-09  Bob Duff  <duff@adacore.com>
+
+       * exp_ch6.adb: (Make_Build_In_Place_Call_In_Object_Declaration): Remove
+       the code at the end of this procedure that was setting the type of a
+       class-wide object to the specific type returned by a function call.
+       Treat this case as indefinite instead.
+
+2017-10-09  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch4.adb (Try_Class_Wide_Operation, Traverse_Homonyms):
+       Suppress spurious ambiguity error when two traversals of the homonym
+       chain (first directly, and then through an examination of relevant
+       interfaces) retrieve the same operation, when other irrelevant homonyms
+       of the operatioh are also present.
+
+2017-10-09  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_util.adb (Object_Access_Level): If the object is the return
+       statement of an expression function, return the level of the function.
+       This is relevant when the object involves an implicit conversion
+       between access types and the expression function is a completion, which
+       forces the analysis of the expression before rewriting it as a body, so
+       that freeze nodes can appear in the proper scope.
+
+2017-10-09  Bob Duff  <duff@adacore.com>
+
+       * atree.adb: Make nnd apply to everything "interesting", including
+       Rewrite.  Remove rrd.
+
+2017-10-09  Javier Miranda  <miranda@adacore.com>
+
+       * exp_ch3.adb (Expand_N_Object_Declaration): Avoid never-ending loop
+       processing the declaration of the dummy object internally created by
+       Make_DT to compute the offset to the top of components referencing
+       secondary dispatch tables.
+       (Initialize_Tag): Do not initialize the offset-to-top field if it has
+       been initialized initialized.
+       * exp_disp.ads (Building_Static_Secondary_DT): New subprogram.
+       * exp_disp.adb (Building_Static_Secondary_DT): New subprogram.
+       (Make_DT): Create a dummy constant object if we can statically build
+       secondary dispatch tables.
+       (Make_Secondary_DT): For statically allocated secondary dispatch tables
+       use the dummy object to compute the offset-to-top field value by means
+       of the attribute 'Position.
+
 2017-10-09  Bob Duff  <duff@adacore.com>
 
        * exp_ch6.adb (Expand_N_Extended_Return_Statement): Add self-checking
This page took 0.035717 seconds and 5 git commands to generate.