------- Comment #7 from burnus at gcc dot gnu dot org 2009-05-18 16:52 ------- Issue brought up by Jakub:
do you require all equivalenced vars to be either threadprivate or non-threadprivate? or, does a single threadprivate var make all vars equivalenced somehow to it threadprivate? Issues brought up by those creating the patch: There is a problem for saved variables - there the equivalence does not work. One has two options: 1. Remove the equivalence statements and replace the aliases in the code. 2. Create a "local" common block with the saved variables. If the variables were initialized via data statements one has to take care of that at the first entry into the routine. Thus, Jakob wants to have a full specification first. I looked at other compilers and while IBM does not seem to allow it [1], Intel does not write anything about it [2] and for sun I couldn't find anything. (Still, several compilers support it: Intel's ifort, SUN's sunf95, Open64's openf95, Pathscale's pathf95 and Portland's pgf95; maybe even IBM although it is not mentioned at [1].) [1] http://publib.boulder.ibm.com/infocenter/lnxpcomp/v101v121/topic/com.ibm.xlf121.linux.doc/proguide/threadprivate.html [2] http://www.intel.com/software/products/compilers/docs/flin/main_for/lref_for/source_files/rfthred.htm -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38979