CVS difference for ais/ai-00216.txt

Differences between 1.19 and version 1.20
Log of other versions for file ais/ai-00216.txt

--- ais/ai-00216.txt	2005/01/28 02:10:36	1.19
+++ ais/ai-00216.txt	2005/04/13 05:36:56	1.20
@@ -1,5 +1,6 @@
-!standard B.03.03      (00)                         05-01-10  AI95-00216/15
+!standard B.03.03      (00)                         05-02-28  AI95-00216/16
 !standard B.03         (60.2)
+!standard B.03         (74)
 !class amendment 99-03-23
 !status Amendment 200Y 03-02-17
 !status WG9 approved 03-06-20
@@ -128,8 +129,8 @@
     "a type T is eligible for convention C_Pass_By_Copy if T is an
      unchecked union type or if T is a record type".
 
+Delete B.3(74) (which says that we don't support unions).
 
-
 B.3.3 Pragma Unchecked_Union
 
 [A pragma Unchecked_Union specifies an interface correspondence
@@ -319,12 +320,12 @@
 
 This proposal is designed to allow what in C is essentially
 one (named) type definition, to similarly become one type
-definition in Ada.  It is quite common to use anonymous
-unions and structs nested within one another in C.  In Ada, the
+definition in Ada. It is quite common to use anonymous
+unions and structs nested within one another in C. In Ada, the
 natural mapping for this is non-variant and variant parts,
-and nested variants.  The need to eliminate the storage for
+and nested variants. The need to eliminate the storage for
 the discriminant exists for these more complex uses of "union" in C
-just as much as it exists for a very simple use of "union."  Hence,
+just as much as it exists for a very simple use of "union". Hence,
 we propose to allow unchecked union types to include non-variant
 parts along with variant parts, to include multiple components
 per variant, and to support nested variants, to maximize the likelihood
@@ -349,6 +350,12 @@
 unchecked union type or if T is a record
 type that has no discriminants and that only has components with statically
 constrained subtypes, and each component is C-compatible.
+
+!corrigendum B.3(74)
+
+@ddel
+@xindent<@s9<11 There is no explicit support for C's union types.
+Unchecked conversions can be used to obtain the effect of C unions.>>
 
 !corrigendum B.3.3(1)
 

Questions? Ask the ACAA Technical Agent