Skip to content

MIR0716

ReadonlyClassExtendsMismatch

A readonly class extends a non-readonly class. In PHP, a readonly class can only extend another readonly class.

<?php
class Base {
public string $name;
}
readonly class Child extends Base { // Error: cannot extend non-readonly class
public string $value;
}

Make the parent class readonly as well:

<?php
readonly class Base {
public string $name;
}
readonly class Child extends Base {
public string $value;
}