[J3] US13. Put with Notify.
John Reid
John.Reid at stfc.ac.uk
Tue Sep 21 19:23:33 UTC 2021
Dear all,
I think I have found two glitches associated with US 13. Here is a draft
paper. Any comments? I plan to put it on the web site at the end of this
week.
Cheers,
John
-------------- next part --------------
To: J3 J3/21-xxx
From: John Reid
Subject: US 13, Put with Notify
Date: 2021-September-21
Reference: 21-007r2
Discussion
----------
I think I have found two glitches associated with US 13.
[211:1-4] 11.6, para 5 says
"Execution of an assignment statement whose variable has a NOTIFY=
specifier is initially unsatisfied. Successful execution of a
NOTIFY WAIT statement with a threshold value of k satisfies the
first k unsatisfied executions of assignment statements whose
NOTIFY= specifier specifies the same notify variable as the
NOTIFY WAIT statement."
This is clearly modeled on para 5 of 11.7.8 which says
"An EVENT POST statement execution is initially unsatisfied. Successful
execution of an EVENT WAIT statement with a threshold of k satisfies
the first k unsatisfied EVENT POST statement executions for that event
variable. This EVENT WAIT statement execution causes the segment
following the EVENT WAIT statement execution to succeed the segments
preceding those k EVENT POST statement executions."
This is needed for events because it affects the segment ordering. As
far as I can see, it does nothing for NOTIFY. I suggest that it be
deleted.
The second glitch lies in C1612 which says
"A named variable with declared type NOTIFY_TYPE shall be a coarray.
A named variable with a potential subobject component of
type NOTIFY_TYPE shall be a coarray."
This is modeled on C1604 which says
"A named variable with declared type EVENT_TYPE shall be a coarray.
A named variable with a noncoarray potential subobject component of
type EVENT_TYPE shall be a coarray."
The important adjective "noncoarray" is missing from the second
sentence of C1612. It is important because we should allow a noncoarray
variable that has a coarray potential subobject component of type
EVENT_TYPE.
Edits to 21-007r2
-----------------
[211:1-4] In 11.6, NOTIFY WAIT statement, delete para 5:
"Execution of an assignment statement whose variable has a NOTIFY=
specifier is initially unsatisfied. Successful execution of a
NOTIFY WAIT statement with a threshold value of k satisfies the
first k unsatisfied executions of assignment statements whose
NOTIFY= specifier specifies the same notify variable as the
NOTIFY WAIT statement."
[456:37] In 16.10.2.22 NOTIFY_TYPE, C1612, second sentence, add
"noncoarray" before "potential" o make the sentence read
"A named variable with a noncoarray potential subobject component of
type NOTIFY_TYPE shall be a coarray."
More information about the J3
mailing list