[Ada] Project manager should accept Ada 05 reserved words as identifiers

Arnaud Charlet charlet@adacore.com
Mon Aug 29 14:33:00 GMT 2011


It was not possible to use an Ada reserved word such as Interface as an
identifier, when the default Ada version is Ada 2005. This patch corrects
this.
The following project file should be accepted by all project aware tools
such as gnatmake:

project Interface is
end Interface;

Tested on x86_64-pc-linux-gnu, committed on trunk

2011-08-29  Vincent Celier  <celier@adacore.com>

	* prj.adb (Initialize): Make sure that new reserved words after Ada 95
	may be used as identifiers.

-------------- next part --------------
Index: prj.adb
===================================================================
--- prj.adb	(revision 178226)
+++ prj.adb	(working copy)
@@ -24,6 +24,7 @@
 ------------------------------------------------------------------------------
 
 with Debug;
+with Opt;
 with Osint;    use Osint;
 with Output;   use Output;
 with Prj.Attr;
@@ -698,6 +699,11 @@
 
          Prj.Attr.Initialize;
 
+         --  Make sure that new reserved words after Ada 95 may be used as
+         --  identifiers.
+
+         Opt.Ada_Version := Opt.Ada_95;
+
          Set_Name_Table_Byte (Name_Project,  Token_Type'Pos (Tok_Project));
          Set_Name_Table_Byte (Name_Extends,  Token_Type'Pos (Tok_Extends));
          Set_Name_Table_Byte (Name_External, Token_Type'Pos (Tok_External));


More information about the Gcc-patches mailing list