Permalink
Browse files

Fix clang narrowing error in GroupVarintTables

Summary:
The __m128i type is a pair of 64-bit signed ints and the values
generated in generate_varint_tables.py overflow this range, which
causes clang to complain.

Test Plan:
Built and ran unittests.  Also verified that the GroupVarintTable.o
data section was identical with and w/o this change.

Reviewed By: tudorb@fb.com

FB internal diff: D494645
  • Loading branch information...
1 parent ff884b6 commit 2ec852705e5b65f11d8f4488ba22f89ae4246062 @andrewjcg andrewjcg committed with tudor Jun 14, 2012
Showing with 2 additions and 1 deletion.
  1. +2 −1 folly/build/generate_varint_tables.py
View
3 folly/build/generate_varint_tables.py
@@ -73,7 +73,8 @@ def generate(f):
# 0xff: set corresponding byte in result to 0
for k in range(d, 4):
vals[j] |= 0xff << (8 * k)
- f.write(" {{0x{1:08x}{0:08x}LL, 0x{3:08x}{2:08x}LL}},\n".format(*vals))
+ f.write(" {{static_cast<int64_t>(0x{1:08x}{0:08x}), "
+ "static_cast<int64_t>(0x{3:08x}{2:08x})}},\n".format(*vals))
f.write("};\n"
"\n"

0 comments on commit 2ec8527

Please sign in to comment.