Page MenuHomePhabricator

Add a linter rule for incorrect use of parent scope
ClosedPublic

Authored by joshuaspence on Apr 15 2015, 10:56 AM.
Tags
None
Referenced Files
F19539640: D12420.id30871.diff
Jan 21 2026, 8:58 PM
F19521453: D12420.id.diff
Jan 16 2026, 10:26 PM
F19518066: D12420.diff
Jan 15 2026, 5:22 PM
F18876520: D12420.id30873.diff
Nov 6 2025, 1:31 AM
F18873841: D12420.id29828.diff
Nov 5 2025, 11:40 AM
F18857947: D12420.id30873.diff
Nov 1 2025, 7:07 PM
F18809954: D12420.id30871.diff
Oct 19 2025, 6:25 PM
F18769395: D12420.id.diff
Oct 8 2025, 7:28 AM
Subscribers

Details

Summary

The following code is invalid:

final class MyClass {
  public function __construct() {
    parent::__construct(null);
  }
}

$x = new MyClass();

Running the above code will produce a fatal error:

PHP Fatal error:  Cannot access parent:: when current class scope has no parent
Test Plan

Added unit tests.

Diff Detail

Repository
rARC Arcanist
Branch
master
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 5969
Build 5989: [Placeholder Plan] Wait for 30 Seconds