Enforce modularity boundaries for classesnightly-2022.08.09
commit7a907150a43d75f36bd1045cff0f5368bc0c04d8
authorOguz Ulgen <oulgen@fb.com>
Tue, 9 Aug 2022 01:16:14 +0000 (8 18:16 -0700)
committerFacebook GitHub Bot <facebook-github-bot@users.noreply.github.com>
Tue, 9 Aug 2022 01:16:14 +0000 (8 18:16 -0700)
tree5f74df00bbdb215b69938a7142fd43f94fa5076f
parent180ec5857ba3a70be1171362e86536c6591da4a5
Enforce modularity boundaries for classes

Summary:
This diff adds modularity boundary violation for
* class pointers
* lazy classes
* class portion of static function calls

Reviewed By: arnabde03

Differential Revision: D38215322

fbshipit-source-id: a40219bfa70f1b2a2b6c340adef8eb00aba57a62
20 files changed:
hphp/doc/ir.specification
hphp/runtime/vm/bytecode.cpp
hphp/runtime/vm/class.cpp
hphp/runtime/vm/class.h
hphp/runtime/vm/jit/irgen-call.cpp
hphp/runtime/vm/jit/irlower-call.cpp
hphp/runtime/vm/preclass.h
hphp/test/slow/modules/basic-1.inc
hphp/test/slow/modules/basic-1.php
hphp/test/slow/modules/basic-1.php.expectf
hphp/test/slow/modules/basic-throw-1.php
hphp/test/slow/modules/basic-throw-1.php.expect
hphp/test/slow/modules/resolve-1.inc
hphp/test/slow/modules/resolve-1.inc1
hphp/test/slow/modules/resolve-1.php
hphp/test/slow/modules/resolve-1.php.expectf
hphp/test/slow/modules/resolve-2.php.expectf
hphp/test/slow/modules/resolve-throw-1.php
hphp/test/slow/modules/resolve-throw-1.php.expectf
hphp/test/slow/modules/resolve-throw-2.php.expectf