Implement appropriate behavior for KindOfClass
commit0724f6199b9d56802394cdd68c22bf06e515b1d3
authorZhengxu Chen <zhxchen17@fb.com>
Wed, 25 Jul 2018 17:02:28 +0000 (25 10:02 -0700)
committerHhvm Bot <hhvm-bot@users.noreply.github.com>
Wed, 25 Jul 2018 17:17:55 +0000 (25 10:17 -0700)
treed427f3a1cb1bf9b8bac65e583f8d19e766195a20
parent18b72b626d66d542abdca69b4335f459016ac02f
Implement appropriate behavior for KindOfClass

Summary: For now in most cases we want to coerce KindOfClass data to String like values. Some more subtle operations, like apc on class pointers are not allowed at this point.

Reviewed By: swtaarrs

Differential Revision: D8812557

fbshipit-source-id: a92d98d81afa94d5a5447c3dc791e779ec60289a
22 files changed:
hphp/hhbbc/type-system.cpp
hphp/runtime/base/builtin-functions.cpp
hphp/runtime/base/runtime-option.h
hphp/runtime/base/tv-arith.cpp
hphp/runtime/base/tv-comparisons.cpp
hphp/runtime/base/tv-conversions-inl.h
hphp/runtime/base/tv-conversions.cpp
hphp/runtime/base/type-structure-helpers.cpp
hphp/runtime/base/type-variant.cpp
hphp/runtime/base/type-variant.h
hphp/runtime/base/variable-serializer.cpp
hphp/runtime/base/variable-serializer.h
hphp/runtime/ext/reflection/ext_reflection.cpp
hphp/runtime/vm/bytecode.cpp
hphp/runtime/vm/class-inl.h
hphp/runtime/vm/class.h
hphp/runtime/vm/jit/irgen-types.cpp
hphp/runtime/vm/jit/irlower-internal-inl.h
hphp/runtime/vm/jit/translator-runtime.cpp
hphp/runtime/vm/member-operations.h
hphp/runtime/vm/native.cpp
hphp/runtime/vm/native.h