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