Coerce return value of boost::size

The return value type of boost::size for arrays changes signedness between boost-1.49 and boost
1.5x. It is also impossible to synthesize the return type. Since we should compile against both
versions, coercing the return value to int is the simplest solution.