Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:98263 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 33708 invoked from network); 8 Feb 2017 14:10:16 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 8 Feb 2017 14:10:16 -0000 Authentication-Results: pb1.pair.com smtp.mail=mike.php.net@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=mike.php.net@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.82.50 as permitted sender) X-PHP-List-Original-Sender: mike.php.net@gmail.com X-Host-Fingerprint: 74.125.82.50 mail-wm0-f50.google.com Received: from [74.125.82.50] ([74.125.82.50:38213] helo=mail-wm0-f50.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 5A/23-33872-7C62B985 for ; Wed, 08 Feb 2017 09:10:16 -0500 Received: by mail-wm0-f50.google.com with SMTP id r141so188421860wmg.1 for ; Wed, 08 Feb 2017 06:10:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to; bh=irQb1WhYx+Z7uSTnuI5ZBL19mRvdIbL6cz1c7czXDSI=; b=UvaD/YbQHJjqLXYo3t8Vrx47fyYmSG9b+PGPTc3C7hMGQtwLX5C571YgSEEGuYruIY l77N9pKwN+WAC3oxMTCt8EUGnuMsdjurraCB65U9onB770HWveqH2IIr/rUwJ0lBke3N yv+ARk1HNHRy6DUvoH5/wsNcrX7u+fjH8mb9TVbiG18PVteFwX52miTJqLa7gSenBQ/Y zfky4umJBWtxWq/5Og6hJnFVLVbXna9AFtLG1OLLk6SsuD9aQbKo4xvHIRnUj8twpjbS V9rK0J/OynCJ6PSYGZRRMg+OEQVuoMiOJO5O46EBhaJHAVErHDnIwnBusg9Qmlyjp2Ye LsVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:subject:to:references:cc:from:message-id :date:user-agent:mime-version:in-reply-to; bh=irQb1WhYx+Z7uSTnuI5ZBL19mRvdIbL6cz1c7czXDSI=; b=q+bQYziCIB56TxU7JhirI9SnZzseXMHlJKurbMv1mpK9+W1fnT48BIKymc/O/RHJjn qC1osijdfg5awcBEDh5NpIggVKFTBxs4ygXPRP3PgyFvyfaJcExrPxR+0fnqI2jN8ANF IDoG0+9ci74hVE9Wdb9ZRwxjuvBmzoLulZ38JhqtshmxOhugw//cmf3zywiUQsmdCEtw uZ6cH9FWCEPBkrDthnu4NsYOM/7Ujr4rsNPWSdr1WCgB+G9evmte0AMwSvVDVlpyA/a8 eWQGiZCpwRVSgKFwqC0H+4zQMT2i3V3GnZGcVXWhpym6WCmWyKKM3wg2j+tjf/wVTYzs 9jGg== X-Gm-Message-State: AMke39kEewO7++oeG2skJkY1PEs+J5JCUa39pMR4GyzUTDLkHEAn2VXSwU7IWcPMpvEo/A== X-Received: by 10.28.128.205 with SMTP id b196mr17286829wmd.21.1486563012252; Wed, 08 Feb 2017 06:10:12 -0800 (PST) Received: from [192.168.2.207] (89-104-28-113.customer.bnet.at. [89.104.28.113]) by smtp.googlemail.com with ESMTPSA id j18sm13208298wrb.33.2017.02.08.06.10.11 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 08 Feb 2017 06:10:11 -0800 (PST) Sender: Michael Wallner To: =?UTF-8?Q?Micha=c5=82_Brzuchalski?= References: <15caa5d8-07d1-d76e-974a-c0bb0c4e8126@php.net> Cc: Alex Bowers , PHP Message-ID: <6f8a89b6-efde-e6d7-8c46-3d65b2bf2f71@php.net> Date: Wed, 8 Feb 2017 15:10:10 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="vAs6jm8hA9UMxer4wENPe3GgjqfIx3hd5" Subject: Re: [PHP-DEV] [Discussion] FFI in PHP From: mike@php.net (Michael Wallner) --vAs6jm8hA9UMxer4wENPe3GgjqfIx3hd5 Content-Type: multipart/mixed; boundary="bAen2GpclJfn70vrRapk6p229FNUp3H9i"; protected-headers="v1" From: Michael Wallner To: =?UTF-8?Q?Micha=c5=82_Brzuchalski?= Cc: Alex Bowers , PHP Message-ID: <6f8a89b6-efde-e6d7-8c46-3d65b2bf2f71@php.net> Subject: Re: [PHP-DEV] [Discussion] FFI in PHP References: <15caa5d8-07d1-d76e-974a-c0bb0c4e8126@php.net> In-Reply-To: --bAen2GpclJfn70vrRapk6p229FNUp3H9i Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 08/02/17 14:54, Micha=C5=82 Brzuchalski wrote: > 2017-02-08 12:51 GMT+01:00 Michael Wallner : >=20 >> >> ``` >> // https://github.com/m6w6/ext-psi#implementations >> function math\add(int $a, int $b) : int { >> let a =3D intval($a); >> let b =3D intval($b); >> return to_int(add); >> } >> ``` >> >=20 > What is the purpose of `intval` call if both variables were declared as= int > already? > Also what to_int stands for if we already declared int return type? >=20 While those type casts might seem superfluous for simple functions, marshalling between PHP and C quickly becomes complicated and requiring explicit casts just reduces the possibility of tripping points even if the types match on both sides. Omitting them wouldn't change anything internally, but just bloat the parser. --=20 Regards, Mike --bAen2GpclJfn70vrRapk6p229FNUp3H9i-- --vAs6jm8hA9UMxer4wENPe3GgjqfIx3hd5 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCgAdFiEEHsPHHd1jWDGjN9aESA4+FLCkx8cFAlibJsIACgkQSA4+FLCk x8dV/Qf/SKOwp1BPfIFHnw2K7o8qV07Uhb6oYfZslPbQURZrJwBgGKGQ4VtLQtSW K8jD2+dyShb0tfA5E58leSJHL4te+hs9inZiKMHmCm4Y45c921gAgr3vE0LwijPp 7VzKxEejdXd/hTzGHFPR76aZqszHmiqLNWajAN7GXMilSJwaCzqtI91lczsdcgg8 xPBZQsVychnUlLvmGLNVeyoHJ8dufOVicroOD/3AzaMqVRhoLwR5Om2CrHAAxY0g rv8FQq/G1videJl9lUthfGmIE3HkONM0aRkMBV5rYcYRC5gQjonF2ZT3Fdvvnmto 5L4shaFigX5QmZDf2hs1Piu1Jn5DeA== =KNsR -----END PGP SIGNATURE----- --vAs6jm8hA9UMxer4wENPe3GgjqfIx3hd5--