The unified proposal allows all three test cases.
You say all three are disallowed. Is that according to
your model, or you think it should be a requirement for
the Java Memory Model that they be disallowed?
In test case 18b, the first write to x by thread 1 is always
dead, so the behavior _must_ be the same as in test case 18
(i.e., allowed).
Non-standard type analysis would deduce that the type of x is {0,42}
in both 18a and 18c. So the behaviors of 18a and 18c must also be the
same as 18 (i.e., allowed).
Bill
-------------------------------
JavaMemoryModel mailing list - http://www.cs.umd.edu/~pugh/java/memoryModel
This archive was generated by hypermail 2b29 : Thu Oct 13 2005 - 07:01:00 EDT