[cpp-threads] static locals

Kevlin Henney kevlin at curbralan.com
Sun May 29 12:29:42 BST 2005


In message <000901c5642e$28f8bbb0$6401a8c0 at pdimov2>, Peter Dimov 
<pdimov at mmltd.net> writes
>
>My opinion is that all local statics should be synchronized (as in the 
>IA64 ABI) and that __async volatile should not be introduced. So... if 
>I take a step back I see no need for new syntactic additions. ;-)

In other words, referring to the categories I introduced, no need for 
(1), and therefore no need for (2) ;-> However, it is unlikely that this 
view will be shared by others, which means that (1) is likely to be a 
non-empty set, and therefore there will need to be something in (2).

>That aside, static is a storage class, but volatile is a cv qualifier; 
>adding arbitrary "attributes" to cv qualifiers and into the type system 
>would be a big change.

Adding a thread-sensible memory model is also a big change, as is adding 
new keywords or recycling existing ones. What I have proposed is a 
smaller and regular change -- it makes little difference whether we are 
talking about specifiers or qualifiers given that neither generally 
supports the syntax suggested.

Importantly, there is no sense of "arbitrary": the scope of what is 
added is constrained by (1). If an implementation wants to use that 
syntax to add its own extensions, it is free to do so -- the current 
option of adding keywords in arbitrary places lacks any kind of 
regularity -- but what I have suggested should not be mistaken for a 
fully extensible annotation framework in the language -- if someone 
wants to do that, that would be a separate project.

Kevlin
-- 
____________________________________________________________

   Kevlin Henney                   phone:  +44 117 942 2990
   mailto:kevlin at curbralan.com     mobile: +44 7801 073 508
   http://www.curbralan.com        fax:    +44 870 052 2289
   Curbralan: Consultancy + Training + Development + Review
____________________________________________________________




More information about the cpp-threads mailing list