aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/symbol.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2011-08-26 16:55:05 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2011-08-26 16:55:05 +0200
commita6c975bd8e847c29541026b66b33275b42df4995 (patch)
tree5460c14eafa145770f2aadf261d0b5fd64127454 /gcc/fortran/symbol.c
parent2f27df53e757ee0ef77d042e92a7cd8e931e97f5 (diff)
downloadgcc-a6c975bd8e847c29541026b66b33275b42df4995.zip
gcc-a6c975bd8e847c29541026b66b33275b42df4995.tar.gz
gcc-a6c975bd8e847c29541026b66b33275b42df4995.tar.bz2
trans-decl.c (get_proc_pointer_decl): Set DECL_TLS_MODEL if threadprivate.
* trans-decl.c (get_proc_pointer_decl): Set DECL_TLS_MODEL if threadprivate. * symbol.c (check_conflict): Allow threadprivate attribute with FL_PROCEDURE if proc_pointer. * testsuite/libgomp.fortran/threadprivate4.f90: New test. From-SVN: r178114
Diffstat (limited to 'gcc/fortran/symbol.c')
-rw-r--r--gcc/fortran/symbol.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/fortran/symbol.c b/gcc/fortran/symbol.c
index 126a52b..ce4ab3d 100644
--- a/gcc/fortran/symbol.c
+++ b/gcc/fortran/symbol.c
@@ -673,7 +673,8 @@ check_conflict (symbol_attribute *attr, const char *name, locus *where)
conf2 (codimension);
conf2 (dimension);
conf2 (function);
- conf2 (threadprivate);
+ if (!attr->proc_pointer)
+ conf2 (threadprivate);
}
if (!attr->proc_pointer)