Skip to content
  • Nick Mathewson's avatar
    Better fix for #40241 (--enable-all-bugs-are-fatal and fallthrough) · fa8ecf88
    Nick Mathewson authored
    This one should work on GCC _and_ on Clang.  The previous version
    made Clang happier by not having unreachable "fallthrough"
    statements, but made GCC sad because GCC didn't think that the
    unconditional failures were really unconditional, and therefore
    _wanted_ a FALLTHROUGH.
    
    This patch adds a FALLTHROUGH_UNLESS_ALL_BUGS_ARE_FATAL macro that
    seems to please both GCC and Clang in this case: ordinarily it is a
    FALLTHROUGH, but when ALL_BUGS_ARE_FATAL is defined, it's an
    abort().
    
    Fixes bug 40241 again.  Bugfix on earlier fix for 40241, which was
    merged into maint-0.3.5 and forward, and released in 0.4.5.3-rc.
    fa8ecf88