Stop treating self::class in traits specially.
commitdd75b2dae109117f87b968beccca25c070a2e077
authorAlexey Toptygin <alexeyt@fb.com>
Fri, 8 Mar 2019 03:11:28 +0000 (7 19:11 -0800)
committerHhvm Bot <hhvm-bot@users.noreply.github.com>
Fri, 8 Mar 2019 03:14:51 +0000 (7 19:14 -0800)
treec795e21015990bc2c0c9fab031167d2391212b60
parentf5379627ccd7a8a0ff540286bdd69defacbc5703
Stop treating self::class in traits specially.

Summary: self::class in traits was being emitted as a string with the trait name. We want it to behave like __CLASS__ (and how get_class with no args did) and return the name of the using class. Make it so.

Reviewed By: oulgen

Differential Revision: D14328350

fbshipit-source-id: 058f08dac8cc76c7ec90d85babea97aa6fa6e31f
hphp/hack/src/hhbc/emit_expression.ml
hphp/test/slow/parser/colon_colon_class.php
hphp/test/slow/parser/colon_colon_class.php.expect
hphp/test/slow/traits/__class__.php.expect
hphp/test/slow/traits/self_class_name.php
hphp/test/slow/traits/self_class_name.php.expect