Fix implicit fallthroughs throughout Skia.

This CL is not fully comprehensive; for instance, it does not contain
fixes for backends that don't compile on Mac. But it does resolve the
vast majority of cases that trigger -Wimplicit-fallthrough.

A few minor bugs were found and fixed, but none that were likely to
affect normal operation.

Change-Id: I43487602b0d56200ce8b42702e04f66390d82f60
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/295916
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
diff --git a/src/gpu/glsl/GrGLSLGeometryProcessor.cpp b/src/gpu/glsl/GrGLSLGeometryProcessor.cpp
index d4eb2af..0d63776 100644
--- a/src/gpu/glsl/GrGLSLGeometryProcessor.cpp
+++ b/src/gpu/glsl/GrGLSLGeometryProcessor.cpp
@@ -44,11 +44,14 @@
         vBuilder->codeAppendf("sk_Position = float4(%s", gpArgs.fPositionVar.c_str());
         switch (gpArgs.fPositionVar.getType()) {
             case kFloat_GrSLType:
-                vBuilder->codeAppend(", 0"); // fallthru.
+                vBuilder->codeAppend(", 0");
+                [[fallthrough]];
             case kFloat2_GrSLType:
-                vBuilder->codeAppend(", 0"); // fallthru.
+                vBuilder->codeAppend(", 0");
+                [[fallthrough]];
             case kFloat3_GrSLType:
-                vBuilder->codeAppend(", 1"); // fallthru.
+                vBuilder->codeAppend(", 1");
+                [[fallthrough]];
             case kFloat4_GrSLType:
                 vBuilder->codeAppend(");");
                 break;
@@ -171,6 +174,7 @@
                 }
                 vb->codeAppend(";\n");
                 vb->codeAppend("}\n");
+                break;
             }
             default:
                 break;