Subj : Re: double-checked locking in C To : comp.programming.threads From : David Schwartz Date : Fri Jul 08 2005 03:03 am "Laurent Deniau" wrote in message news:dalavc$e3$1@sunnews.cern.ch... >> not mean that bus transactions to memory occur in the specified order, >> because the C standard does not even assume that there is such a bus. > Right. Comming back to the example, returning from a function is a > sequence point. Therefore, if initialized is volatile, C does not allow to > assign it before it returns from the call with a stable value. I have no > consideration about bus and such low level stuffs. What does "allow to assign it" mean? Does it mean write to the L2 cache? Does it mean execute the assembly-language instruction to write it? Does it mean flush it to the ultimate backing store in main memory? You are using words in a context in which they have no meaning. DS .