[cpp-threads] Static member functions, member access syntax and sequenced-before

N.M. Maclaren nmm1 at cam.ac.uk
Thu Nov 24 20:36:29 GMT 2011


On Nov 24 2011, Peter Dimov wrote:
>
>No, I think I understand your point. It's my fault you don't understand 
>mine.

We can share it :-)

> The compiler, in a multithreaded world, is not allowed to evaluate 
> expressions unless given permission to do so by the standard (as opposed 
> to a single-threaded world, in which evaluating an expression without 
> side effects is undetectable).

That wasn't quite the point but reduces the reasonableness of the
interpretation I was thinking of.  I was more thinking of the liberty
to use a different evaluation method if they were functionally identical
(i.e. to evaluate the expression, but use the class to resolve the
function name).  However, if functionally identical is interpreted to
include 1.7/1.10 sequencing and dependency, the alternative interpretation
fails.

I still can't find that in explicit wording in the standard.

Heaven help me, I really HAVE had to try arguing this one with a vendor
who was reluctant to fix a compiler though not, of course, in C++.


Regards,
Nick Maclaren.





More information about the cpp-threads mailing list