@@ -310,7 +310,7 @@ class externalvector {
310310 void loadACopy (std::vector<DataType> &buffer, size_t begin,
311311 size_t end) const {
312312 buffer.resize (end - begin);
313- int result = fseek (fd, begin * sizeofdata * sizeof (Type), SEEK_SET);
313+ int result = fseek (fd, ( long )( begin * sizeofdata * sizeof (Type) ), SEEK_SET);
314314 if (result != 0 ) {
315315 std::cerr << " could not seek to " << begin << std::endl;
316316 throw std::runtime_error (" bad seek" );
@@ -335,7 +335,7 @@ class externalvector {
335335 throw std::runtime_error (" file not open" );
336336 }
337337 DataType ans (sizeofdata);
338- int result = fseek (fd, pos * sizeofdata * sizeof (Type), SEEK_SET);
338+ int result = fseek (fd, ( long )( pos * sizeofdata * sizeof (Type) ), SEEK_SET);
339339 if (result != 0 ) {
340340 std::cerr << " could not seek to " << pos << std::endl;
341341 throw std::runtime_error (" bad seek" );
@@ -367,7 +367,7 @@ class externalvector {
367367 }
368368
369369 void copyAt (const std::vector<DataType> &buffer, size_t begin) {
370- int result = fseek (fd, begin * sizeofdata * sizeof (Type), SEEK_SET);
370+ int result = fseek (fd, ( long )( begin * sizeofdata * sizeof (Type) ), SEEK_SET);
371371 if (result != 0 ) {
372372 std::cerr << " could not seek to " << begin << std::endl;
373373 throw std::runtime_error (" bad seek" );
0 commit comments