wordpress-develop/src/wp-includes/Text
Sergey Biryukov 0746cc7324 Code Modernization: Explicitly declare all properties in Text_Diff_Engine_native.
Dynamic (non-explicitly declared) properties are deprecated as of PHP 8.2 and are expected to become a fatal error in PHP 9.0.

There are a number of ways to mitigate this:
* If it is an accidental typo for a declared property: fix the typo.
* For known properties: declare them on the class.
* For unknown properties: add the magic `__get()`, `__set()`, et al. methods to the class or let the class extend `stdClass` which has highly optimized versions of these magic methods built in.
* For unknown ''use'' of dynamic properties, the `#[AllowDynamicProperties]` attribute can be added to the class. The attribute will automatically be inherited by child classes.

In this case, the properties, as used in the class methods, fall in the “known property” category.

Reference: [https://wiki.php.net/rfc/deprecate_dynamic_properties PHP RFC: Deprecate dynamic properties].

Follow-up to [53942], [53948], [53949], [53952], [53953], [53954], [53957], [54037].

Props jrf, thomask.
See #58298.

git-svn-id: https://develop.svn.wordpress.org/trunk@55752 602fd350-edb4-49c9-b593-d223f7449a82
2023-05-12 08:49:13 +00:00
..
Diff Code Modernization: Explicitly declare all properties in Text_Diff_Engine_native. 2023-05-12 08:49:13 +00:00
Diff.php External Libraries: Update license URL in Text_Diff library. 2023-05-01 11:04:12 +00:00