Fix MSVC "value may be truncated" warnings. (by pkasting@)
git-svn-id: https://cld2.googlecode.com/svn/trunk@168 b252ecd4-b096-bf77-eb8e-91563289f87e
diff --git a/internal/cldutil.cc b/internal/cldutil.cc
index ecda9a5..d73ec5a 100644
--- a/internal/cldutil.cc
+++ b/internal/cldutil.cc
@@ -599,7 +599,8 @@
if (ratio <= kRatio100) {return 100;}
if (ratio > kRatio0) {return 0;}
- int percent_good = 100.0 * (kRatio0 - ratio) / (kRatio0 - kRatio100);
+ int percent_good =
+ static_cast<int>(100.0 * (kRatio0 - ratio) / (kRatio0 - kRatio100));
return percent_good;
}
diff --git a/internal/cldutil_shared.h b/internal/cldutil_shared.h
index 5e3b8df..af3d9e6 100644
--- a/internal/cldutil_shared.h
+++ b/internal/cldutil_shared.h
@@ -392,7 +392,7 @@
uint32* subscr, uint32* hashkey) {
uint32 temp = (longwordhash + (longwordhash >> 12)) & (bucketcount - 1);
*subscr = temp;
- temp = longwordhash >> 4;
+ temp = static_cast<uint32>(longwordhash >> 4);
*hashkey = temp & keymask;
}
diff --git a/internal/getonescriptspan.cc b/internal/getonescriptspan.cc
index 6bdd487..451249c 100644
--- a/internal/getonescriptspan.cc
+++ b/internal/getonescriptspan.cc
@@ -253,13 +253,13 @@
// 1 char 00-7F
c = *rune;
if(c <= 0x7F) {
- str[0] = c;
+ str[0] = static_cast<char>(c);
return 1;
}
// 2 char 0080-07FF
if(c <= 0x07FF) {
- str[0] = 0xC0 | (c >> 1*6);
+ str[0] = 0xC0 | static_cast<char>(c >> 1*6);
str[1] = 0x80 | (c & 0x3F);
return 2;
}
@@ -271,14 +271,14 @@
// 3 char 0800-FFFF
if (c <= 0xFFFF) {
- str[0] = 0xE0 | (c >> 2*6);
+ str[0] = 0xE0 | static_cast<char>(c >> 2*6);
str[1] = 0x80 | ((c >> 1*6) & 0x3F);
- str[2] = 0x80 | (c & 0x3F);
+ str[2] = 0x80 | (c & 0x3F);
return 3;
}
// 4 char 10000-1FFFFF
- str[0] = 0xF0 | (c >> 3*6);
+ str[0] = 0xF0 | static_cast<char>(c >> 3*6);
str[1] = 0x80 | ((c >> 2*6) & 0x3F);
str[2] = 0x80 | ((c >> 1*6) & 0x3F);
str[3] = 0x80 | (c & 0x3F);
diff --git a/internal/scoreonescriptspan.cc b/internal/scoreonescriptspan.cc
index b2cebc0..887e78b 100644
--- a/internal/scoreonescriptspan.cc
+++ b/internal/scoreonescriptspan.cc
@@ -184,7 +184,7 @@
int DiffScore(const CLD2TableSummary* obj, int indirect,
- uint16 lang1, uint16 lang2) {
+ uint8 lang1, uint8 lang2) {
if (indirect < static_cast<int>(obj->kCLDTableSizeOne)) {
// Up to three languages at indirect
uint32 langprob = obj->kCLDTableInd[indirect];
@@ -669,7 +669,7 @@
int BetterBoundary(const char* text,
ScoringHitBuffer* hitbuffer,
ScoringContext* scoringcontext,
- uint16 pslang0, uint16 pslang1,
+ uint8 pslang0, uint8 pslang1,
int linear0, int linear1, int linear2) {
// Degenerate case, no change
if ((linear2 - linear0) <= 8) {return linear1;}
diff --git a/internal/tote.cc b/internal/tote.cc
index fbaba7d..1573da8 100644
--- a/internal/tote.cc
+++ b/internal/tote.cc
@@ -236,7 +236,7 @@
value_[sub] = value_[sub2];
value_[sub2] = tmpv;
- double tmps = score_[sub];
+ int tmps = score_[sub];
score_[sub] = score_[sub2];
score_[sub2] = tmps;