Patchwork [Fortran] Mark "token" of static coarrays "restrict"

login
register
mail settings
Submitter Tobias Burnus
Date July 14, 2011, 9:01 a.m.
Message ID <4E1EB069.9080000@net-b.de>
Download mbox | patch
Permalink /patch/104643/
State New
Headers show

Comments

Tobias Burnus - July 14, 2011, 9:01 a.m.
As the title says: Mark "token" of static coarrays "restrict"

Bootstrapped and regtested on x86-64-linux.
OK for the trunk?

Tobias
Daniel Carrera - July 14, 2011, 1:37 p.m.
For what it's worth, it compiles and works on my 32bit Linux too. But 
this is such a simple patch it *had* to work.

On 07/14/2011 11:01 AM, Tobias Burnus wrote:
> As the title says: Mark "token" of static coarrays "restrict"
>
> Bootstrapped and regtested on x86-64-linux.
> OK for the trunk?
>
> Tobias
Tobias Burnus - July 18, 2011, 1:55 p.m.
*ping*
http://gcc.gnu.org/ml/fortran/2011-07/msg00142.html

On 07/14/2011 11:01 AM, Tobias Burnus wrote:
> As the title says: Mark "token" of static coarrays "restrict"
>
> Bootstrapped and regtested on x86-64-linux.
> OK for the trunk?
>
> Tobias
Mikael Morin - July 18, 2011, 2:21 p.m.
On Thursday 14 July 2011 11:01:29 Tobias Burnus wrote:
> As the title says: Mark "token" of static coarrays "restrict"
> 
> Bootstrapped and regtested on x86-64-linux.
> OK for the trunk?
> 
> Tobias
OK. (and obvious)

Mikael

Patch

2011-07-13  Tobias Burnus  <burnus@net-b.de>

	* trans-decl.c (gfc_build_qualified_array): Make coarray's
	token TYPE_QUAL_RESTRICT.

diff --git a/gcc/fortran/trans-decl.c b/gcc/fortran/trans-decl.c
index ddc7c36..65a8efa 100644
--- a/gcc/fortran/trans-decl.c
+++ b/gcc/fortran/trans-decl.c
@@ -759,7 +759,9 @@  gfc_build_qualified_array (tree decl, gfc_symbol * sym)
     {
       tree token;
 
-      token = gfc_create_var_np (pvoid_type_node, "caf_token");
+      token = gfc_create_var_np (build_qualified_type (pvoid_type_node,
+						       TYPE_QUAL_RESTRICT),
+				 "caf_token");
       GFC_TYPE_ARRAY_CAF_TOKEN (type) = token;
       DECL_ARTIFICIAL (token) = 1;
       TREE_STATIC (token) = 1;