Commit b636db2e by Arnaud Charlet

[multiple changes]

2010-09-10  Jose Ruiz  <ruiz@adacore.com>

	* exp_cg.adb (Is_Predefined_Dispatching_Operation): When trying the
	pattern matching to detect predefined primitive operations take into
	account that there can be an extra suffix related to body-nested
	package entities.

2010-09-10  Ed Schonberg  <schonberg@adacore.com>

	* s-pooglo.ads: Add overriding indicators.

From-SVN: r164177
parent a113c55d
2010-09-10 Jose Ruiz <ruiz@adacore.com>
* exp_cg.adb (Is_Predefined_Dispatching_Operation): When trying the
pattern matching to detect predefined primitive operations take into
account that there can be an extra suffix related to body-nested
package entities.
2010-09-10 Ed Schonberg <schonberg@adacore.com>
* s-pooglo.ads: Add overriding indicators.
2010-09-10 Vincent Celier <celier@adacore.com> 2010-09-10 Vincent Celier <celier@adacore.com>
* vms_data.ads: Add new GNAT BIND qualifiers /32_MALLOC (for -H32) and * vms_data.ads: Add new GNAT BIND qualifiers /32_MALLOC (for -H32) and
......
...@@ -265,9 +265,25 @@ package body Exp_CG is ...@@ -265,9 +265,25 @@ package body Exp_CG is
Name_uDisp_Requeue, Name_uDisp_Requeue,
Name_uDisp_Timed_Select); Name_uDisp_Timed_Select);
Suffix_Length : constant Natural := Homonym_Suffix_Length (E); Suffix_Length : Natural;
begin begin
-- Search for and strip suffix for body-nested package entities
Suffix_Length := Homonym_Suffix_Length (E);
for J in reverse Full_Name'First + 2 .. Full_Name'Last loop
if Full_Name (J) = 'X' then
-- Include the "X", "Xb", "Xn", ... in the part of the
-- suffix to be removed.
Suffix_Length := Suffix_Length + Full_Name'Last - J + 1;
exit;
end if;
exit when Full_Name (J) /= 'b' and then Full_Name (J) /= 'n';
end loop;
for J in Predef_Names_95'Range loop for J in Predef_Names_95'Range loop
Get_Name_String (Predef_Names_95 (J)); Get_Name_String (Predef_Names_95 (J));
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 1992-2009, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2010, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- 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- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -57,13 +57,13 @@ package System.Pool_Global is ...@@ -57,13 +57,13 @@ package System.Pool_Global is
(Pool : Unbounded_No_Reclaim_Pool) (Pool : Unbounded_No_Reclaim_Pool)
return System.Storage_Elements.Storage_Count; return System.Storage_Elements.Storage_Count;
procedure Allocate overriding procedure Allocate
(Pool : in out Unbounded_No_Reclaim_Pool; (Pool : in out Unbounded_No_Reclaim_Pool;
Address : out System.Address; Address : out System.Address;
Storage_Size : System.Storage_Elements.Storage_Count; Storage_Size : System.Storage_Elements.Storage_Count;
Alignment : System.Storage_Elements.Storage_Count); Alignment : System.Storage_Elements.Storage_Count);
procedure Deallocate overriding procedure Deallocate
(Pool : in out Unbounded_No_Reclaim_Pool; (Pool : in out Unbounded_No_Reclaim_Pool;
Address : System.Address; Address : System.Address;
Storage_Size : System.Storage_Elements.Storage_Count; Storage_Size : System.Storage_Elements.Storage_Count;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment