re PR ada/17540 (Duplicate symbols while building Ada)

2004-09-20  Robert Dewar  <dewar@gnat.com>

	PR ada/17540

	* freeze.adb (Check_Address_Clause): Reset Is_Imported and Is_Public
	if an address clause is present, since that means that the Import
	should be ignored.

From-SVN: r87755
This commit is contained in:
Robert Dewar 2004-09-20 12:07:47 +00:00 committed by Arnaud Charlet
parent d4a9b3a336
commit bb9be5eb9c
2 changed files with 16 additions and 1 deletions

View File

@ -1,3 +1,11 @@
2004-09-20 Robert Dewar <dewar@gnat.com>
PR ada/17540
* freeze.adb (Check_Address_Clause): Reset Is_Imported and Is_Public
if an address clause is present, since that means that the Import
should be ignored.
2004-09-20 Arnaud Charlet <charlet@act-europe.fr>
* 5tsystem.ads: Removed, no longer used.

View File

@ -82,7 +82,9 @@ package body Freeze is
procedure Check_Address_Clause (E : Entity_Id);
-- Apply legality checks to address clauses for object declarations,
-- at the point the object is frozen.
-- at the point the object is frozen. Also deals with cancelling effect
-- of Import pragma which has no effect (other than to eliminate any
-- implicit initialization) if an address clause is present.
procedure Check_Strict_Alignment (E : Entity_Id);
-- E is a base type. If E is tagged or has a component that is aliased
@ -497,6 +499,11 @@ package body Freeze is
then
Warn_Overlay (Expr, Typ, Name (Addr));
end if;
-- Cancel effect of any Import pragma
Set_Is_Imported (E, False);
Set_Is_Public (E, False);
end if;
end Check_Address_Clause;