Reviewers: ulan,

Description:
Fix more windows build warnings.

[email protected]
BUG=


Please review this at https://chromiumcodereview.appspot.com/10917065/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M src/api.cc
  M test/cctest/test-api.cc


Index: src/api.cc
diff --git a/src/api.cc b/src/api.cc
index c8d5a9c19054aa02c5a73e24a10b58101c0f420f..bbed6107880b3e7ecef39d279dc40c937b28edf9 100644
--- a/src/api.cc
+++ b/src/api.cc
@@ -4943,15 +4943,17 @@ Local<String> v8::String::NewExternal(ExternalLatin1StringResource* resource,
   ENTER_V8(isolate);
   ASSERT((encoding & kStringEncodingMask) == LATIN1_ENCODING);
   CHECK(resource && resource->data());
-  bool ascii_hint = (encoding & kAsciiHintMask);
+  int ascii_hint = (encoding & kAsciiHintMask);
   i::Handle<i::String> result;

   if (ascii_hint == ASCII_HINT ||
       (ascii_hint != NOT_ASCII_HINT &&
-      i::String::IsAscii(resource->data(), resource->length()))) {
+       i::String::IsAscii(resource->data(),
+                          static_cast<int>(resource->length())))) {
     // Assert that the ascii hint is correct.
     ASSERT(ascii_hint != ASCII_HINT ||
-           i::String::IsAscii(resource->data(), resource->length()));
+           i::String::IsAscii(resource->data(),
+                              static_cast<int>(resource->length())));
     result = NewExternalAsciiStringHandle(isolate, resource);
     isolate->heap()->external_string_table()->AddString(*result);
   } else {
@@ -4959,7 +4961,8 @@ Local<String> v8::String::NewExternal(ExternalLatin1StringResource* resource, // since it's not. Instead, we convert it to an internal string and dispose
     // the external resource.
     result = isolate->factory()->NewStringFromLatin1(
-        i::Vector<const char>(resource->data(), resource->length()),
+        i::Vector<const char>(resource->data(),
+                              static_cast<int>(resource->length())),
         i::NOT_TENURED,
         i::String::NOT_ASCII);
     resource->Dispose();
Index: test/cctest/test-api.cc
diff --git a/test/cctest/test-api.cc b/test/cctest/test-api.cc
index 4e1948630e0568655a1ff0fc9090416400373a0a..9b0279126df051d69f7397086b7c89d423f1c3c2 100644
--- a/test/cctest/test-api.cc
+++ b/test/cctest/test-api.cc
@@ -717,10 +717,10 @@ TEST(ExternalStringWithDisposeHandling) {
 static void TestNewLatin1String(int encoding1, int encoding2) {
   const char* chars1 = "ASCII 123";
   const char* chars1js = "'ASCII 123'";
-  int str1_len = strlen(chars1);
+  int str1_len = static_cast<int>(strlen(chars1));
   const char* chars2 = "Non-ASCII \xAB\xCD\xEF";
   const char* chars2js = "'Non-ASCII \\u00ab\\u00cd\\u00ef'";
-  int str2_len = strlen(chars2);
+  int str2_len = static_cast<int>(strlen(chars2));

   Local<String> str1 = String::New(chars1, str1_len, encoding1);
   Local<String> str2 = String::New(chars2, str2_len, encoding2);
@@ -826,17 +826,21 @@ TEST(WriteLatin1String) {
   CHECK(v8::Utils::OpenHandle(*sub_string)->IsSlicedString());

   char buffer[64];
-  CHECK_EQ(strlen(latin1_ascii), latin1_ascii_string->WriteLatin1(buffer));
+  CHECK_EQ(static_cast<int>(strlen(latin1_ascii)),
+           latin1_ascii_string->WriteLatin1(buffer));
   CHECK_EQ(0, strcmp(latin1_ascii, buffer));
-  CHECK_EQ(strlen(latin1), latin1_string->WriteLatin1(buffer));
+  CHECK_EQ(static_cast<int>(strlen(latin1)),
+           latin1_string->WriteLatin1(buffer));
   CHECK_EQ(0, strcmp(latin1, buffer));
-  CHECK_EQ(strlen(concat), concat_string->WriteLatin1(buffer));
+  CHECK_EQ(static_cast<int>(strlen(concat)),
+           concat_string->WriteLatin1(buffer));
   CHECK_EQ(0, strcmp(concat, buffer));
-  CHECK_EQ(strlen(sub), sub_string->WriteLatin1(buffer));
+  CHECK_EQ(static_cast<int>(strlen(sub)),
+           sub_string->WriteLatin1(buffer));
   CHECK_EQ(0, strcmp(sub, buffer));

   memset(buffer, 0x1, sizeof(buffer));
-  CHECK_EQ(strlen(latin1),
+  CHECK_EQ(static_cast<int>(strlen(latin1)),
            latin1_string->WriteLatin1(buffer,
                                       0,
                                       String::kUndefinedLength,
@@ -846,7 +850,7 @@ TEST(WriteLatin1String) {
   buffer[strlen(latin1)] = '\0';
   CHECK_EQ(0, strcmp(latin1, buffer));

-  CHECK_EQ(strlen(latin1) - 2,
+  CHECK_EQ(static_cast<int>(strlen(latin1)) - 2,
            latin1_string->WriteLatin1(buffer, 2));
   CHECK_EQ(0, strncmp(latin1 + 2, buffer, strlen(latin1)));
 }


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to