I copied a 4.4.2 site over into an instance of php 7.1 and noticed a couple of issues.
1.
You can't use "$this" in fn.promotions.php's fn_promotions_shippings. It crashes saying you can't use '$this' as a function argument. Changing it to $promo seems to have no effect on functionality.
Anyhow $this has special meaning at least in classes so it's a confusing name regardless.
2.
fn.common.php sets $schema = '' in fn_get_schema(). Why is this? Is it an array or a string.
With cs-cart 4.4.2 / php 7.1 I received "Cannot use string offset as an array" but only for discussions/schemas/seo/canonical_urls.php.
If we change $schema = array() in fn.common.php the error goes away.