1--TEST-- 2JIT ASSIGN_OBJ: Assign undefined vatiable to property 3--INI-- 4opcache.enable=1 5opcache.enable_cli=1 6opcache.file_update_protection=0 7opcache.jit_buffer_size=1M 8--FILE-- 9<?php 10class Node { 11 public $previous; 12 public $next; 13} 14 15function xxx() { 16 $firstNode = new Node(); 17// $firstNode->previous = $firstNode; 18 $firstNode->next = $firstNode; 19 $circularDoublyLinkedList = null; 20 for ($i = 0; $i < 2; $i++) { 21 $currentNode = $circularDoublyLinkedList; 22 $nextNode = $circularDoublyLinkedList->next; 23 $newNode->next = $undef1->next; // <- ??? 24 $newNode = new Node(); 25 $currentNode->undef2 = new Node(); 26 $circularDoublyLinkedList = $nextNode; 27 } 28} 29 30try { 31 @xxx(); 32} catch (Throwable $e) { 33 echo "Exception: " . $e->getMessage() . "\n"; 34} 35?> 36--EXPECT-- 37Exception: Attempt to assign property "next" on null 38