Unintentional restrictions on the use of thread_local
9.2.2 [dcl.stc]
Clark Nelson

Created on 2008-09-17.00:00:00 last changed 143 months ago


Date: 2009-10-15.00:00:00

[Voted into WP at October, 2009 meeting.]

Date: 2009-07-15.00:00:00

Proposed resolution (July, 2009):

Change 9.2.2 [dcl.stc] paragraph 4 as follows:

The thread_local specifier shall be applied only to the names of objects or references of namespace scope and, to the names of objects or references of block scope that also specify extern or static, and to the names of static data members. It specifies that the named object or reference has thread storage duration ( [basic.stc.thread]).
Date: 2009-03-23.00:00:00
N2800 comment USĀ 36

The current wording unintentionally restricts the use of the thread_local specifier in two contexts: block-scope extern variable declarations and static data members. These restrictions are in conflict with 9.2.2 [dcl.stc] paragraph 1.

Date User Action Args
2010-03-29 00:00:00adminsetstatus: dr -> cd2
2009-11-08 00:00:00adminsetmessages: + msg2447
2009-11-08 00:00:00adminsetstatus: ready -> dr
2009-08-03 00:00:00adminsetstatus: review -> ready
2009-03-23 00:00:00adminsetmessages: + msg1931
2009-03-23 00:00:00adminsetstatus: open -> review
2008-09-17 00:00:00admincreate