* gnatname.adb (Scan_Args): When --and is used, make sure that the
dynamic tables in the newly allocated Argument_Data are properly
initialized.
2010-06-18 Eric Botcazou <ebotcazou@adacore.com>
* gnat1drv.adb: Fix comment.
2010-06-18 Ed Schonberg <schonberg@adacore.com>
* exp_ch6.adb (Expand_Inlined_Call): If the inlined subprogram is a
renaming, re-expand the call with the renamed subprogram if that one
is marked inlined as well.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160995
138bc75d-0d04-0410-961f-
82ee72b054a4
+2010-06-18 Vincent Celier <celier@adacore.com>
+
+ * gnatname.adb (Scan_Args): When --and is used, make sure that the
+ dynamic tables in the newly allocated Argument_Data are properly
+ initialized.
+
+2010-06-18 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat1drv.adb: Fix comment.
+
+2010-06-18 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch6.adb (Expand_Inlined_Call): If the inlined subprogram is a
+ renaming, re-expand the call with the renamed subprogram if that one
+ is marked inlined as well.
+
2010-06-18 Gary Dismukes <dismukes@adacore.com>
* gnat1drv.adb (Adjust_Global_Switches): Enable
-- directly, because the subprograms are subtype conformant. If
-- the renamed subprogram is an inherited operation, we must redo
-- the expansion because implicit conversions may be needed.
+ -- Similarly, if the renamed entity is inlined, expand the call
+ -- for further optimizations.
Set_Name (N, New_Occurrence_Of (Orig_Bod, Loc));
- if Present (Alias (Orig_Bod)) then
+ if Present (Alias (Orig_Bod))
+ or else Is_Inlined (Orig_Bod)
+ then
Expand_Call (N);
end if;
Back_End_Handles_Limited_Types := False;
-- Otherwise normal gcc back end, for now still turn flag off by
- -- default, since we have not verified proper back end handling.
+ -- default, since there are unresolved problems in the front end.
else
Back_End_Handles_Limited_Types := False;
-- --
-- B o d y --
-- --
--- Copyright (C) 2001-2009, Free Software Foundation, Inc. --
+-- Copyright (C) 2001-2010, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
-- Add and initialize another component to Arguments table
- Arguments.Increment_Last;
+ declare
+ New_Arguments : Argument_Data;
+ pragma Warnings (Off, New_Arguments);
+ -- Declaring this defaulted itialized object ensures that
+ -- the new allocated component of table Arguments is
+ -- correctly initialized.
+
+ begin
+ Arguments.Append (New_Arguments);
+ end;
Patterns.Init
(Arguments.Table (Arguments.Last).Directories);