Fix overloading issues with Variant::nullInit
commitf5387771e60f84b99462e6ee25f0d0ef4605604a
authormwilliams <mwilliams@fb.com>
Mon, 3 Jun 2013 17:37:02 +0000 (3 10:37 -0700)
committerSara Golemon <sgolemon@fb.com>
Tue, 4 Jun 2013 06:54:36 +0000 (3 23:54 -0700)
tree8b92ebcb64eebb1f1a7f5f7bc5f99cff4a5af370
parentcdc4a8eee5304989264284e081ba6a6d44abce69
Fix overloading issues with Variant::nullInit

After Variant::Variant(NullInit) was made explicit, passing
Variant::nullInit to a function expecting CVarRef, or Variant
would actually call Variant(0), with ensuing hilarity.

Make NullInit an enum class to prevent such issues.
hphp/compiler/analysis/emitter.cpp
hphp/compiler/statement/method_statement.cpp
hphp/runtime/base/array/policy_array.cpp
hphp/runtime/base/object_data.cpp
hphp/runtime/base/type_variant.cpp
hphp/runtime/base/type_variant.h
hphp/runtime/ext/ext_class.cpp
hphp/runtime/ext/ext_continuation.cpp