File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / tests / lang / operators / preinc_basiclong_64bit.phpt
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue Feb 21 23:48:06 2012 UTC (12 years, 5 months ago) by misho
Branches: php, MAIN
CVS tags: v5_4_3elwix, v5_4_29p0, v5_4_29, v5_4_20p0, v5_4_20, v5_4_17p0, v5_4_17, v5_3_10, HEAD
php

    1: --TEST--
    2: Test ++N operator : 64bit long tests
    3: --SKIPIF--
    4: <?php
    5: if (PHP_INT_SIZE != 8) die("skip this test is for 64bit platform only");
    6: ?>
    7: --FILE--
    8: <?php
    9:  
   10: define("MAX_64Bit", 9223372036854775807);
   11: define("MAX_32Bit", 2147483647);
   12: define("MIN_64Bit", -9223372036854775807 - 1);
   13: define("MIN_32Bit", -2147483647 - 1);
   14: 
   15: $longVals = array(
   16:     MAX_64Bit, MIN_64Bit, MAX_32Bit, MIN_32Bit, MAX_64Bit - MAX_32Bit, MIN_64Bit - MIN_32Bit,
   17:     MAX_32Bit + 1, MIN_32Bit - 1, MAX_32Bit * 2, (MAX_32Bit * 2) + 1, (MAX_32Bit * 2) - 1, 
   18:     MAX_64Bit -1, MAX_64Bit + 1, MIN_64Bit + 1, MIN_64Bit - 1
   19: );
   20: 
   21: 
   22: foreach ($longVals as $longVal) {
   23:    echo "--- testing: $longVal ---\n";
   24:    var_dump(++$longVal);
   25: }
   26:    
   27: ?>
   28: ===DONE===
   29: --EXPECT--
   30: --- testing: 9223372036854775807 ---
   31: float(9.2233720368548E+18)
   32: --- testing: -9223372036854775808 ---
   33: int(-9223372036854775807)
   34: --- testing: 2147483647 ---
   35: int(2147483648)
   36: --- testing: -2147483648 ---
   37: int(-2147483647)
   38: --- testing: 9223372034707292160 ---
   39: int(9223372034707292161)
   40: --- testing: -9223372034707292160 ---
   41: int(-9223372034707292159)
   42: --- testing: 2147483648 ---
   43: int(2147483649)
   44: --- testing: -2147483649 ---
   45: int(-2147483648)
   46: --- testing: 4294967294 ---
   47: int(4294967295)
   48: --- testing: 4294967295 ---
   49: int(4294967296)
   50: --- testing: 4294967293 ---
   51: int(4294967294)
   52: --- testing: 9223372036854775806 ---
   53: int(9223372036854775807)
   54: --- testing: 9.2233720368548E+18 ---
   55: float(9.2233720368548E+18)
   56: --- testing: -9223372036854775807 ---
   57: int(-9223372036854775806)
   58: --- testing: -9.2233720368548E+18 ---
   59: float(-9.2233720368548E+18)
   60: ===DONE===

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>