 +			zend_throw_exception_ex(reflection_exception_ptr, 0 TSRMLS_CC, "Annotation %s['%s'] does not exist", name, define);
 +			return;
 +		}
++		UPDATE_ANNOTATION_CONSTANT(val, ce);
 +		*return_value = **val;
 +	} else {		
++		UPDATE_ANNOTATION_CONSTANT(value, ce);
 +		*return_value = **value;
 +	}
++
 +	zval_copy_ctor(return_value);
 +}
 +/* }}} */

   	ZEND_NULL_HANDLER
   };
   zend_opcode_handlers = (opcode_handler_t*)labels;
@@ -29361,8 +29790,12 @@
 		EX(fbc) = ce->constructor;
 	}
 

 static int zend_init_add_array_helper_SPEC_TMP_UNUSED(ZEND_OPCODE_HANDLER_ARGS)
 {
 	zend_op *opline = EX(opline);
@@ -6488,6 +6725,19 @@
 	return zend_init_add_array_helper_SPEC_TMP_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
 }
 
