From owner-sc22wg5+sc22wg5-dom8=www.open-std.org@open-std.org  Mon Dec  7 00:15:33 2015
Return-Path: <owner-sc22wg5+sc22wg5-dom8=www.open-std.org@open-std.org>
X-Original-To: sc22wg5-dom8
Delivered-To: sc22wg5-dom8@www.open-std.org
Received: by www.open-std.org (Postfix, from userid 521)
	id DA95735877D; Mon,  7 Dec 2015 00:15:33 +0100 (CET)
Delivered-To: sc22wg5@open-std.org
X-Greylist: delayed 2698 seconds by postgrey-1.34 at www5.open-std.org; Mon, 07 Dec 2015 00:15:33 CET
Received: from out1.srv2.flexfilter.nl (out1.srv2.flexfilter.nl [62.84.241.67])
	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by www.open-std.org (Postfix) with ESMTP id 7F3D8356E3E
	for <sc22wg5@open-std.org>; Mon,  7 Dec 2015 00:15:31 +0100 (CET)
Received: from [89.18.180.60] (helo=mail.antivirus.flexwebhosting.nl)
	by srv2a.flexfilter.nl with esmtp (Exim 4.85)
	(envelope-from <erik@forcheck.nl>)
	id 1a5hp5-0007lf-Bj
	for sc22wg5@open-std.org; Sun, 06 Dec 2015 23:30:32 +0100
Received: from srv2059.flexwebhosting.nl ([89.18.176.59])
	by mail.antivirus.flexwebhosting.nl with esmtp (Exim 4.85)
	(envelope-from <erik@forcheck.nl>)
	id 1a5hpZ-0006fg-PN
	for sc22wg5@open-std.org; Sun, 06 Dec 2015 23:30:57 +0100
Received: from 77-173-137-2.ip.telfort.nl ([77.173.137.2] helo=PCForcheck)
	by srv2059.flexwebhosting.nl with esmtp (Exim 4.60)
	(envelope-from <erik@forcheck.nl>)
	id 1a5hp6-0000c7-3k
	for sc22wg5@open-std.org; Sun, 06 Dec 2015 23:30:28 +0100
From: "Erik Kruyt" <erik@forcheck.nl>
To: <sc22wg5@open-std.org>
Subject: Re: (SC22WG5.5582) Interps straw ballot 10
Date: Sun, 6 Dec 2015 23:30:15 +0100
Message-ID: <001301d13075$ade8ff50$09bafdf0$@forcheck.nl>
MIME-Version: 1.0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_000_0014_01D1307E.0FAE51B0"
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AdEwdCarNjhhIJN4RyWXCZvNBaI6tQ==
Content-Language: nl
X-Filter-ID: s0sct1PQhAABKnZB5plbIb1LeybhW2qX5eEgOt6WpkxlIEerTejTSObJOJOrho6UWQ0UJOjFsat2
 lTd/bNK6J5PejjoESUGONmGhgGwzhg1C/lGsrXcsS0xY0J18f6o7xB66CWvXcfKDfXjTU++u69v2
 r8Kad5S78KpowQI7iySHSXJK8hdwf30p+m80NXy6ZuM7jUXIESohoO51xWmU8c8KdjvtIIgWUj0g
 1U5peLrMz4KV0ChqxZklV/XrmXG01cPlhg84p/Bid4fRoVt1SypgzVLraik+Pm0noDl3IsTrjuU3
 A3io6xJmD59iFVkbUztA2t48qMeUBTYHWX5eFAj5E5cjHTqCBSZq5bgXN9Km6W9Yy+DJzPiW518I
 6XCFG5b/+/xmAxi+qQQD8d0YcRw8KfWVgBtIzWSRMiXKnCK3SGMF43kffO93vLz9y7qcu8AlcXVf
 E3O+O6Haz3XE/pxwj7G309dkj99epKWv2wINBF4OKfp6sDCu2bDdRfgiKTZG2GCfGGe3ec4u+I+h
 f5iGygEGB06iPpGEBF27K5RLFsQAgqQHXcmkSF1/3iGto8OXg0IsK+NOZBSnqLdfS2PGBbvhBjdJ
 2cLM9uqQ05RBRCn3eIrJzhc9tCyA6NFk/F9AhgpbWHrNhncOjNhxDjEvuGslKTrRIXcXpFg5ivY=
X-Report-Abuse-To: spam@srv3a.flexfilter.nl
X-Filter-Fingerprint: IFrWXGses7OKB5S5G8/dJRn/7L7+nnclbWGk7OJ1jHJA3cTUQ1R++keuE7RDJ8Kg3RbMLUalw1oC
 mj99/u+PoqoVy8a3lsStJtAvpObFX0Wok1JBYnOLzfRIhlEHQynLUpndEJ0YoaLytXXo8BMTaX2p
 Mk7LBarWD9Fj4R3eIu5cOy/3Wm9qfF/CZNvP/2Kowv61T+KDYyYtREgszdyFwv8IxCB3p/oCKvxr
 eyISh3JGb7OS5oVgiO+kDxZrVPLz3MmEGC2PrUKqLq5WmHK+Nw==
X-Originating-IP: 89.18.180.60
X-SpamExperts-Domain: fxwrelaydummydomein.nl
X-SpamExperts-Username: 89.18.180.60
Authentication-Results: flexfilter.nl; auth=pass smtp.auth=89.18.180.60@fxwrelaydummydomein.nl
X-SpamExperts-Outgoing-Class: ham
X-SpamExperts-Outgoing-Evidence: Combined (0.18)
X-Recommended-Action: accept
Sender: owner-sc22wg5@open-std.org
Precedence: bulk

This is a multipart message in MIME format.

------=_NextPart_000_0014_01D1307E.0FAE51B0
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

The following Fortran 2008 interpretations are being balloted:

 

Yes  No   Number     Title

 

Y   ---  F03/0042  IEEE funny values and Standard real generic intrinsic

                     procedures

C   ---  F08/0109  LOCK_TYPE and unlimited polymorphic

Y   ---  F08/0145  Can initial-data-target be coindexed?

C   ---  F08/0147  Is generic resolution of elemental assignment done

                     at runtime?

Y   ---  F08/0148  Pointer subobject in structure constructor in

                     pure procedure

 

comments:

 

F08/0109

  CLASS(*),ALLOCATABLE, SAVE :: C[:]

  TYPE(LOCK_TYPE),      SAVE :: X[*]

  ALLOCATE(C,MOLD=X)

 

C is a coarray, so according to C634 C must have an allocate-coarray-spec,
with zero allocate-coshape-specs: 

  ALLOCATE(C[*],MOLD=X)

 

So the example should be corrected.

 

F08/0147

elemental subroutine edasgn(a,b)

  class(t),intent(out) :: a

  class(t),intent(in) :: b

  a%c = -b%c

end subroutine

 

This defined assignment is not standard conforming according to C1278a.

This part of the example should be changed to:

 

elemental subroutine edasgn(a,b)

  type(t),intent(out) :: a

  type(t),intent(in) :: b

  a%c = -b%c

end subroutine

 

 

Erik Kruyt


------=_NextPart_000_0014_01D1307E.0FAE51B0
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii"><meta name=3DGenerator content=3D"Microsoft Word 15 =
(filtered medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
	{mso-style-priority:99;
	mso-style-link:"Tekst zonder opmaak Char";
	margin:0cm;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-fareast-language:EN-US;}
p.msonormal0, li.msonormal0, div.msonormal0
	{mso-style-name:msonormal;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	font-size:12.0pt;
	font-family:"Times New Roman",serif;}
span.TekstzonderopmaakChar
	{mso-style-name:"Tekst zonder opmaak Char";
	mso-style-priority:99;
	mso-style-link:"Tekst zonder opmaak";
	font-family:"Calibri",sans-serif;}
span.E-mailStijl20
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DNL =
link=3D"#0563C1" vlink=3D"#954F72"><div class=3DWordSection1><p =
class=3DMsoPlainText><span lang=3DEN-US>The following Fortran 2008 =
interpretations are being balloted:<o:p></o:p></span></p><p =
class=3DMsoPlainText><span lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US>Yes&nbsp; No&nbsp;&nbsp; =
Number&nbsp;&nbsp;&nbsp;&nbsp; Title<o:p></o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US>Y &nbsp;&nbsp;---&nbsp; =
F03/0042&nbsp; IEEE funny values and Standard real generic =
intrinsic<o:p></o:p></span></p><p class=3DMsoNormal><span =
lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
procedures<o:p></o:p></span></p><p class=3DMsoNormal><span =
lang=3DEN-US>C &nbsp;&nbsp;---&nbsp; F08/0109&nbsp; LOCK_TYPE and =
unlimited polymorphic<o:p></o:p></span></p><p class=3DMsoNormal><span =
lang=3DEN-US>Y &nbsp;&nbsp;---&nbsp; F08/0145&nbsp; Can =
initial-data-target be coindexed?<o:p></o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US>C &nbsp;&nbsp;---&nbsp; =
F08/0147&nbsp; Is generic resolution of elemental assignment =
done<o:p></o:p></span></p><p class=3DMsoNormal><span =
lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at =
runtime?<o:p></o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US>Y =
&nbsp;&nbsp;---&nbsp; F08/0148&nbsp; Pointer subobject in structure =
constructor in<o:p></o:p></span></p><p class=3DMsoNormal><span =
lang=3DEN-US>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pure =
procedure<o:p></o:p></span></p><p class=3DMsoNormal><span =
lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
lang=3DEN-US>comments:<o:p></o:p></span></p><p class=3DMsoNormal><span =
lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
lang=3DEN-US>F08/0109<o:p></o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-US>&nbsp; CLASS(*),ALLOCATABLE, SAVE :: =
C[:]<o:p></o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-US>&nbsp; TYPE(LOCK_TYPE),&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SAVE =
:: X[*]<o:p></o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-US>&nbsp; ALLOCATE(C,MOLD=3DX)<o:p></o:p></span></p><p =
class=3DMsoPlainText><span lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoPlainText><span lang=3DEN-US>C is a coarray, so according to =
C634 C must have an allocate-coarray-spec, with zero =
allocate-coshape-specs: <o:p></o:p></span></p><p =
class=3DMsoPlainText><span =
lang=3DEN-US>&nbsp;&nbsp;ALLOCATE(C[*],MOLD=3DX)<o:p></o:p></span></p><p =
class=3DMsoPlainText><span lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoPlainText><span lang=3DEN-US>So the example should be =
corrected.<o:p></o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-US>F08/0147<o:p></o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-US>elemental subroutine edasgn(a,b)<o:p></o:p></span></p><p =
class=3DMsoPlainText><span lang=3DEN-US>&nbsp; class(t),intent(out) :: =
a<o:p></o:p></span></p><p class=3DMsoPlainText><span lang=3DEN-US>&nbsp; =
class(t),intent(in) :: b<o:p></o:p></span></p><p =
class=3DMsoPlainText><span lang=3DEN-US>&nbsp; a%c =3D =
-b%c<o:p></o:p></span></p><p class=3DMsoPlainText><span lang=3DEN-US>end =
subroutine<o:p></o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-US>This defined assignment is not standard conforming =
according to C1278a.<o:p></o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-US>This part of the example should be changed =
to:<o:p></o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-US>elemental subroutine edasgn(a,b)<o:p></o:p></span></p><p =
class=3DMsoPlainText><span lang=3DEN-US>&nbsp; type(t),intent(out) :: =
a<o:p></o:p></span></p><p class=3DMsoPlainText><span lang=3DEN-US>&nbsp; =
type(t),intent(in) :: b<o:p></o:p></span></p><p =
class=3DMsoPlainText><span lang=3DEN-US>&nbsp; a%c =3D =
-b%c<o:p></o:p></span></p><p class=3DMsoPlainText><span lang=3DEN-US>end =
subroutine<o:p></o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span =
lang=3DEN-US>Erik Kruyt<o:p></o:p></span></p></div></body></html>
------=_NextPart_000_0014_01D1307E.0FAE51B0--


