[Bf-committers] code style proposal: switch statements

Campbell Barton ideasman42 at gmail.com
Sun Jul 14 05:44:58 CEST 2013

Yesterday I went over missing break's in switch statements and found a
surprising number of real bugs/errors in code (over 10), some rather
bad errors like boids 'random' behavior option, falling through to

We didn't yet decide on details for switch() statements in our current
style-code [1], but I think doing so would help avoid more mistakes
like this as well as making code easier to follow.

Most simple errors are not hard to spot errors but some code grows
over time - we had a mistake with a switch nested inside a switch for

Note that this proposal is mostly what we do now anyway, so no large
code cleanup commits needed for this and proposal is minimal.


- be consistent with placement of break, indent and include within braces.

- intentional fall-through after statements in a case _must_ be commented.
  (however successive case statements with no code can go without comments).

Heres an image:[2] and text:[3] of what I think is reasonable and an
example of whats not below.

For an example of mixed up 'break' placement in current code, see
BKE_object_minmax in object.c

[1]: http://wiki.blender.org/index.php/Dev:Doc/CodeStyle
[2]: http://www.graphicall.org/ftp/ideasman42/bad_switch_example.png
[3]: http://www.graphicall.org/ftp/ideasman42/bad_switch_example.c

- Campbell

More information about the Bf-committers mailing list