gm2
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Gm2] equality, inequality tests and structured types


From: Breeden, Thomas (tmb)
Subject: RE: [Gm2] equality, inequality tests and structured types
Date: Wed, 28 Jan 2009 16:52:24 -0500

Gaius,

An annotation in this section

   6.7.4 Dereferenced Designators
   ...
   annotations: Check the designator and that it designates a variable of a 
pointer type. 
   Outside of the implementation module in which it is defined, an opaque type 
is not a pointer type.

I am puzzled about the other annotation about the "meaning function". Maybe it 
requires more understanding of the VDL. But it seems as if it is not legal to 
assign a pointer type (even ADDRESS) to an opaque type outside of its own 
implementation module.

Tom
address@hidden

> > I spent some time this weekend pouring over the ISO document trying
> to determine if I could really allow a statement like this in a client
> module importing an Opaque.
> >
> > VAR  c :TheImportedOpaque;
> > BEGIN
> > c := NIL;
> >
> > and I couldn't. The standard makes it clear that an Opaque type is
> > not a pointer type except within the Impl module which elaborates
> > the Opaque type as POINTER TO x or ADDRESS. It even states that
> > baldly, though I don't have the paragraph at hand.
> 
> do you have a reference for the above in the ISO standard?
> 
> It also says that:
> 
> "Annotations  Opaque types are indistinguishable from pointer types
> with respect to the meaning function."
> 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]