Comments
Patch
===================================================================
@@ -5368,6 +5368,15 @@
Validity_Checks_On := Save_Validity_Checks_On;
end Valid;
+ -------------------
+ -- Valid_Scalars --
+ -------------------
+
+ when Attribute_Valid_Scalars => Valid_Scalars : declare
+ begin
+ raise Program_Error;
+ end Valid_Scalars;
+
-----------
-- Value --
-----------
===================================================================
@@ -5196,6 +5196,15 @@
Set_Etype (N, Standard_Boolean);
+ -------------------
+ -- Valid_Scalars --
+ -------------------
+
+ when Attribute_Valid_Scalars =>
+ Check_E0;
+ Check_Type;
+ -- More stuff TBD ???
+
-----------
-- Value --
-----------
@@ -6034,7 +6043,7 @@
return;
-- No other cases are foldable (they certainly aren't static, and at
- -- the moment we don't try to fold any cases other than these three).
+ -- the moment we don't try to fold any cases other than the ones above).
else
Check_Expressions;
@@ -8145,6 +8154,7 @@
Attribute_Universal_Literal_String |
Attribute_Unrestricted_Access |
Attribute_Valid |
+ Attribute_Valid_Scalars |
Attribute_Value |
Attribute_Wchar_T_Size |
Attribute_Wide_Value |
===================================================================
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
+-- Copyright (C) 1992-2012, 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- --
@@ -549,6 +549,13 @@
-- Natural'Size is typically 31, the value of Natural'VADS_Size is 32.
-- For all other types, Size and VADS_Size yield the same value.
+ -------------------
+ -- Valid_Scalars --
+ -------------------
+
+ Attribute_Valid_Scalars => True,
+ -- Typ'Valid_Scalars applies to ???
+
----------------
-- Value_Size --
----------------
===================================================================
@@ -854,6 +854,7 @@
Name_VADS_Size : constant Name_Id := N + $; -- GNAT
Name_Val : constant Name_Id := N + $;
Name_Valid : constant Name_Id := N + $;
+ Name_Valid_Scalars : constant Name_Id := N + $; -- GNAT
Name_Value_Size : constant Name_Id := N + $; -- GNAT
Name_Variable_Indexing : constant Name_Id := N + $; -- GNAT
Name_Version : constant Name_Id := N + $;
@@ -1418,6 +1419,7 @@
Attribute_VADS_Size,
Attribute_Val,
Attribute_Valid,
+ Attribute_Valid_Scalars,
Attribute_Value_Size,
Attribute_Variable_Indexing,
Attribute_Version,