From 72538294fb1eb2e4dcd5d818c78bcdf78b0de491 Mon Sep 17 00:00:00 2001 From: Andreas Hansson Date: Mon, 19 Mar 2012 06:36:09 -0400 Subject: gcc: Clean-up of non-C++0x compliant code, first steps This patch cleans up a number of minor issues aiming to get closer to compliance with the C++0x standard as interpreted by gcc and clang (compile with std=c++0x and -pedantic-errors). In particular, the patch cleans up enums where the last item was succeded by a comma, namespaces closed by a curcly brace followed by a semi-colon, and the use of the GNU-extension typeof (replaced by templated functions). It does not address variable-length arrays, zero-size arrays, anonymous structs, range expressions in switch statements, and the use of long long. The generated CPU code also has a large number of issues that remain to be fixed, mainly related to overflows in implicit constant conversion (due to shifts). --- src/base/bitmap.cc | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'src/base/bitmap.cc') diff --git a/src/base/bitmap.cc b/src/base/bitmap.cc index 08425d74f..80d836b2f 100644 --- a/src/base/bitmap.cc +++ b/src/base/bitmap.cc @@ -70,11 +70,13 @@ Bitmap::write(std::ostream *bmp) const // For further information see: // http://en.wikipedia.org/wiki/BMP_file_format Magic magic = {{'B','M'}}; - Header header = {sizeof(VideoConvert::Rgb8888) * width * height, - 0, 0, 54}; - Info info = {sizeof(Info), width, height, 1, - sizeof(VideoConvert::Rgb8888) * 8, 0, - sizeof(VideoConvert::Rgb8888) * width * height, 1, 1, 0, 0}; + Header header = { + static_cast(sizeof(VideoConvert::Rgb8888)) * + width * height, 0, 0, 54}; + Info info = {static_cast(sizeof(Info)), width, height, 1, + static_cast(sizeof(VideoConvert::Rgb8888)) * 8, + 0, static_cast(sizeof(VideoConvert::Rgb8888)) * + width * height, 1, 1, 0, 0}; char *p = headerBuffer = new char[sizeofHeaderBuffer]; memcpy(p, &magic, sizeof(Magic)); -- cgit v1.2.3