@@ -366,11 +366,12 @@ static zend_result zend_create_closure_from_callable(zval *return_value, zval *c
366366
367367 memset (& call , 0 , sizeof (zend_internal_function ));
368368 call .type = ZEND_INTERNAL_FUNCTION ;
369- call .fn_flags = mptr -> common .fn_flags & ZEND_ACC_STATIC ;
369+ call .fn_flags = mptr -> common .fn_flags & ( ZEND_ACC_STATIC | ZEND_ACC_DEPRECATED ) ;
370370 call .handler = zend_closure_call_magic ;
371371 call .function_name = mptr -> common .function_name ;
372372 call .scope = mptr -> common .scope ;
373373 call .doc_comment = NULL ;
374+ call .attributes = mptr -> common .attributes ;
374375
375376 zend_free_trampoline (mptr );
376377 mptr = (zend_function * ) & call ;
@@ -876,14 +877,15 @@ void zend_closure_from_frame(zval *return_value, zend_execute_data *call) { /* {
876877
877878 memset (& trampoline , 0 , sizeof (zend_internal_function ));
878879 trampoline .type = ZEND_INTERNAL_FUNCTION ;
879- trampoline .fn_flags = mptr -> common .fn_flags & (ZEND_ACC_STATIC | ZEND_ACC_VARIADIC | ZEND_ACC_RETURN_REFERENCE );
880+ trampoline .fn_flags = mptr -> common .fn_flags & (ZEND_ACC_STATIC | ZEND_ACC_VARIADIC | ZEND_ACC_RETURN_REFERENCE | ZEND_ACC_DEPRECATED );
880881 trampoline .handler = zend_closure_call_magic ;
881882 trampoline .function_name = mptr -> common .function_name ;
882883 trampoline .scope = mptr -> common .scope ;
883884 trampoline .doc_comment = NULL ;
884885 if (trampoline .fn_flags & ZEND_ACC_VARIADIC ) {
885886 trampoline .arg_info = trampoline_arg_info ;
886887 }
888+ trampoline .attributes = mptr -> common .attributes ;
887889
888890 zend_free_trampoline (mptr );
889891 mptr = (zend_function * ) & trampoline ;
0 commit comments