// Copyright: (C) 2009 Gilles Muller, Julia Lawall, INRIA, DIKU.  GPLv2.

@r@
expression x,E,E1;
identifier f,l;
position p1,p2;
@@

x@p1->f = E1;
... when != x = E
    when != goto l;
(
x@p2 == NULL
|
x@p2 != NULL
)

@ok@
expression x;
position r.p1,r.p2;
@@

... when != x@p1
(
x@p2 == NULL
|
x@p2 != NULL
)

@depends on !ok@
expression x;
position r.p1,r.p2;
@@

*x@p1
...
*x@p2