1--TEST-- 2Bug #81226: Integer overflow behavior is different with JIT enabled 3--INI-- 4opcache.enable=1 5opcache.enable_cli=1 6opcache.jit_buffer_size=1M 7opcache.jit=tracing 8--SKIPIF-- 9<?php require_once('skipif.inc'); ?> 10<?php if (PHP_INT_SIZE != 8) die("skip: 64-bit only"); ?> 11--FILE-- 12<?php 13// 65-bit hexadecimal number 14$hex = '10000000000000041'; 15 16for ($i = 0; $i < 200; ++$i) { 17 $characterReferenceCode = 0; 18 19 for ($j = 0, $len = strlen($hex); $j < $len; ++$j) { 20 $characterReferenceCode *= 16; 21 $characterReferenceCode += ord($hex[$j]) - 0x0030; 22 } 23 24 assert($characterReferenceCode > 0x10FFFF); 25} 26?> 27OK 28--EXPECT-- 29OK 30