Skip to content
  • Nick Mathewson's avatar
    Use __attribute__((fallthrough)) rather than magic GCC comments. · 28ac17f4
    Nick Mathewson authored
    GCC added an implicit-fallthrough warning a while back, where it
    would complain if you had a nontrivial "case:" block that didn't end
    with break, return, or something like that.  Clang recently added
    the same thing.
    
    GCC, however, would let you annotate a fall-through as intended by
    any of various magic "/* fall through */" comments.  Clang, however,
    only seems to like "__attribute__((fallthrough))".  Fortunately, GCC
    accepts that too.
    
    A previous commit in this branch defined a FALLTHROUGH macro to do
    the right thing if GNUC is defined; here we replace all of our "fall
    through" comments with uses of that macro.
    
    This is an automated commit, made with the following perl one-liner:
    
      #!/usr/bin/perl -i -p
      s#/\* *falls? ?thr.*?\*/#FALLTHROUGH;#i;
    
    (In order to avoid conflicts, I'm applying this script separately to
    each maint branch. This is the 0.4.2 version.)
    28ac17f4