rfc:pack_unpack_64bit_formats

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
rfc:pack_unpack_64bit_formats [2014/09/12 21:23] – created leighrfc:pack_unpack_64bit_formats [2017/09/22 13:28] (current) – external edit 127.0.0.1
Line 1: Line 1:
 ====== 64 bit format codes for pack() and unpack() ====== ====== 64 bit format codes for pack() and unpack() ======
-  * Version: 0.+  * Version: 1.0 
-  * Date: 2014-09-12 (use today's date here) +  * Date: 2014-09-12 
-  * Author: Leigh, leight+php -> gmail +  * Author: leigh@php.net 
-  * Status: Under Discussion+  * Status: Implemented
   * First Published at: https://wiki.php.net/rfc/pack_unpack_64bit_formats   * First Published at: https://wiki.php.net/rfc/pack_unpack_64bit_formats
  
Line 30: Line 30:
 They are ordered such that J < P in the same way that N < V to make it intuitive for developers to remember what the codes mean. They are ordered such that J < P in the same way that N < V to make it intuitive for developers to remember what the codes mean.
  
-No codes have been planned for endian specific unsigned values as PHP does not currently have these for 32 bit systems. The "i" and "I" codes exist, but these are documented as platform-dependant sized integers.+No codes have been planned for endian specific signed values as PHP does not currently have these for 32 bit systems. The "i" and "I" codes exist, but these are documented as platform-dependant sized integers.
  
 On 32 bit builds (with the current patch) these format codes are unavailable and will result in the same warning as usual for invalid format codes. On 32 bit builds (with the current patch) these format codes are unavailable and will result in the same warning as usual for invalid format codes.
Line 42: Line 42:
 ===== RFC Impact ===== ===== RFC Impact =====
 ==== To SAPIs ==== ==== To SAPIs ====
-No impact+All SAPIs are affected equally, gaining access to the new format codes.
  
 ==== To Existing Extensions ==== ==== To Existing Extensions ====
Line 52: Line 52:
 ==== New Constants ==== ==== New Constants ====
 None None
- 
-==== php.ini Defaults ==== 
-Nothing new 
  
 ===== Open Issues ===== ===== Open Issues =====
-Nothing yet+Nothing brought up during discussion phase
  
 ===== Unaffected PHP Functionality ===== ===== Unaffected PHP Functionality =====
-Everything else+The change is constrained to (un)pack, there is not a lot of scope for this to affect any existing functionality, and tests indicate that nothing is measurably broken/
  
-===== Future Scope ===== +===== Vote =====
-Maybe revisit when we have 128bit words. +
- +
-===== Proposed Voting Choices =====+
 50%+1 majority as no core language changes are being made. 50%+1 majority as no core language changes are being made.
 +
 +Voting begins: 2014-09-26
 +
 +Voting ends: 2014-10-03
 +
 +<doodle title="64 bit format codes for pack() and unpack()" auth="leigh" voteType="single" closed="true">
 +   * Yes
 +   * No
 +</doodle>
  
 ===== Patches and Tests ===== ===== Patches and Tests =====
Line 74: Line 77:
  
 ===== Implementation ===== ===== Implementation =====
-TODO+ 
 +Done: [[https://github.com/php/php-src/commit/63fd969300e39302b1f8c600bc24f049a0e13370]]
  
 ===== References ===== ===== References =====
 [[http://perldoc.perl.org/functions/pack.html|Perl pack() documentation]] [[http://perldoc.perl.org/functions/pack.html|Perl pack() documentation]]
  
-===== Rejected Features ===== 
-TODO 
rfc/pack_unpack_64bit_formats.1410556983.txt.gz · Last modified: 2017/09/22 13:28 (external edit)