|  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #77566 void type is not covariant to mixed
Submitted: 2019-02-04 14:27 UTC Modified: -
Avg. Score:1.0 ± 0.0
Reproduced:0 of 0 (0.0%)
From: Wes dot nospam at example dot org Assigned:
Status: Open Package: *General Issues
PHP Version: Irrelevant OS: Irrelevant
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If this is not your bug, you can add a comment by following this link.
If this is your bug, but you forgot your password, you can retrieve your password here.
Bug Type:
From: Wes dot nospam at example dot org
New email:
PHP Version: OS:


 [2019-02-04 14:27 UTC] Wes dot nospam at example dot org
Going from "has a return value" to "no return value" is certainly not a valid covariant substitution (at least in theory, in practice void is null).

The void RFC doesn't cover the case at all.

It is not unlikely that this is currently allowed by accident.

Thank you.

Test script:

class Foo
    public function aaa(){}

class Bar extends Foo
    public function aaa(): void{}

Expected result:

Actual result:
No error


Add a Patch

Pull Requests

Add a Pull Request

PHP Copyright © 2001-2021 The PHP Group
All rights reserved.
Last updated: Tue Sep 28 12:03:37 2021 UTC