This is the mail archive of the gcc-cvs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

r192209 - in /trunk/gcc: c-family/ChangeLog c-f...


Author: jason
Date: Mon Oct  8 14:45:12 2012
New Revision: 192209

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=192209
Log:
	Partial implementation of C++11 thread_local.
c-family/
	* c-common.c (c_common_reswords): Add thread_local.
cp/
	* decl.c (cp_finish_decl): Remove errors about non-trivial
	initialization and destruction of TLS variables.
	(register_dtor_fn): Add sorry about TLS variables.
	(expand_static_init): Add sorry about non-local TLS variables,
	or error with __thread.
	Don't emit thread-safety guards for local TLS variables.
	(grokdeclarator): thread_local in a function implies static.
	* decl.h: Adjust prototype.
	* decl2.c (get_guard): Copy DECL_TLS_MODEL.
	* parser.c (cp_parser_set_storage_class, cp_parser_set_decl_spec_type)
	(set_and_check_decl_spec_loc): Take the token rather than the location.
	Distinguish between __thread and thread_local.
	(cp_parser_set_storage_class): Don't complain about thread_local before
	extern/static.
	(token_is__thread): New.
	* call.c (make_temporary_var_for_ref_to_temp): Handle TLS.
	* cp-tree.h (DECL_GNU_TLS_P): New.
	(cp_decl_specifier_seq): Add gnu_thread_keyword_p.

Added:
    trunk/gcc/testsuite/g++.dg/tls/thread_local1.C
    trunk/gcc/testsuite/g++.dg/tls/thread_local2.C
    trunk/gcc/testsuite/g++.dg/tls/thread_local7.C
Modified:
    trunk/gcc/c-family/ChangeLog
    trunk/gcc/c-family/c-common.c
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/call.c
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/decl.c
    trunk/gcc/cp/decl.h
    trunk/gcc/cp/decl2.c
    trunk/gcc/cp/parser.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/g++.dg/tls/init-2.C


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]