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).
This commit is contained in:
@@ -1049,7 +1049,7 @@ namespace Enums {
|
||||
code.indent(2)
|
||||
for val in cls.vals:
|
||||
code('$val = ${{cls.map[val]}},')
|
||||
code('Num_$name = ${{len(cls.vals)}},')
|
||||
code('Num_$name = ${{len(cls.vals)}}')
|
||||
code.dedent(2)
|
||||
code('''\
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user