On Friday 17 October 2014 13:06:39 Milian Wolff wrote: > enum Foo { > Bar = 1, Baz = 2 > }; > > Foo foo = static_cast<Foo>(3); > > Now what do you do without a default clause?
Shoot the developer who abused the API. If the function accepts enum values 1 and 2 and you pass a 3, you deserve the undefined behaviour. That is the same as passing a bool that doesn't contain exactly values 0 or 1 or passing an uninitialised pointer. We have to handle all regular conditions. We don't have to guard against stupidity. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development