stage1: make C++ switch fallthrough an error

Make fallthrough an error when compiler supports it. This requires a new
macro that is defined with such compilers to be used as a statement, at
all fallthrough sites:

    switch (...) {
        case 0:
            ...
            ZIG_FALLTHROUGH;
        case 1:
            ...
            break;
        default:
            ...
            break;
    }

If we ever move to C++17 as minimal requirement, then the macro can be
replaced with `[[fallthrough]];` at statement sites.
212e2354b8Michael Dusan committed on 4/1/2020, 7:56:00 PM· committed by Andrew Kelleyparent0f1f56b
8 files changedLine totals unavailable