[M108-LTS] Enforce size limits on struct and array declarations.

M108 merge issues:
  resources/sksl/BUILD.bazel:
    File doesn't exist in M108, tests are added manually to gn/sksl_tests.gni.

  gn/sksl_tests.gni:
    Conflicting rts entries

  tests/sksl/shared/Ossfuzz37900.*
    Not present in 108, skipped.

  src/sksl/ir/SkSLType.cpp:
    - Conflicting includes
    - MakeStructType():
      - Conflicting function signature
      - context isn't a parameter, used ThreadContext::Context() directly.

This improves error reporting by more clearly attaching the error
message to the oversized type.

Bug: chromium:1432603
Change-Id: I26511f08aff22072cf4913abf7be2c49940a732c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/671377
Commit-Queue: John Stiles <johnstiles@google.com>
(cherry picked from commit 1cbd33ecd73523f8d4bf88e9c5576303b39e5556)
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/673577
Reviewed-by: John Stiles <johnstiles@google.com>
13 files changed