Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:88454 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 34201 invoked from network); 23 Sep 2015 20:39:40 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 23 Sep 2015 20:39:40 -0000 Authentication-Results: pb1.pair.com smtp.mail=sean@siobud.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=sean@siobud.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain siobud.com designates 104.236.58.159 as permitted sender) X-PHP-List-Original-Sender: sean@siobud.com X-Host-Fingerprint: 104.236.58.159 siobud.com Received: from [104.236.58.159] ([104.236.58.159:15341] helo=siobud.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 60/00-33598-B0E03065 for ; Wed, 23 Sep 2015 16:39:39 -0400 Received: from 3006.local (c-73-8-76-141.hsd1.il.comcast.net [73.8.76.141]) by siobud.com (Postfix) with ESMTPSA id 1351AD7CED for ; Wed, 23 Sep 2015 20:39:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=siobud.com; s=mail; t=1443040777; bh=2zOxa6sZgEh9Go/2Q74Gm7g63hWbSg5gIva7T1XA+34=; h=Date:From:To:Subject; b=HO4pe0sv2zyWrMVWnKi8zLOrjQvlUGprlRiEpTffNvgLH77zD8g81KGabmeJSjG0I EhX0xi4Fymi7zFsUW1gHSCQjqnrlo0Z7W0i7dZt9faGMx4yYJfQOD/N3IM+XRgwji2 LfVBrxOMaRFp/Qg7fK4aXqJtRUOGQluHjSZEkx50= Date: Wed, 23 Sep 2015 15:39:39 -0500 To: internals@lists.php.net Message-ID: <20150923203939.GA40539@3006.local> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.23 (2014-03-12) Subject: zend_parse_parameters changes not fully documented in phpng-upgrading, PR to fix existing tools From: sean@siobud.com (Sean DuBois) Hey list, 'l' had a change 'long' -> 'zend_long' and 's' had a change 'int' -> 'size_t'. These two changes are really hard to catch when porting an extension, nothing complains at compile time, you don't get segfaults when calling zend_parse* but usually later and it is platform dependent (Windows for me when porting phpredis) I am lucky that I had a developer (Jan-E) help me with this, or I would have pushed the extension out the door broken for many people. A.) Can someone merge https://github.com/php/php-src/pull/1521 this is currently the only solution I know of to catch these things in an automated way B.) Can someone give me access to https://wiki.php.net/phpng-upgrading so I can document this C.) Has there ever been a conversation about improving extension building so that authors don't have to go out of their way to catch these things? I would really like to see phpize kick out a Makefile that in the process of building/testing would raise alerts about this.