From owner-sc22wg5+sc22wg5-dom9=www.open-std.org@open-std.org  Wed Aug 23 15:27:03 2023
Return-Path: <owner-sc22wg5+sc22wg5-dom9=www.open-std.org@open-std.org>
X-Original-To: sc22wg5-dom9
Delivered-To: sc22wg5-dom9@www.open-std.org
Received: by www.open-std.org (Postfix, from userid 521)
	id 28C0F3592B8; Wed, 23 Aug 2023 15:27:03 +0200 (CEST)
Delivered-To: sc22wg5@open-std.org
Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on2069.outbound.protection.outlook.com [40.107.212.69])
	by www.open-std.org (Postfix) with ESMTP id 8B7E035929F
	for <sc22wg5@open-std.org>; Wed, 23 Aug 2023 15:27:01 +0200 (CEST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ktWgpEeIGqUdGmfFCdAtQTUSLDuEAWyJGg4vsLUeH0bEu1lrl5h8QRwRdtN8xsaRHknYNdumMejqvTwi0xPOzv/qCmC9arfYURqVNwrvWUFCTloV2KqXXfde0bO9FSzIgI/78n1Zjl12J/PqBvtZKHfMhk+6uoc0UbGye9Sd35k0khNKropEd16/2pOsewmdTpK+9LhT6rswNW+BJzUZ20MzxTgMqfqLtbwFmsHPio24k8QYIvr8n+7/nO3ceSx/TMJ8PM99cOF72ER69smp+UrRaOSU6mWiOdwkhypjddD3AnxWsAkx9z4hbDCjlfrFRRpHiDf3/3bw2ju2Y//1ag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/O0uEaCV2Q7bW3A+qAriHCitxmpDczHswdWdcjgr/Ks=;
 b=MGba1+5YIAGFa27CNUY9uLqqqgCnbgNyHwUKjUg8Ny0EI/VgCrxAe5ny91/pViSDmRtUpjG4z5ac9h3qyIEP2s0d9yWCwe4bdN48AgOglwwcSQV6APB0sl/pL2040bdG3L8WOfVQct+STs7yqTHrV/I0c1VV+dxnkyBi+SwCsAb3arTuXo/qJWT3zZpZxqi2ZTwKcb7f10m+94L9Nd9HDrz0BBHm1m3AlbYnXNixw3W0HDTDh67jn5nzHXx/BqRMglFpgMrdi/nvZoYhqkoGCsZSU6GOExj4C306CwavLVuAZ19CWCbYfui5zD73a4Ek4Xeud3lF10Y68NxA36HSag==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com;
 dkim=pass header.d=nvidia.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;
 s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/O0uEaCV2Q7bW3A+qAriHCitxmpDczHswdWdcjgr/Ks=;
 b=CttpVOx//1pBaLRdY1UDhwpvfb5BjfNbXGbB8n83L/7X2ZUXYggG0OqODtS1zKe8y21N3DefusHn7mQc6EQA8inp/67FC9gBT77Rikcm6EizT/uOfO+5egz1KTnjYUo1k1mPSvux51XHIYhFVrGIoQocWARzBB70aqnmt4bH8zk6f5yV3OEfzAy1mfZqNCNKOzdqme5BaX0NfZKiNo8ziUiH/zVvQCL288T0c3aXqwxWMAp7iox+HJ5L9qS+vpy8jtIiZfVCda2PLBE21zvONMr8dU9+SRTm74fYgb+2s+ZNgCDAkFEdRQN+Lp9G6IbP6vbjsYvT0Bk6/sXjj391ag==
Received: from DM6PR12MB3130.namprd12.prod.outlook.com (2603:10b6:5:11b::16)
 by IA0PR12MB8280.namprd12.prod.outlook.com (2603:10b6:208:3df::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6699.26; Wed, 23 Aug
 2023 13:26:56 +0000
Received: from DM6PR12MB3130.namprd12.prod.outlook.com
 ([fe80::59af:3a04:c24f:8191]) by DM6PR12MB3130.namprd12.prod.outlook.com
 ([fe80::59af:3a04:c24f:8191%5]) with mapi id 15.20.6678.025; Wed, 23 Aug 2023
 13:26:56 +0000
From: Jeff Hammond <jehammond@nvidia.com>
To: "Clune, Thomas L. (GSFC-6101)" <thomas.l.clune@nasa.gov>, General J3
 interest list <j3@mailman.j3-fortran.org>, WG5 <sc22wg5@open-std.org>
Subject: Re: [EXTERNAL] [BULK] [J3] [SC22WG5.6473] raising a negative real
 value to a real power is prohibited
Thread-Topic: [EXTERNAL] [BULK] [J3] [SC22WG5.6473] raising a negative real
 value to a real power is prohibited
Thread-Index: AQHZ1bqrMUMAuMNqBUaEHaRV9oJ7y6/3mB2AgABF2lE=
Date: Wed, 23 Aug 2023 13:26:56 +0000
Message-ID:
 <DM6PR12MB3130C2CE5183124D5560F08ACB1CA@DM6PR12MB3130.namprd12.prod.outlook.com>
References:
 <DM6PR12MB3130494FFA1272F4846405C9CB1CA@DM6PR12MB3130.namprd12.prod.outlook.com>
 <802881F2-4D97-4FE0-8B95-56A6503D4A93@nasa.gov>
In-Reply-To: <802881F2-4D97-4FE0-8B95-56A6503D4A93@nasa.gov>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=nvidia.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: DM6PR12MB3130:EE_|IA0PR12MB8280:EE_
x-ms-office365-filtering-correlation-id: d3c7404a-3e0f-460e-a620-08dba3dc9f58
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 Aj3ad+3BF6qdvtaxFKmjneisKrZ/WTeDx9cfhK1eUQOVk4tao64QO4pNivFRvxqq20LDZAFxdVMmkAqKIyzGZWk35GKhOR/tF+6KGciZCfpllT40CHI0FgRDOTQ/uTZb4rqFo8WBxeVU/5Oq1k0SGJPwq77S8YfubIY7GwwluAPwWl4Gz4HEAaQI1Kr7jAqokFYgBIh0u5J3j6Kq6j39qnzFC1SCh51JRVn2Xcpnj+vaZ1FJ0/NBGNF+KAp+Oab8EGIcsJH4sV2cMU9whsah6KxfsQIsotIDgmNmsYQLe6mTwtMdkTecnsaf963WtXJeP9vTl3W3+c+Mr7VhrVKSYFZoTmAcR41buv2OIiS42tbj+0VMFeBYjz+vZDxEfOj9HXzPo7kYomYI7sk2G49MXaworA8GjvstCUTpgF+9bXKA1aUnRSYUEm25x12AyOUoDmDHdH+oQpjLt98pOTgDOmsrIIpseMYXH5eK1NNRC4hYlErZ/PKo2rZob3o9DkAETzDOoQr+dpYRWqmdSex4tHbdPe/2AENIiQzqp1GIr1EqR3K4lo6ZWYvNVcUnyDei/dU5091bJ3gSKk0GV22hd2WfGfYK3pLcE23pBipHbRhHLbZMg2Urs6ke/Ilf/D0o
x-forefront-antispam-report:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR12MB3130.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(136003)(346002)(366004)(396003)(451199024)(186009)(1800799009)(83380400001)(55016003)(2906002)(71200400001)(64756008)(316002)(7696005)(66446008)(6506007)(66556008)(66476007)(53546011)(110136005)(76116006)(66946007)(478600001)(86362001)(33656002)(5660300002)(26005)(38100700002)(41300700001)(9686003)(122000001)(52536014)(38070700005)(8676002)(8936002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0:
 =?Windows-1252?Q?YKujxDfIuSjJrZxuo4Mw8jUDicRbVtr7x9Swm6L8pMf4NMR0kO/AbSOx?=
 =?Windows-1252?Q?fg00nfQh4Jfu7TKNoN3Wgnsb/Nx6YWiHOCc/ti23FMGhv4gwnRDYOMZR?=
 =?Windows-1252?Q?ZHqpzJn33Gz3BrTVCIkvmpf2ZvwatXUZp2CFY5cSC6EECND8jP1qm4XS?=
 =?Windows-1252?Q?BGDPKXRaRBr1IDlwRYTdFUQU7WbYq0mUOBUsbUc/ublo6Zx5hh2mHzPI?=
 =?Windows-1252?Q?6+iM31zjAXQGwGITsrjRbMLRIJwluSt3e9vBG7PECpspLR1CY0Bpggzv?=
 =?Windows-1252?Q?gKQhnsgr6KgRjADoR1Ni9Chx54ZbQMaNj4oC3p0XwpcUhTNKsqr/+WRH?=
 =?Windows-1252?Q?M28obiKJUaTWhEIIM1J3ogIsPvdDultIXoIBx+gVza7VNs939HjuLewX?=
 =?Windows-1252?Q?vZiOuqflMJoUeJENRpraLoro+10ybhkTkhJQgoYjx6Z5s4Ibtb16u5tG?=
 =?Windows-1252?Q?PxpCZy8Ptme5OCmbL99CnTnpAEbanjuyiu+nioQhBcIbZB7QBC4Iej5i?=
 =?Windows-1252?Q?Tsepub+erWyDAOFP03CVvTD4ljdW/3PghWwk8TBCbtB8jrjhpz4Bz45q?=
 =?Windows-1252?Q?NfjkDxnw7DkHchCqE/yPcZXPX9a8N5TDt7+/att2BBB9abS/TWB3pg4L?=
 =?Windows-1252?Q?ewVXL8ghLmc0EYUPsF1O+4kUlB2duJ/6/Qczj1acGFJjJp/WPCnfnvkN?=
 =?Windows-1252?Q?JjylsAsVTfMEsujDx0D8KN+JnSB8K1Kk0PRgJ2Q4nQBCH/W1F0sIh4Lj?=
 =?Windows-1252?Q?xh6FKrlwDmxmm0m0vm0luz5lp5K+No+ZW4YBVtMaQLYslFova5vSUzHF?=
 =?Windows-1252?Q?6/AfOy7coIXyOY9IVOWcWJI/ffASl/7FjdTI3opR/xFsxZ1oZYcxICho?=
 =?Windows-1252?Q?0r59cOUsIzO+vCUPBC+lmh79kGrjqM/oPKTu/7MVTwLfYE7tPX841p6J?=
 =?Windows-1252?Q?rq/bWVPCAxLBZ/HvjxLuTTlVdOPqgyOYYWW5rCP/znALjs/nfBZZYU94?=
 =?Windows-1252?Q?suitqyYiV29MRX6wKxbMxXiNXqyMnv4evciTSxJoHeiAf/ahDQwj1Ywn?=
 =?Windows-1252?Q?4X1C8HvKuB5f9JhRgZ7PtM1uqXzfhQUA697v6VXiV4tEea7uJQmp6u/f?=
 =?Windows-1252?Q?y4wEXrXSnkUItWo1lE4Qls80DY/v0Oqa8Qap2KtWE9mnBT+whB6rrmA4?=
 =?Windows-1252?Q?af2M3L86nTUv/BKXUKhmpGNb5Y8uOex3ab9c8bXcm81IAOr5toq585yl?=
 =?Windows-1252?Q?RKw9/d7mjhKfXsKS7E4GboCKkAqAvsQmUbYkURQJLLCFZXno2Ges+5kr?=
 =?Windows-1252?Q?HF24223GRWubqeqU6MF8va3qd7hgp3M0PUTaiahSX3+5eu2IeofsknMx?=
 =?Windows-1252?Q?RSoSh77Ip3UPuRO/jQFkgfot2awbKTeZJNUW2OpVzxSXreuMZiLzF0ka?=
 =?Windows-1252?Q?l9TPQojrZMUCxCeHvz5E/HB/xF7DuJb8LyqK3epGCKPlTFXcLz+0m0A8?=
 =?Windows-1252?Q?HgE5CXmLHCoXdxdTP8OYGJBz4KuvN1RBRdI5Yne/ilQWrB+dwyuo+hWT?=
 =?Windows-1252?Q?HCah+y1ISra/CWjvIsf2NeACty6YSKcGRkzh9oD/wKacjpIeaYaVuR1d?=
 =?Windows-1252?Q?W4+AxFN3MZAFZKim4By9ARpVhOVtv0jQYV6gKzLdCvn8BD1EtWDpPSxB?=
 =?Windows-1252?Q?nWFdFfJV57HWhHj42kZBFV50gjIrHhTyYC3Mqmxc9DBrlC/TH12PlQ?=
 =?Windows-1252?Q?=3D=3D?=
Content-Type: multipart/alternative;
	boundary="_000_DM6PR12MB3130C2CE5183124D5560F08ACB1CADM6PR12MB3130namp_"
MIME-Version: 1.0
X-OriginatorOrg: Nvidia.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DM6PR12MB3130.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d3c7404a-3e0f-460e-a620-08dba3dc9f58
X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Aug 2023 13:26:56.4028
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: CTYQerT8OIGNNidODkq4R/BbBr1o8+z/yQq98LBdq82fu8TmMuZBh/Pz0uLEdFEoOn8+V8kRtk3l2eCi0awzHA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8280
Sender: owner-sc22wg5@open-std.org
Precedence: bulk

--_000_DM6PR12MB3130C2CE5183124D5560F08ACB1CADM6PR12MB3130namp_
Content-Type: text/plain; charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable

I assume your example is already covered by the first sentence.

Bob=92s response helped me understand the extra constraint.

Thanks,

Jeff

From: Clune, Thomas L. (GSFC-6101) <thomas.l.clune@nasa.gov>
Date: Wednesday, 23. August 2023 at 16.11
To: General J3 interest list <j3@mailman.j3-fortran.org>, WG5 <sc22wg5@open=
-std.org>
Cc: Jeff Hammond <jehammond@nvidia.com>
Subject: Re: [EXTERNAL] [BULK] [J3] [SC22WG5.6473] raising a negative real =
value to a real power is prohibited
External email: Use caution opening links or attachments

What would you expect for the output of this modified program?

program main
  implicit none
  real :: x, y
  x =3D -2.0
  y =3D  0.5
  print*,x**y
end program main

I.e., are you wanting the compiler to detect that a given float is close en=
ough to an integer that the result is real rather than complex?   Or are yo=
u expecting the compiler to convert all such expressions to complex when x =
is negative?


From: J3 <j3-bounces@mailman.j3-fortran.org> on behalf of j3 <j3@mailman.j3=
-fortran.org>
Reply-To: j3 <j3@mailman.j3-fortran.org>
Date: Wednesday, August 23, 2023 at 8:22 AM
To: WG5 <sc22wg5@open-std.org>
Cc: Jeff Hammond <jehammond@nvidia.com>
Subject: [EXTERNAL] [BULK] [J3] [SC22WG5.6473] raising a negative real valu=
e to a real power is prohibited

CAUTION: This email originated from outside of NASA.  Please take care when=
 clicking links or opening attachments.  Use the "Report Message" button to=
 report suspicious messages to the NASA SOC.



Do I understand the following text correctly, that is, that the following p=
rogram is prohibited, even though it perfectly well-defined mathematically?

=9310.1.5.2.4 Evaluation of numeric intrinsic operations

The execution of any numeric operation whose result is not defined by the a=
rithmetic used by the processor is prohibited. Raising a negative real valu=
e to a real power is prohibited.=94
program main
  implicit none
  real :: x, y
  x =3D -2.0
  y =3D  2.0
  print*,x**y
end program main

The first sentence is completely reasonable and seems sufficient to cover t=
he problematic cases.  I do not understand why the second sentence is neces=
sary.

Thanks,

Jeff

--_000_DM6PR12MB3130C2CE5183124D5560F08ACB1CADM6PR12MB3130namp_
Content-Type: text/html; charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable

<html xmlns:o=3D"urn:schemas-microsoft-com:office:office" xmlns:w=3D"urn:sc=
hemas-microsoft-com:office:word" xmlns:m=3D"http://schemas.microsoft.com/of=
fice/2004/12/omml" xmlns=3D"http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3DWindows-1=
252">
<meta name=3D"Generator" 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;}
@font-face
	{font-family:Verdana;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
	{font-family:"Times New Roman \(Body CS\)";
	panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
	{font-family:LMSans10;
	panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
	{font-family:LMRoman10;
	panose-1:2 11 6 4 2 2 2 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	font-size:10.0pt;
	font-family:"Calibri",sans-serif;}
span.EmailStyle20
	{mso-style-type:personal-reply;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;
	mso-ligatures:none;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style>
</head>
<body lang=3D"en-FI" link=3D"#0563C1" vlink=3D"#954F72" style=3D"word-wrap:=
break-word">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:12.0pt">I as=
sume your example is already covered by the first sentence.<o:p></o:p></spa=
n></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:12.0pt"><o:p=
>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:12.0pt">Bob=
=92s response helped me understand the extra constraint.<o:p></o:p></span><=
/p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:12.0pt"><o:p=
>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:12.0pt">Than=
ks,<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:12.0pt"><o:p=
>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:12.0pt">Jeff=
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p>&nbsp;</o:p></=
span></p>
<div id=3D"mail-editor-reference-message-container">
<div>
<div style=3D"border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt"><b><span lang=3D"EN-U=
S" style=3D"font-size:12.0pt;color:black">From:
</span></b><span lang=3D"EN-US" style=3D"font-size:12.0pt;color:black">Clun=
e, Thomas L. (GSFC-6101) &lt;thomas.l.clune@nasa.gov&gt;<br>
<b>Date: </b>Wednesday, 23. August 2023 at 16.11<br>
<b>To: </b>General J3 interest list &lt;j3@mailman.j3-fortran.org&gt;, WG5 =
&lt;sc22wg5@open-std.org&gt;<br>
<b>Cc: </b>Jeff Hammond &lt;jehammond@nvidia.com&gt;<br>
<b>Subject: </b>Re: [EXTERNAL] [BULK] [J3] [SC22WG5.6473] raising a negativ=
e real value to a real power is prohibited<o:p></o:p></span></p>
</div>
<table class=3D"MsoNormalTable" border=3D"1" cellpadding=3D"0" style=3D"bac=
kground:#FFEB9C">
<tbody>
<tr>
<td style=3D"padding:.75pt .75pt .75pt .75pt">
<p class=3D"MsoNormal"><b><span style=3D"font-size:7.5pt;font-family:&quot;=
Verdana&quot;,sans-serif;color:black">External email: Use caution opening l=
inks or attachments</span></b><span style=3D"font-size:7.5pt;font-family:&q=
uot;Verdana&quot;,sans-serif;color:black">
</span><span style=3D"font-size:11.0pt"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt"><o:p=
>&nbsp;</o:p></span></p>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-l=
igatures:standardcontextual">What would you expect for the output of this m=
odified program?<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-l=
igatures:standardcontextual">&nbsp;<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">program main</spa=
n><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:standardcont=
extual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">&nbsp; implicit n=
one</span><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:stan=
dardcontextual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">&nbsp; real :: x,=
 y</span><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:stand=
ardcontextual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">&nbsp; x =3D -2.0=
</span><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:standar=
dcontextual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">&nbsp; y =3D&nbsp=
; 0.5</span><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:st=
andardcontextual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">&nbsp; print*,x**=
y</span><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:standa=
rdcontextual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">end program main<=
/span><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:standard=
contextual"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-l=
igatures:standardcontextual">&nbsp;<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-l=
igatures:standardcontextual">I.e., are you wanting the compiler to detect t=
hat a given float is close enough to an integer that the result is real rat=
her than complex?&nbsp;&nbsp; Or are you expecting
 the compiler to convert all such expressions to complex when x is negative=
?<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-l=
igatures:standardcontextual">&nbsp;<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-l=
igatures:standardcontextual">&nbsp;<o:p></o:p></span></p>
<div style=3D"border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><b><span lang=3D"EN-US"=
 style=3D"font-size:12.0pt;color:black">From:
</span></b><span lang=3D"EN-US" style=3D"font-size:12.0pt;color:black">J3 &=
lt;j3-bounces@mailman.j3-fortran.org&gt; on behalf of j3 &lt;j3@mailman.j3-=
fortran.org&gt;<br>
<b>Reply-To: </b>j3 &lt;j3@mailman.j3-fortran.org&gt;<br>
<b>Date: </b>Wednesday, August 23, 2023 at 8:22 AM<br>
<b>To: </b>WG5 &lt;sc22wg5@open-std.org&gt;<br>
<b>Cc: </b>Jeff Hammond &lt;jehammond@nvidia.com&gt;<br>
<b>Subject: </b>[EXTERNAL] [BULK] [J3] [SC22WG5.6473] raising a negative re=
al value to a real power is prohibited</span><span lang=3D"EN-US" style=3D"=
font-size:11.0pt;mso-ligatures:standardcontextual"><o:p></o:p></span></p>
</div>
<div>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:11.0pt">&nbsp;<span style=3D"mso-ligatures:standardcontext=
ual"><o:p></o:p></span></span></p>
</div>
<table class=3D"MsoNormalTable" border=3D"1" cellspacing=3D"0" cellpadding=
=3D"0" align=3D"left" width=3D"100%" style=3D"width:100.0%;border:solid bla=
ck 1.5pt">
<tbody>
<tr>
<td width=3D"100%" style=3D"width:100.0%;border:none;background:#FFEB9C;pad=
ding:3.75pt 3.75pt 3.75pt 3.75pt">
<p class=3D"MsoNormal" style=3D"mso-element:frame;mso-element-frame-hspace:=
2.25pt;mso-element-wrap:around;mso-element-anchor-vertical:paragraph;mso-el=
ement-anchor-horizontal:column;mso-height-rule:exactly">
<b><span style=3D"color:black">CAUTION:</span></b><span style=3D"font-size:=
11.0pt;color:black">
</span><span style=3D"color:black">This email originated from outside of NA=
SA.&nbsp; Please take care when clicking links or opening attachments.&nbsp=
; Use the &quot;Report Message&quot; button to report suspicious messages t=
o the NASA&nbsp;SOC.</span><span style=3D"font-size:11.0pt;color:black">
</span><span style=3D"font-size:11.0pt;mso-ligatures:standardcontextual"><o=
:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class=3D"MsoNormal" style=3D"mso-margin-top-alt:0cm;margin-right:0cm;mar=
gin-bottom:12.0pt;margin-left:36.0pt">
<span lang=3D"EN-US" style=3D"font-size:11.0pt"><br>
<br>
<br>
<span style=3D"mso-ligatures:standardcontextual"><o:p></o:p></span></span><=
/p>
<div>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">Do I understand t=
he following text correctly, that is, that the following program is prohibi=
ted, even though it perfectly well-defined
 mathematically?</span><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-l=
igatures:standardcontextual"><o:p></o:p></span></p>
<p style=3D"margin-left:36.0pt"><span lang=3D"EN-US" style=3D"font-size:12.=
0pt">=93</span><b><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-famil=
y:&quot;LMSans10&quot;,serif">10.1.5.2.4 Evaluation of numeric intrinsic op=
erations
</span></b><span lang=3D"EN-US"><o:p></o:p></span></p>
<p style=3D"margin-left:36.0pt"><span lang=3D"EN-US" style=3D"font-size:10.=
0pt;font-family:&quot;LMRoman10&quot;,serif">The execution of any numeric o=
peration whose result is not defined by the arithmetic used by the processo=
r is prohibited. Raising a negative real value to
 a real power is prohibited.=94</span><span lang=3D"EN-US"><o:p></o:p></spa=
n></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">program main</spa=
n><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:standardcont=
extual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">&nbsp; implicit n=
one</span><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:stan=
dardcontextual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">&nbsp; real :: x,=
 y</span><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:stand=
ardcontextual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">&nbsp; x =3D -2.0=
</span><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:standar=
dcontextual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">&nbsp; y =3D&nbsp=
; 2.0</span><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:st=
andardcontextual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">&nbsp; print*,x**=
y</span><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:standa=
rdcontextual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">end program main<=
/span><span lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:standard=
contextual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">&nbsp;</span><spa=
n lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:standardcontextual=
"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">The first sentenc=
e is completely reasonable and seems sufficient to cover the problematic ca=
ses.&nbsp; I do not understand why the second
 sentence is necessary.</span><span lang=3D"EN-US" style=3D"font-size:11.0p=
t;mso-ligatures:standardcontextual"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">&nbsp;</span><spa=
n lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:standardcontextual=
"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">Thanks,</span><sp=
an lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:standardcontextua=
l"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">&nbsp;</span><spa=
n lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:standardcontextual=
"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-left:36.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:12.0pt;mso-ligatures:standardcontextual">Jeff</span><span =
lang=3D"EN-US" style=3D"font-size:11.0pt;mso-ligatures:standardcontextual">=
<o:p></o:p></span></p>
</div>
</div>
</div>
</div>
</div>
</body>
</html>

--_000_DM6PR12MB3130C2CE5183124D5560F08ACB1CADM6PR12MB3130namp_--
