@@ -2898,18 +2898,16 @@ ZEND_API void zend_add_magic_method(zend_class_entry *ce, zend_function *fptr, z
28982898ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX (arg_info_toString , 0 , 0 , IS_STRING , 0 )
28992899ZEND_END_ARG_INFO ()
29002900
2901- static HashTable * interned_type_tree = NULL ;
2902-
29032901ZEND_API void zend_type_free_interned_trees (void ) {
29042902 zend_type_node * tree = NULL ;
2905- ZEND_HASH_FOREACH_PTR (interned_type_tree , tree ) {
2903+ ZEND_HASH_FOREACH_PTR (CG ( type_trees ) , tree ) {
29062904 if (tree -> kind != ZEND_TYPE_SIMPLE ) {
29072905 pefree (tree -> compound .types , 1 );
29082906 }
29092907 pefree (tree , 1 );
29102908 } ZEND_HASH_FOREACH_END ();
2911- pefree (interned_type_tree , 1 );
2912- interned_type_tree = NULL ;
2909+ pefree (CG ( type_trees ) , 1 );
2910+ CG ( type_trees ) = NULL ;
29132911}
29142912
29152913static int compare_simple_types (const zend_type a , const zend_type b ) {
@@ -3051,12 +3049,12 @@ static zend_type_node *intern_type_node(zend_type_node *node) {
30513049 const zend_ulong hash = zend_type_node_hash (node );
30523050 zend_type_node * existing ;
30533051
3054- if (interned_type_tree == NULL ) {
3055- interned_type_tree = pemalloc (sizeof (HashTable ), 1 );
3056- zend_hash_init (interned_type_tree , 64 , NULL , NULL , 1 );
3052+ if (CG ( type_trees ) == NULL ) {
3053+ CG ( type_trees ) = pemalloc (sizeof (HashTable ), 1 );
3054+ zend_hash_init (CG ( type_trees ) , 64 , NULL , NULL , 1 );
30573055 }
30583056
3059- if ((existing = zend_hash_index_find_ptr (interned_type_tree , hash ))) {
3057+ if ((existing = zend_hash_index_find_ptr (CG ( type_trees ) , hash ))) {
30603058 if (zend_type_node_equals (existing , node )) {
30613059 if (node -> kind != ZEND_TYPE_SIMPLE ) {
30623060 pefree (node -> compound .types , 1 );
@@ -3066,7 +3064,7 @@ static zend_type_node *intern_type_node(zend_type_node *node) {
30663064 }
30673065 }
30683066
3069- zend_hash_index_add_new_ptr (interned_type_tree , hash , node );
3067+ zend_hash_index_add_new_ptr (CG ( type_trees ) , hash , node );
30703068 return node ;
30713069}
30723070
0 commit comments