Go to file
John Stiles b3dcbb12ef Detect functions that fail to return a value, without using CFG.
This check now runs at function finalization time, before constant
propagation has occurred; this affected the "DeadIfStatement" test.

Our detection isn't smart enough to realize that a loop will run zero
times, so it treats `for` and `while` loops as always running at least
once. This isn't strictly correct, but it actually mirrors how the CFG
implementation works anyway. The only downside is that we would not flag
code like `for (i=0; i<0; ++i) { return x; }` as an error.

Change-Id: I5e43a6ee3a3993045559f0fb0646d36112543a94
Bug: skia:11377
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/379056
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-03-04 22:47:05 +00:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bazel bazel baby steps 2020-09-14 15:18:32 +00:00
bench rename GrSDFTOptions to GrSDFTControl 2021-03-04 19:49:10 +00:00
bin pull arm64 binary on arm64 Mac/Linux 2021-01-15 19:00:46 +00:00
build/fuchsia [fuchsia] Fix fidlc command. 2020-06-10 03:29:24 +00:00
build_overrides Port to ANGLE's GN files 2020-09-11 15:22:34 +00:00
client_utils/android Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
demos.skia.org [canvaskit] Update all demos to use full version from 0.25.0 2021-03-03 14:38:35 +00:00
dm Reland "Support sharing promise images between DDLs" 2021-03-04 13:10:37 +00:00
docker [infra] Fix index.d.ts copy in Wasm Docker build 2021-02-23 15:54:11 +00:00
docs/examples Guard legacy matrixtransforms, and expose new one 2021-02-01 22:10:39 +00:00
example Reland "Remove use of legacy display globals." 2020-10-05 19:13:58 +00:00
experimental Made SkSL DSL into public API 2021-03-04 21:03:58 +00:00
fuzz Bail if context creation fails in FuzzDDLThreadingGL 2021-03-04 03:50:26 +00:00
gm Made SkSL DSL into public API 2021-03-04 21:03:58 +00:00
gn Detect functions that fail to return a value, without using CFG. 2021-03-04 22:47:05 +00:00
include Made SkSL DSL into public API 2021-03-04 21:03:58 +00:00
infra update FM service account 2021-03-03 20:01:39 +00:00
modules Treat control codepoints as resolved 2021-03-02 20:38:48 +00:00
platform_tools [SkottieView] call onAnimationEnd listeners after finished repeating 2021-03-02 15:35:03 +00:00
resources Detect functions that fail to return a value, without using CFG. 2021-03-04 22:47:05 +00:00
samplecode Make GrGLSLFragmentProcessors be created as std::unique_ptr. 2021-02-23 19:31:01 +00:00
site update release notes 2021-02-26 22:02:24 +00:00
specs Fix CanvasKit generated documentation to work with emscripten 1.39.16. 2020-05-27 12:23:32 +00:00
src Detect functions that fail to return a value, without using CFG. 2021-03-04 22:47:05 +00:00
tests Detect functions that fail to return a value, without using CFG. 2021-03-04 22:47:05 +00:00
third_party Roll skcms from 4a4ff5bbefdf to 4e5402c56973 (3 revisions) 2021-02-24 07:02:54 +00:00
tools Made SkSL DSL into public API 2021-03-04 21:03:58 +00:00
.bazelignore bazel baby steps 2020-09-14 15:18:32 +00:00
.clang-format no more bin packing in .clang-format 2021-03-04 17:22:50 +00:00
.clang-tidy Disable ClangTidy namespace comments for short blocks. 2020-08-24 14:01:22 +00:00
.gitignore Update gitignore for goma win_toolchain 2021-02-01 17:25:52 +00:00
.gn Pre-emptive fix for upcoming ANGLE change. 2021-01-08 17:23:52 +00:00
AUTHORS Add UWP support 2021-02-10 19:04:42 +00:00
BUILD.bazel bazel baby steps 2020-09-14 15:18:32 +00:00
BUILD.gn Activate FuzzDDLThreading 2021-02-25 21:26:07 +00:00
codereview.settings Make uploading to Gerrit the default for Skia 2016-11-09 19:07:56 +00:00
CONTRIBUTING Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
CQ_COMMITTERS Moved committer list to chrome-infra-auth and deleted it from the repo 2015-09-02 13:37:54 -07:00
DEPS Roll ANGLE from 1de8b5a697e7 to 90db604919ba (11 revisions) 2021-03-04 05:24:56 +00:00
DIR_METADATA Move metadata in OWNERS files to DIR_METADATA files 2021-02-02 23:41:54 +00:00
go.mod [infra] Roll infra dependency 2021-02-25 19:56:00 +00:00
go.sum [infra] Roll infra dependency 2021-02-25 19:56:00 +00:00
LICENSE LICENSE file: clean up 2019-11-22 21:59:03 +00:00
PRESUBMIT.py Reland "[infra] Switch from isolate to RBE-CAS" 2021-02-22 14:41:06 +00:00
public.bzl Support building GrGLInterface factory functions for both EGL and GLX. 2021-02-23 16:37:48 +00:00
README Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
README.chromium Update README.chromium. 2015-06-11 13:19:24 -07:00
RELEASE_NOTES.txt Made SkSL DSL into public API 2021-03-04 21:03:58 +00:00
whitespace.txt Whitespace change to re-trigger Mac/iOS tests 2020-02-23 20:55:01 +00:00
WORKSPACE.bazel bazel baby steps 2020-09-14 15:18:32 +00:00

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

See full details, and build instructions, at https://skia.org.