From 75e43a6681e01de9422a0211f502723d23b51247 Mon Sep 17 00:00:00 2001 From: saper Date: Tue, 11 Aug 2015 00:48:49 -0700 Subject: [PATCH] Use static_cast<> for NULL (clang 3.7) The following errors come up when compiling v8 with clang 3.7 on FreeBSD/amd64: src/runtime/runtime-i18n.cc:629:37: error: reinterpret_cast from 'nullptr_t' to 'v8::internal::Smi *' is not allowed local_object->SetInternalField(1, reinterpret_cast(NULL)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ test/cctest/test-heap.cc:131:20: error: reinterpret_cast from 'nullptr_t' to 'v8::internal::Object *' is not allowed Handle n(reinterpret_cast(NULL), isolate); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ test/cctest/test-heap.cc:1989:18: error: reinterpret_cast from 'nullptr_t' to 'Address' (aka 'unsigned char *') is not allowed Address base = reinterpret_cast
(NULL); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +add myself to the AUTHORS file. BUG= Review URL: https://codereview.chromium.org/1277353002 Cr-Commit-Position: refs/heads/master@{#30103} --- AUTHORS | 1 + src/runtime/runtime-i18n.cc | 2 +- test/cctest/test-heap.cc | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/AUTHORS b/AUTHORS index c04aa16..72c23bc 100644 --- a/AUTHORS +++ b/AUTHORS @@ -70,6 +70,7 @@ Kang-Hao (Kenny) Lu Luis Reis Luke Zarko Maciej Małecki +Marcin Cieślak Mathias Bynens Matt Hanselman Matthew Sporleder diff --git a/src/runtime/runtime-i18n.cc b/src/runtime/runtime-i18n.cc index 18e9aee..3da71a9 100644 --- a/src/runtime/runtime-i18n.cc +++ b/src/runtime/runtime-i18n.cc @@ -626,7 +626,7 @@ RUNTIME_FUNCTION(Runtime_CreateBreakIterator) { local_object->SetInternalField(0, reinterpret_cast(break_iterator)); // Make sure that the pointer to adopted text is NULL. - local_object->SetInternalField(1, reinterpret_cast(NULL)); + local_object->SetInternalField(1, static_cast(nullptr)); Factory* factory = isolate->factory(); Handle key = factory->NewStringFromStaticChars("breakIterator"); diff --git a/test/cctest/test-heap.cc b/test/cctest/test-heap.cc index e15741c..1f563f9 100644 --- a/test/cctest/test-heap.cc +++ b/test/cctest/test-heap.cc @@ -128,7 +128,7 @@ TEST(HandleNull) { Isolate* isolate = CcTest::i_isolate(); HandleScope outer_scope(isolate); LocalContext context; - Handle n(reinterpret_cast(NULL), isolate); + Handle n(static_cast(nullptr), isolate); CHECK(!n.is_null()); } @@ -1986,7 +1986,7 @@ TEST(TestAlignmentCalculations) { Heap::GetMaximumFillToAlign(kSimd128Unaligned); CHECK_EQ(maximum_simd128_misalignment, max_simd128_unaligned_fill); - Address base = reinterpret_cast
(NULL); + Address base = static_cast
(NULL); int fill = 0; // Word alignment never requires fill. -- 2.7.4