Making it easier to work with shaders
This report summarizes scanner evidence for shader-slang/slang, a C++ project with 5,721 GitHub stars. SynthScan examined 892,784 lines of code across 2758 source files, recording 4341 pattern matches distributed across 21 syntactic categories. The legacy adjusted pattern signal is 5.2 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 4101 finding(s).
Are imports declared and package/API names verified? 70 finding(s).
Are wrappers, guards, and repeated structures necessary? 550 finding(s).
Which changes need focused human review? 4341 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 4341 distinct pattern matches across 21 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | CMakeLists.txt | 41 | COMMENT | |
| LOW | CMakeLists.txt | 801 | install( | COMMENT |
| LOW | CMakeLists.txt | 921 | # $<BUILD_LOCAL_INTERFACE:...> / $<BUILD_INTERFACE:...> (cmake/SlangTarget.cmake), | COMMENT |
| LOW | CLAUDE.md | 41 | # Use -DSLANG_EMBED_CORE_MODULE=OFF to keep core module compilation separate | COMMENT |
| LOW | tools/CMakeLists.txt | 281 | # spvdb (vendored at tests/spvdb) is a SPIR-V interpreter and source-level | COMMENT |
| LOW | tools/CMakeLists.txt | 561 | ) | COMMENT |
| LOW | tools/gfx-unit-test/link-time-options.cpp | 1 | #include "core/slang-basic.h" | COMMENT |
| LOW | tools/gfx-unit-test/shader-cache-tests.cpp | 1 | #if 0 | COMMENT |
| LOW | tools/gfx-unit-test/pointer-in-buffer-roundtrip.cpp | 1 | #include "core/slang-basic.h" | COMMENT |
| LOW | tools/gfx-unit-test/gfx-test-texture-util.cpp | 1 | #include "gfx-test-texture-util.h" | COMMENT |
| LOW | tools/gfx-unit-test/gfx-test-texture-util.cpp | 161 | return new PackedValidationTextureFormat<uint32_t>(10, 10, 10, 2); | COMMENT |
| LOW | tools/gfx-unit-test/texture-types-tests.cpp | 1 | #if 0 | COMMENT |
| LOW | tools/gfx-unit-test/texture-types-tests.cpp | 701 | // one test with something bound, one test with nothing bound, one test with subset of layers (set | COMMENT |
| LOW | tools/gfx-unit-test/pointer-in-paramblock-roundtrip.cpp | 1 | #include "core/slang-basic.h" | COMMENT |
| LOW | tools/gfx-unit-test/precompiled-module-2.cpp | 1 | #if 0 | COMMENT |
| LOW | tools/gfx-unit-test/link-time-type-layout.cpp | 241 | // This test verifies that type layout information correctly propagates through | COMMENT |
| LOW | tools/gfx-unit-test/link-time-type-layout-nested.cpp | 241 | // | COMMENT |
| LOW | …x-unit-test/pointer-in-buffer-double-ptr-roundtrip.cpp | 1 | #include "core/slang-basic.h" | COMMENT |
| LOW | tools/gfx-unit-test/span.h | 1 | /* | COMMENT |
| LOW | tools/gfx-unit-test/span.h | 21 | #define TCB_SPAN_NO_EXCEPTIONS | COMMENT |
| LOW | tools/gfx-unit-test/span.h | 41 | #define TCB_SPAN_HAVE_CPP14 | COMMENT |
| LOW | tools/gfx-unit-test/span.h | 81 | cond ? (void)0 : contract_violation("Expected " TCB_SPAN_STRINGIFY(cond)) | COMMENT |
| LOW | tools/gfx-unit-test/span.h | 101 | COMMENT | |
| LOW | tools/gfx-unit-test/span.h | 121 | COMMENT | |
| LOW | tools/gfx-unit-test/gfx-test-util.h | 1 | #pragma once | COMMENT |
| LOW | tools/gfx-unit-test/neural-slang-network-converter.cpp | 1 | #include "core/slang-basic.h" | COMMENT |
| LOW | tools/gfx-unit-test/copy-texture-tests.cpp | 1 | #if 0 | COMMENT |
| LOW | tools/vk-pipeline-create/main.cpp | 1 | // main.cpp | COMMENT |
| LOW | tools/coverage-html/script.js | 1 | (function () { | COMMENT |
| LOW | tools/coverage-html/lcov_io.py | 281 | # NOTE on counting: LCOV emits one FN/FNDA pair per *mangled name*, | COMMENT |
| LOW | tools/coverage-html/lcov_io.py | 801 | COMMENT | |
| LOW | tools/platform/platform-api.h | 1 | #ifndef SLANG_PLATFORM_API_H | COMMENT |
| LOW | tools/platform/gui.cpp | 1 | // gui.cpp | COMMENT |
| LOW | tools/platform/gui.cpp | 361 | COMMENT | |
| LOW | tools/platform/model.cpp | 1 | // model.cpp | COMMENT |
| LOW | tools/platform/model.cpp | 21 | COMMENT | |
| LOW | tools/slang-static-unit-test/unit-test-ast-types.cpp | 1 | // unit-test-ast-types.cpp | COMMENT |
| LOW | …ls/slang-static-unit-test/unit-test-module-version.cpp | 1 | // unit-test-module-version.cpp | COMMENT |
| LOW | …slang-static-unit-test/slang-static-unit-test-main.cpp | 1 | // slang-static-unit-test-main.cpp | COMMENT |
| LOW | …slang-static-unit-test/slang-static-unit-test-main.cpp | 181 | // `slang-test` fills these with real paths for the plugin tests. Nothing in this | COMMENT |
| LOW | …slang-static-unit-test/unit-test-harness-selfcheck.cpp | 1 | // unit-test-harness-selfcheck.cpp | COMMENT |
| LOW | …slang-static-unit-test/unit-test-harness-selfcheck.cpp | 21 | // throw: reaching it is what proves the driver carried on rather than dying at one of | COMMENT |
| LOW | tools/slang-static-unit-test/static-unit-test-env.h | 1 | // static-unit-test-env.h | COMMENT |
| LOW | tools/slang-static-unit-test/static-unit-test-env.h | 41 | { | COMMENT |
| LOW | tools/slang-static-unit-test/static-unit-test-env.h | 61 | /// construct types and other AST values directly. | COMMENT |
| LOW | tools/slang-static-unit-test/static-unit-test-env.h | 101 | explicit IRFixtureBuilder(Session* session); | COMMENT |
| LOW | tools/slang-static-unit-test/static-unit-test-env.h | 121 | COMMENT | |
| LOW | tools/slang-static-unit-test/static-unit-test-env.h | 141 | COMMENT | |
| LOW | tools/slang-static-unit-test/static-unit-test-env.h | 161 | /// separated by a call to `callee`, then a return. Returns the two markers. | COMMENT |
| LOW | tools/slang-static-unit-test/static-unit-test-env.h | 181 | /// build directly. | COMMENT |
| LOW | tools/slang-static-unit-test/static-unit-test-env.h | 201 | /// two guarantees at once: a function-entry marker takes a dedicated slot, | COMMENT |
| LOW | tools/slang-static-unit-test/static-unit-test-env.h | 221 | /// a placeholder, so this matches `countGlobalInsts(kIROp_Func)` only while every | COMMENT |
| LOW | tools/slang-static-unit-test/unit-test-ir-dce.cpp | 1 | // unit-test-ir-dce.cpp | COMMENT |
| LOW | tools/slang-static-unit-test/unit-test-ir-dce.cpp | 361 | COMMENT | |
| LOW | tools/slang-static-unit-test/unit-test-check-decl.cpp | 1 | // unit-test-check-decl.cpp | COMMENT |
| LOW | …tic-unit-test/unit-test-cuda-sm-capability-mapping.cpp | 1 | // unit-test-cuda-sm-capability-mapping.cpp | COMMENT |
| LOW | …ang-static-unit-test/unit-test-coverage-coalescing.cpp | 1 | // unit-test-coverage-coalescing.cpp | COMMENT |
| LOW | …ang-static-unit-test/unit-test-coverage-coalescing.cpp | 21 | // Property 2 is the sharpest case for a direct test: first- and last-marker | COMMENT |
| LOW | tools/slang-fiddle/slang-fiddle-diagnostic-defs.h | 1 | // | COMMENT |
| LOW | tools/slang-fiddle/slang-fiddle-main.cpp | 1 | // slang-fiddle-main.cpp | COMMENT |
| 3401 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tools/coverage-html/slang-coverage-merge.py | 63 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-merge.py | 65 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-merge.py | 89 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-merge.py | 91 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tools/coverage-html/slang-coverage-merge.py | 172 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tools/coverage-html/slang-coverage-merge.py | 174 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-merge.py | 224 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-merge.py | 226 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-merge.py | 288 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-merge.py | 290 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/llvm_cov_json.py | 36 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/llvm_cov_json.py | 38 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-html.py | 53 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-html.py | 55 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tools/coverage-html/slang-coverage-html.py | 90 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tools/coverage-html/slang-coverage-html.py | 92 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-html.py | 1144 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-html.py | 1146 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-html.py | 1206 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-html.py | 1208 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-html.py | 1246 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-html.py | 1248 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-html.py | 1272 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/slang-coverage-html.py | 1274 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/lcov_io.py | 114 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/lcov_io.py | 116 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/lcov_io.py | 514 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/lcov_io.py | 516 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/lcov_io.py | 725 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/lcov_io.py | 727 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/lcov_io.py | 805 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/lcov_io.py | 807 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tools/coverage-html/tests/test_merge.py | 178 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tools/coverage-html/tests/test_merge.py | 180 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tools/coverage-html/tests/test_merge.py | 245 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tools/coverage-html/tests/test_merge.py | 247 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/tests/test_merge.py | 43 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/tests/test_merge.py | 45 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/tests/test_merge.py | 86 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/tests/test_merge.py | 88 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/tests/test_merge.py | 303 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tools/coverage-html/tests/test_merge.py | 305 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | source/compiler-core/slang-rich-diagnostics-render.cpp | 185 | // ┬──────────, where the first character there is the 'Join' one, it | COMMENT |
| MEDIUM | tests/expected-failure-coverage.txt | 2 | # ========================= | COMMENT |
| MEDIUM⚡ | tests/spvdb/examples/complicated-bug/CMakeLists.txt | 4 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/spvdb/examples/complicated-bug/CMakeLists.txt | 6 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/spvdb/examples/complicated-bug/CMakeLists.txt | 14 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/spvdb/examples/complicated-bug/CMakeLists.txt | 16 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/spvdb/examples/complicated-bug/CMakeLists.txt | 38 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/spvdb/examples/complicated-bug/CMakeLists.txt | 40 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/shader-coverage-image-pipeline/run_coverage.py | 29 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/shader-coverage-image-pipeline/run_coverage.py | 31 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/shader-coverage-image-pipeline/run_coverage.py | 51 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/shader-coverage-image-pipeline/run_coverage.py | 53 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/shader-coverage-image-pipeline/run_coverage.py | 131 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/shader-coverage-image-pipeline/run_coverage.py | 133 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/shader-coverage-image-pipeline/run_coverage.py | 158 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/shader-coverage-image-pipeline/run_coverage.py | 160 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/shader-coverage-image-pipeline/run_coverage.py | 173 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/shader-coverage-image-pipeline/run_coverage.py | 175 | # --------------------------------------------------------------------------- | COMMENT |
| 45 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tools/coverage-html/slang-coverage-merge.py | 177 | def synthesize_missing_functions( | CODE |
| LOW⚡ | tools/coverage-html/slang-coverage-html.py | 98 | def _escape_path_for_filename(relpath: str) -> str: | CODE |
| LOW | tools/coverage-html/slang-coverage-html.py | 621 | def _render_file_functions_row( | CODE |
| LOW | tools/coverage-html/slang-coverage-html.py | 848 | def _fn_function_coverage_cells(is_hit: bool) -> str: | CODE |
| LOW | tools/coverage-html/slang-coverage-html.py | 859 | def _fn_branch_coverage_cells(b_total: int, b_hit: int) -> str: | CODE |
| LOW | tools/coverage-html/slang-coverage-html.py | 921 | def _render_inline_functions_table( | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 42 | def test_empty_is_plain_spaces(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 110 | def test_cell_bg_uses_high_lightness(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 117 | def test_rate_cell_emits_gradient_inline_style(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 145 | def test_no_filters_is_identity(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 170 | def test_glob_and_regex_compose(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 228 | def test_demo_fixture_round_trip(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 253 | def test_refuses_foreign_output_dir(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 269 | def test_exit_nonzero_on_corrupt_lcov(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 278 | def test_empty_lcov_produces_empty_index(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 290 | def test_real_lcov_with_branches_and_functions(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 311 | def test_metric_cards_only_on_per_file_pages(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 342 | def test_top_chrome_is_sticky(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 379 | def test_directory_grouping_in_index(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 411 | def test_nested_directory_levels_each_collapsible(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 447 | def test_index_uses_full_width_no_center(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 464 | def test_title_no_lcov_branding(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 480 | def test_slang_brand_palette_applied(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 497 | def test_chevron_placeholder_keeps_columns_aligned(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 536 | def test_inline_function_table_fixed_width_layout(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 562 | def test_invocation_cwd_resolves_repo_relative_paths(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 603 | def test_function_dropdown_includes_branch_coverage(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 647 | def test_index_has_expandable_function_rows(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 691 | def test_per_file_page_no_longer_has_functions_table(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 721 | def test_real_lcov_renders_inline_branch_column(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 785 | def test_idempotent_modulo_timestamp(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 834 | def test_json_input_renders_regions_column(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 865 | def test_json_input_drops_auth_summary(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 879 | def test_json_summary_drives_overall_numbers(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 895 | def test_json_gz_extension_accepted(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 912 | def test_no_auth_no_regions_zero_total(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 919 | def test_regions_list_drives_unauthed_totals(self): | CODE |
| LOW | tools/coverage-html/tests/test_renderer.py | 931 | def test_auth_override_overrides_regions_list(self): | CODE |
| LOW | tools/coverage-html/tests/test_llvm_cov_json.py | 38 | def test_summary_drives_totals(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_llvm_cov_json.py | 52 | def test_zero_summary_zeros_out(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_llvm_cov_json.py | 60 | def test_branches_dict_has_two_arms_per_branch(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_llvm_cov_json.py | 69 | def test_functions_attached_to_primary_file(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_llvm_cov_json.py | 77 | def test_regions_filter_to_code_kind(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_llvm_cov_json.py | 87 | def test_segments_drive_per_line_hits(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_llvm_cov_json.py | 95 | def test_lcov_specific_fields_unset(self): | CODE |
| LOW | tools/coverage-html/tests/test_llvm_cov_json.py | 113 | def test_half_open_at_segment_boundary(self): | CODE |
| LOW | tools/coverage-html/tests/test_llvm_cov_json.py | 129 | def test_final_segment_attributed_only_to_its_own_line(self): | CODE |
| LOW | tools/coverage-html/tests/test_llvm_cov_json.py | 138 | def test_five_element_segments_accepted(self): | CODE |
| LOW | tools/coverage-html/tests/test_llvm_cov_json.py | 151 | def test_deactivating_segment_skipped(self): | CODE |
| LOW | tools/coverage-html/tests/test_llvm_cov_json.py | 198 | def test_gz_extension_auto_decompresses(self): | CODE |
| LOW | tools/coverage-html/tests/test_llvm_cov_json.py | 246 | def test_last_block_wins_for_duplicate_filenames(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_merge.py | 56 | def test_windows_backslashes_normalize_to_forward(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_merge.py | 63 | def test_unmatched_path_passes_through(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_merge.py | 70 | def test_no_prefixes_passes_through(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_merge.py | 160 | def test_functions_first_line_fallback(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_merge.py | 170 | def test_files_unique_per_input_are_preserved(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_merge.py | 227 | def test_no_op_when_no_sibling_has_functions(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_merge.py | 236 | def test_only_applies_to_files_with_no_functions(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_merge.py | 255 | def test_round_trip_preserves_coverage(self): | CODE |
| LOW⚡ | tools/coverage-html/tests/test_merge.py | 336 | def test_rejects_json_input_with_exit_two(self): | CODE |
| 319 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tools/compile-perf/breakdown.py | 436 | var btn = ev.target.closest && ev.target.closest('button.copy'); | CODE |
| HIGH | tools/compile-perf/breakdown.py | 457 | if (navigator.clipboard && navigator.clipboard.writeText) { | CODE |
| HIGH | tools/compile-perf/sweep_report.py | 174 | somewhere, where a log-log fit is undefined). | STRING |
| HIGH | tools/compile-perf/lib/workloads.py | 25 | # complexity_ladder is marked "Scaling reference (not a null)" because it | COMMENT |
| HIGH | tools/compile-perf/lib/workloads.py | 291 | Scaling reference (not a null): several axes co-scale, so the sweep's linear line means 'cost tracks code size' — a | STRING |
| HIGH | extras/ci-gpu-stress-loop.py | 206 | rm -f /usr/share/glvnd/egl_vendor.d/10_nvidia.json 2>/dev/null || true | CODE |
| HIGH⚡ | extras/ci-gpu-stress-loop.py | 218 | sudo nvidia-modprobe -m 2>/dev/null || true | CODE |
| HIGH⚡ | extras/ci-gpu-stress-loop.py | 227 | mkdir -p workspace/slang && cd workspace/slang | CODE |
| HIGH⚡ | extras/ci-gpu-stress-loop.py | 230 | chmod +x {cmake_config}/bin/* 2>/dev/null || true | CODE |
| HIGH⚡ | extras/ci-gpu-stress-loop.py | 267 | nvidia-smi 2>&1 || echo 'NVIDIA-SMI FAILED' | CODE |
| HIGH⚡ | extras/ci-gpu-stress-loop.py | 270 | nvidia-smi -q 2>&1 || echo 'NVIDIA-SMI QUERY FAILED' | CODE |
| HIGH⚡ | extras/ci-gpu-stress-loop.py | 273 | nvidia-smi -q -d XID_ERRORS 2>&1 || echo 'XID QUERY FAILED' | CODE |
| HIGH⚡ | extras/ci-gpu-stress-loop.py | 276 | lspci 2>/dev/null | grep -i nvidia || echo 'lspci not available' | CODE |
| HIGH⚡ | extras/ci-gpu-stress-loop.py | 279 | sudo dmesg 2>/dev/null || echo '(dmesg not available)' | CODE |
| HIGH | extras/ci-gpu-stress-loop.py | 396 | " lspci 2>/dev/null | grep -i nvidia || echo 'lspci not available'", | CODE |
| HIGH⚡ | extras/ci/analytics/ci_visualization.py | 203 | if (ctx.measureText(test).width > maxWidth && cur) { | CODE |
| HIGH⚡ | extras/ci/analytics/ci_visualization.py | 204 | lines.push(cur); | CODE |
| HIGH⚡ | extras/ci/analytics/ci_visualization.py | 210 | if (cur) lines.push(cur); | CODE |
| HIGH⚡ | extras/ci/analytics/ci_visualization.py | 215 | if (!canvas || !bg) return null; | CODE |
| HIGH | extras/ci/analytics/ci_visualization.py | 1177 | charts.push({{chart: c, id, type, config}}); | CODE |
| HIGH⚡ | extras/ci/analytics/ci_visualization.py | 1532 | const matchWf = !wf || el.dataset.wf === wf; | CODE |
| HIGH⚡ | extras/ci/analytics/ci_visualization.py | 1533 | const matchBr = !br || el.dataset.branch === br; | CODE |
| HIGH⚡ | extras/ci/analytics/ci_visualization.py | 1534 | el.style.display = (matchWf && matchBr) ? 'block' : 'none'; | CODE |
| HIGH⚡ | extras/ci/analytics/ci_health.py | 1099 | if (hostedCanvas && hostedRunnerChart) {{ | CODE |
| HIGH⚡ | extras/ci/analytics/ci_health.py | 1103 | hostedDatasets.push({{ | CODE |
| HIGH⚡ | extras/ci/analytics/ci_health.py | 1113 | hostedDatasets.push({{ | CODE |
| HIGH⚡ | extras/ci/analytics/ci_health.py | 1476 | if (!p.pr_number || p.title !== p.name || seenPrs[p.pr_number]) return; | CODE |
| HIGH⚡ | extras/ci/analytics/ci_health.py | 1478 | if (titleTargets.length < MAX_TITLE_LOOKUPS) titleTargets.push(p.pr_number); | CODE |
| HIGH⚡ | extras/ci/analytics/ci_health.py | 1482 | .then(function (r) { return r.ok ? r.json() : null; }) | CODE |
| HIGH⚡ | extras/ci/analytics/ci_health.py | 1486 | if (p.pr_number === prNumber && p.title === p.name) p.title = pr.title; | CODE |
| HIGH | extras/ci/analytics/ci_health.py | 986 | runnerDatasets.push({{ | CODE |
| HIGH | extras/ci/analytics/ci_health.py | 1039 | if (!gpuCanvas || Object.keys(quotaChart.regionData).length === 0) continue; | CODE |
| HIGH | extras/ci/analytics/ci_health.py | 1043 | gpuDatasets.push({{ | CODE |
| HIGH | extras/ci/analytics/ci_health.py | 1054 | gpuDatasets.push({{ | CODE |
| HIGH | extras/ci/analytics/ci_health.py | 1187 | if (total == null) return ''; | CODE |
| HIGH | extras/ci/analytics/ci_health.py | 1201 | if (mqCanvas && hasMqSnapshots) {{ | CODE |
| HIGH | extras/ci/analytics/ci_health.py | 1407 | var prNumber = prs.length ? prs[0].number : null; | CODE |
| HIGH | extras/ci/analytics/ci_health.py | 1408 | if (prNumber === null && r.event === "merge_group") { | CODE |
| HIGH | extras/ci/analytics/ci_health.py | 1423 | title: r.display_title || String(r.id), | CODE |
| HIGH | extras/ci/analytics/ci_health.py | 1439 | if (p.pr_number !== null || p.event !== "pull_request" || !p.head_owner) return; | CODE |
| HIGH | extras/ci/analytics/ci_health.py | 1443 | if (uniqueTargets.length < MAX_HEAD_LOOKUPS) uniqueTargets.push(key); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tools/compile-perf/bench.py | 872 | # here because the bench harness always builds valid invocations. | COMMENT |
| MEDIUM | tools/compile-perf/bench.py | 1074 | # otherwise have no test coverage (bench.py has no pytest/GPU harness; the | COMMENT |
| MEDIUM | tools/compile-perf/lib/manifest.py | 107 | # / holistic first, then the API-path workloads, then the compiler | COMMENT |
| MEDIUM | tools/compile-perf/lib/manifest.py | 123 | # Sweep this to see the holistic compile-time curve as a representative | COMMENT |
| MEDIUM | …/slang-unit-test/unit-precompiled-module-attribute.cpp | 18 | // This test checks a nuanced case: | COMMENT |
| MEDIUM | tools/slang-unit-test/unit-test-persistent-cache.cpp | 312 | // Tests the cache to be robust against various corruptions. | COMMENT |
| MEDIUM | tools/gfx/renderer-shared.h | 83 | // This setup is robust to any destruction ordering. If user releases reference to `device` first, | COMMENT |
| MEDIUM | source/slang/slang-ir-autodiff-primal-hoist.cpp | 344 | // Essentially we want to split the uses dominated by the true block and the false block of the | COMMENT |
| MEDIUM | source/slang/slang-ir-eliminate-phis.cpp | 421 | // In an attempt to make this code as robust as possible, we | COMMENT |
| MEDIUM | source/slang/slang-check-overload.cpp | 2324 | // structural/type concerns, but a more nuanced approach may be | COMMENT |
| MEDIUM | source/slang/slang-check-inheritance.cpp | 1531 | // compared to C3 so that it is robust to such ordering issues. | COMMENT |
| MEDIUM | source/slang/slang-ir-restructure.cpp | 540 | // The logic here isn't going to be robust in edge cases | COMMENT |
| MEDIUM | source/slang/slang-parser.cpp | 7360 | // TODO(tfoley): this wouldn't be robust for more | COMMENT |
| MEDIUM | source/slang/slang-ir.cpp | 248 | // this more robust. | COMMENT |
| MEDIUM | source/slang/slang-ir-typeflow-specialize.cpp | 512 | // In the future, we may want to extend this check to something more nuanced, | COMMENT |
| MEDIUM | source/slang/slang-ir-synthesize-active-mask.cpp | 228 | // TODO: The logic here isn't robust against cases where we | COMMENT |
| MEDIUM | source/slang/slang-lower-to-ir.cpp | 6864 | // Check the AST type (robust to generic instantiations whose | COMMENT |
| MEDIUM | source/slang/slang-lower-to-ir.cpp | 7762 | // TODO: We might want to have a more robust check | COMMENT |
| MEDIUM | source/slang/slang-lower-to-ir.cpp | 15082 | // TODO: This isn't a robust strategy if we ever have to deal | COMMENT |
| MEDIUM | source/slang/slang-ir-collect-global-uniforms.cpp | 260 | // TODO: It would be more consistent and robust to *always* wrap up | COMMENT |
| MEDIUM | source/slang/slang-ir-ssa.cpp | 1603 | // robust to the presence of nested functions in general. | COMMENT |
| MEDIUM | source/slang/slang-ir-specialize.cpp | 2206 | // TODO: We probably need/want a more robust test here. | COMMENT |
| MEDIUM | source/slang/slang-parameter-binding.cpp | 3554 | // TODO: Ideally we should make the layout process more robust to empty/void | COMMENT |
| MEDIUM | source/slang/slang-emit-c-like.h | 783 | // Source language (based on the more nuanced m_target) | COMMENT |
| MEDIUM | source/slang/slang-check-decl.cpp | 2268 | // applies to such types. A more robust fix would involve a truly | COMMENT |
| MEDIUM | source/slang/slang-check-decl.cpp | 2269 | // recursive walk of the AST declarations, and an even *more* robust | COMMENT |
| MEDIUM | source/slang/slang-check-decl.cpp | 11659 | // The only robust solution long-term is probably to treat this | COMMENT |
| MEDIUM | source/slang/slang-check-decl.cpp | 14623 | // they are allowed to co-exist using these more nuanced rules. | COMMENT |
| MEDIUM | source/slang/slang-check-constraint.cpp | 2392 | // nodes. The visited set makes the walk robust and keeps one complex | COMMENT |
| MEDIUM | source/slang/slang-ir-autodiff-fwd.cpp | 1102 | // role is robust to the order in which requirements (and the relocated | COMMENT |
| MEDIUM | source/slang/slang-ir-autodiff-fwd.cpp | 3732 | // rather than by operand position, so this is robust to the order in which the requirements | COMMENT |
| MEDIUM | source/slang/slang-ir-entry-point-raw-ptr-params.cpp | 60 | // that ranges are robust against changes to instructions outside | COMMENT |
| MEDIUM | examples/gpu-printing/gpu-printing.cpp | 244 | // TODO: This code isn't robust against strings with | COMMENT |
| MEDIUM | .github/workflows/ci-slang-static-unit-test.yml | 164 | # The suite above is written to pass, so passing does not prove the harness | COMMENT |
| MEDIUM | .github/actions/claude-code-runner/action.yml | 297 | # Generate token with comprehensive error handling (using Basic auth) | COMMENT |
| MEDIUM | external/spirv-tools-generated/options-pinned.h | 39 | // Diamond dependency problems can be avoided if all packages utilize the same | COMMENT |
| MEDIUM | extras/ci-gpu-stress-loop.py | 326 | # internal harness, e.g. `getBufferResourceHandleVulkan.internal`) result | COMMENT |
| MEDIUM | extras/ci/analyze-ci-parallelization.py | 67 | """Perform comprehensive parallelization analysis.""" | STRING |
| MEDIUM | extras/scaler/cmd/scaler/main.go | 400 | // jobs to finish. This enables seamless binary updates: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tools/coverage-html/slang-coverage-merge.py | 109 | except OSError: | CODE |
| HIGH | tools/coverage-html/lcov_io.py | 590 | except ValueError: | CODE |
| HIGH | tools/coverage-html/lcov_io.py | 596 | except ValueError: | CODE |
| HIGH | tools/coverage-html/lcov_io.py | 643 | except ValueError: | CODE |
| HIGH | tools/coverage-html/lcov_io.py | 649 | except ValueError: | CODE |
| HIGH | tools/coverage-html/lcov_io.py | 702 | except ValueError: | CODE |
| HIGH | tools/coverage-html/lcov_io.py | 708 | except ValueError: | CODE |
| HIGH | tools/compile-perf/slack_status.py | 152 | except (TypeError, ValueError): | CODE |
| HIGH | tools/compile-perf/track.py | 61 | except OSError: | CODE |
| HIGH | tools/compile-perf/bench.py | 221 | except subprocess.SubprocessError: | CODE |
| HIGH | tools/compile-perf/bench.py | 549 | except Exception: # noqa: BLE001 | CODE |
| HIGH | tools/compile-perf/fetch_releases.py | 323 | except SystemExit: | CODE |
| HIGH | tools/compile-perf/fetch_releases.py | 353 | except (SystemExit, tarfile.TarError, OSError): | CODE |
| HIGH | tools/compile-perf/fetch_releases.py | 384 | except (tarfile.TarError, OSError): | CODE |
| HIGH | …slang-review-post-github/scripts/post_github_review.py | 707 | except OSError: | CODE |
| HIGH | extras/extract-spirv-sources.py | 129 | except Exception: | CODE |
| HIGH | extras/extract-spirv-sources.py | 469 | except Exception: | CODE |
| HIGH | extras/ci/gh_api.py | 203 | except json.JSONDecodeError: | CODE |
| HIGH | extras/ci/analytics/ci_job_collector.py | 407 | except (ValueError, TypeError): | CODE |
| HIGH | extras/ci/analytics/ci_post_status.py | 85 | except (FileNotFoundError, subprocess.TimeoutExpired): | CODE |
| HIGH | extras/ci/analytics/ci_post_status.py | 243 | except EOFError: | CODE |
| HIGH | extras/ci/analytics/ci_visualization.py | 888 | except (ValueError, TypeError): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | REVIEW.md | 44 | ## Step 1: Verify the pre-staged PR diff | COMMENT |
| LOW | REVIEW.md | 76 | ## Step 2: Determine applicable reviewers and dispatch | COMMENT |
| LOW | REVIEW.md | 114 | ## Step 3: Wait for all dispatched agents, then editorially filter | COMMENT |
| LOW | REVIEW.md | 145 | ## Step 4: Analyze changes for the review | COMMENT |
| LOW | REVIEW.md | 160 | ## Step 5: Post ONE review with inline comments | COMMENT |
| LOW | …s/slang-unit-test/unit-test-obfuscation-with-debug.cpp | 433 | // Step 1: Compile slang modules with -g2 + Obfuscation ON | COMMENT |
| LOW | …s/slang-unit-test/unit-test-obfuscation-with-debug.cpp | 455 | // Step 2: Generate SPIR-V with separate debug | COMMENT |
| LOW | …s/slang-unit-test/unit-test-obfuscation-with-debug.cpp | 540 | // Step 3: Verification | COMMENT |
| LOW | source/slang/slang-check-inheritance.cpp | 1166 | // Step 1: Express the constraint in terms of the concrete lookup source. | COMMENT |
| LOW | source/slang/slang-check-inheritance.cpp | 1179 | // Step 2: Compare the constraint's endpoints with `selfType`. A directed | COMMENT |
| LOW | source/slang/slang-check-inheritance.cpp | 1211 | // Step 3: Skip the constraint unless it applies to `selfType`. Only relevant | COMMENT |
| LOW | source/slang/slang-ir-typeflow-specialize.cpp | 3518 | // Step 1: treat any non-concrete table (the explicit "none" | COMMENT |
| LOW | source/slang/slang-ir-typeflow-specialize.cpp | 3532 | // Step 2: it is safe to dereference `witnessTab` now. | COMMENT |
| LOW | .claude/skills/slangpy-debug/SKILL.md | 23 | ## Step 1: Build Slang | COMMENT |
| LOW | .claude/skills/slangpy-debug/SKILL.md | 31 | ## Step 2: Clone slangpy Repository | COMMENT |
| LOW | .claude/skills/slangpy-debug/SKILL.md | 42 | ## Step 3: Build and Install slangpy with Local Slang | COMMENT |
| LOW | .claude/skills/slangpy-debug/SKILL.md | 63 | ## Step 4: Install Test Dependencies | COMMENT |
| LOW | .claude/skills/slangpy-debug/SKILL.md | 71 | ## Step 5: Run Tests | COMMENT |
| LOW | .claude/skills/slang-release-process/SKILL.md | 18 | ## Step 1: Trigger Release CI | COMMENT |
| LOW | .claude/skills/slang-release-process/SKILL.md | 57 | ## Step 2: Determine the Version | COMMENT |
| LOW | .claude/skills/slang-release-process/SKILL.md | 93 | ## Step 3: Generate Release Notes | COMMENT |
| LOW | .claude/skills/slang-release-process/SKILL.md | 103 | ## Step 4: Create and Push the Tag | COMMENT |
| LOW | docs/vk-gl-cts.md | 67 | ## Step 1: Build Slang the way the nightly does | COMMENT |
| LOW | docs/vk-gl-cts.md | 90 | ## Step 2: Get the test lists | COMMENT |
| LOW | docs/vk-gl-cts.md | 121 | ## Step 3: Lay out the prebuilt CTS | COMMENT |
| LOW | docs/vk-gl-cts.md | 153 | ## Step 4: Run | COMMENT |
| LOW | docs/vk-gl-cts.md | 209 | ## Step 5: Triage a failure | COMMENT |
| LOW | docs/replays.md | 387 | ### Step 1: Create or Update Proxy | COMMENT |
| LOW | docs/replays.md | 402 | ### Step 2: Implement Methods with Recording | COMMENT |
| LOW⚡ | docs/replays.md | 415 | ### Step 3: Register Wrapping (if new interface) | COMMENT |
| LOW⚡ | docs/replays.md | 423 | ### Step 4: Register Replay Handler | COMMENT |
| LOW⚡ | docs/replays.md | 431 | ### Step 5: Add Type Serialization (if needed) | COMMENT |
| LOW | examples/stacktrace-windows/common.cpp | 72 | // NOTE: This function is not thread-safe, due to usage of StackWalk64 and static buffers. | COMMENT |
| LOW⚡ | extras/update-spirv-tools.sh | 41 | # Step 1: Synchronize and update submodules | COMMENT |
| LOW⚡ | extras/update-spirv-tools.sh | 46 | # Step 2: Fetch and resolve the commit hash | COMMENT |
| LOW⚡ | extras/update-spirv-tools.sh | 65 | # Step 3: Create a branch for the update | COMMENT |
| LOW⚡ | extras/update-spirv-tools.sh | 72 | # Step 4: Update the SPIRV-Tools submodule to the specified version | COMMENT |
| LOW⚡ | extras/update-spirv-tools.sh | 76 | # Step 5: Build spirv-tools to generate files | COMMENT |
| LOW | extras/update-spirv-tools.sh | 97 | # Step 6: Update SPIRV-Headers to what SPIRV-Tools uses | COMMENT |
| LOW | extras/update-spirv-tools.sh | 114 | # Step 7: Copy the generated files from spirv-tools/build-generated/ to spirv-tools-generated/ | COMMENT |
| LOW | extras/update-spirv-tools.sh | 136 | # Step 8: Stage the changes | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 81 | # Step 1: Verify Slang Debug Build | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 101 | # Step 2: Clone dxvk-remix | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 127 | # Step 3: Comment out Slang in packman-external.xml | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 163 | # Step 4: Download packman dependencies (excluding Slang) | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 175 | # Step 5: Create Slang directory with our Debug build | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 220 | # Step 6: Build shaders | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 253 | # Step 7: Verify shader compilation output | COMMENT |
| LOW | extras/scaler/deploy/setup-scaler-host.sh | 57 | # Step 1: Create VM if it doesn't exist | COMMENT |
| LOW⚡ | extras/scaler/deploy/setup-scaler-host.sh | 78 | # Step 2: Create scaler user and directories on VM | COMMENT |
| LOW⚡ | extras/scaler/deploy/setup-scaler-host.sh | 87 | # Step 3: Upload binary and config | COMMENT |
| LOW | extras/scaler/deploy/setup-scaler-host.sh | 104 | # Step 4: Upload and install systemd services | COMMENT |
| LOW | extras/scaler/deploy/setup-scaler-host.sh | 130 | # Step 5: Start Windows scaler (Linux scaler needs its image first) | COMMENT |
| LOW | extras/scaler/internal/gcp/startup.sh | 102 | # Step 0: Remove any pre-existing runner service from the base image. | COMMENT |
| LOW | extras/scaler/internal/gcp/startup.sh | 301 | # Step 1: Read JIT config from GCP instance metadata | COMMENT |
| LOW⚡ | extras/scaler/internal/gcp/startup.sh | 321 | # Step 2: Log GPU and system info | COMMENT |
| LOW⚡ | extras/scaler/internal/gcp/startup.sh | 326 | # Step 3: Run the GitHub Actions runner as the correct user | COMMENT |
| LOW⚡ | extras/scaler/internal/gcp/startup.sh | 335 | # Step 4: Shut down the VM | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/compile-perf/breakdown.py | 532 | except Exception as e: # noqa: BLE001 — the table must never sink page rendering | CODE |
| LOW | tools/compile-perf/breakdown.py | 580 | except Exception as e: # noqa: BLE001 | CODE |
| LOW | tools/compile-perf/bench.py | 549 | except Exception: # noqa: BLE001 | CODE |
| LOW | tools/compile-perf/bench.py | 862 | except Exception as exc: # Keep other workloads running after an execution failure. | CODE |
| LOW | tools/compile-perf/bench.py | 991 | except Exception as exc: # A missing corpus or setup failure costs only this case. | CODE |
| LOW | tools/compile-perf/fetch_releases.py | 235 | except Exception as e: # noqa: BLE001 | CODE |
| MEDIUM | tools/compile-perf/fetch_releases.py | 231 | def verify(slangc): | CODE |
| LOW | tools/compile-perf/report.py | 326 | except Exception as e: # noqa: BLE001 — movers must never sink the report | CODE |
| LOW | tools/compile-perf/confirm.py | 149 | except Exception as exc: | CODE |
| LOW | tools/compile-perf/confirm.py | 213 | except Exception as exc: | CODE |
| LOW | .claude/hooks/stop.py | 56 | except Exception: | CODE |
| LOW | .claude/hooks/stop.py | 114 | except Exception: | CODE |
| MEDIUM | .claude/hooks/stop.py | 61 | def main(): | CODE |
| LOW | .github/workflows/nightly-mdl-perf-test.yml | 544 | except Exception as e: | CODE |
| LOW | extras/insttrace.py | 80 | except Exception as e: | CODE |
| LOW | extras/ci-gpu-stress-loop.py | 66 | except Exception as e: | CODE |
| MEDIUM | extras/split-ir-dump.py | 168 | print(f"Error: Dump file '{dump_file}' not found") | CODE |
| MEDIUM | extras/split-ir-dump.py | 177 | print("Error: Too many arguments") | CODE |
| LOW | extras/extract-spirv-sources.py | 58 | except Exception: | CODE |
| LOW | extras/extract-spirv-sources.py | 124 | except Exception: | CODE |
| LOW | extras/extract-spirv-sources.py | 129 | except Exception: | CODE |
| LOW⚡ | extras/extract-spirv-sources.py | 469 | except Exception: | CODE |
| MEDIUM | extras/ci/analyze-ci-parallelization.py | 69 | print("Error: No jobs to analyze") | CODE |
| MEDIUM⚡ | extras/ci/analyze-ci-parallelization.py | 309 | print(f"Error: File not found: {sys.argv[1]}", file=sys.stderr) | CODE |
| MEDIUM⚡ | extras/ci/analyze-ci-parallelization.py | 312 | print(f"Error: Permission denied: {sys.argv[1]}", file=sys.stderr) | CODE |
| MEDIUM⚡ | extras/ci/analyze-ci-parallelization.py | 315 | print(f"Error: Invalid JSON in {sys.argv[1]}: {e}", file=sys.stderr) | CODE |
| MEDIUM⚡ | extras/ci/analyze-ci-parallelization.py | 320 | print("Error: Invalid or empty JSON input", file=sys.stderr) | CODE |
| MEDIUM | extras/ci/analyze-ci-parallelization.py | 338 | print("Error: Expected JSON with 'jobs' array or array of jobs", file=sys.stderr) | CODE |
| MEDIUM | extras/ci/analyze-ci-parallelization.py | 345 | print("Error: No valid jobs found in input", file=sys.stderr) | CODE |
| MEDIUM | extras/ci/analytics/ci_job_collector.py | 531 | print("Error: --migrate requires --output-dir", file=sys.stderr) | CODE |
| MEDIUM | extras/ci/analytics/ci_job_collector.py | 574 | print(f"Error: {e}", file=sys.stderr) | CODE |
| MEDIUM | extras/ci/analytics/ci_post_status.py | 125 | print(f"Error: could not read {STATUS_FILE}: {e}", file=sys.stderr) | CODE |
| MEDIUM | extras/ci/analytics/ci_post_status.py | 186 | print(f"Error: commit failed:\n{result.stderr}", file=sys.stderr) | CODE |
| MEDIUM | extras/ci/analytics/ci_post_status.py | 201 | print(f"Error: pull --rebase failed:\n{pull.stderr}", file=sys.stderr) | CODE |
| MEDIUM | extras/ci/analytics/ci_post_status.py | 248 | print("Error: body cannot be empty.", file=sys.stderr) | CODE |
| MEDIUM | extras/ci/analytics/ci_visualization.py | 105 | print(f"Error: invalid runner config at {config_path}: {e}", file=sys.stderr) | CODE |
| MEDIUM | extras/ci/analytics/ci_visualization.py | 1578 | print(f"Error: no ci_jobs_*.json files found in {input_dir}", file=sys.stderr) | CODE |
| MEDIUM | extras/ci/analytics/ci_visualization.py | 1593 | print(f"Error: failed reading {path}: {e}", file=sys.stderr) | CODE |
| MEDIUM⚡ | extras/ci/analytics/ci_visualization.py | 1615 | print(f"Error: input JSON not found: {args.input}", file=sys.stderr) | CODE |
| MEDIUM⚡ | extras/ci/analytics/ci_visualization.py | 1618 | print(f"Error: invalid JSON in {args.input}: {e}", file=sys.stderr) | CODE |
| MEDIUM⚡ | extras/ci/analytics/ci_visualization.py | 1621 | print(f"Error: failed reading {args.input}: {e}", file=sys.stderr) | CODE |
| LOW | extras/ci/analytics/ci_health.py | 1854 | except Exception as e: # noqa: BLE001 — sampler must never break the health run | STRING |
| MEDIUM | extras/ci/analytics/pr_collector.py | 215 | print(f"Error: {e}", file=sys.stderr) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …s/slang-unit-test/unit-test-obfuscation-with-debug.cpp | 433 | // Step 1: Compile slang modules with -g2 + Obfuscation ON | COMMENT |
| LOW | …s/slang-unit-test/unit-test-obfuscation-with-debug.cpp | 455 | // Step 2: Generate SPIR-V with separate debug | COMMENT |
| LOW | …s/slang-unit-test/unit-test-obfuscation-with-debug.cpp | 540 | // Step 3: Verification | COMMENT |
| LOW | source/slang/slang-check-inheritance.cpp | 1166 | // Step 1: Express the constraint in terms of the concrete lookup source. | COMMENT |
| LOW | source/slang/slang-check-inheritance.cpp | 1179 | // Step 2: Compare the constraint's endpoints with `selfType`. A directed | COMMENT |
| LOW | source/slang/slang-check-inheritance.cpp | 1211 | // Step 3: Skip the constraint unless it applies to `selfType`. Only relevant | COMMENT |
| LOW | source/slang/slang-ir-glsl-legalize.cpp | 4918 | // Specifically, we need to check if the function has | COMMENT |
| LOW | source/slang/slang-ir-typeflow-specialize.cpp | 3518 | // Step 1: treat any non-concrete table (the explicit "none" | COMMENT |
| LOW | source/slang/slang-ir-typeflow-specialize.cpp | 3532 | // Step 2: it is safe to dereference `witnessTab` now. | COMMENT |
| LOW | source/slang/slang-ir-liveness.cpp | 466 | // We need to check if we are in the live start block, as we then need to process | COMMENT |
| LOW | source/slang/slang-ir-constexpr.cpp | 707 | // In the forward direction we need to check if all of the operands | COMMENT |
| LOW | source/slang/slang-ir-legalize-matrix-types.cpp | 620 | // lowered (e.g. uint4x4), so we need to check if we should lower the operand even if we | COMMENT |
| LOW | source/slang/slang-check-expr.cpp | 784 | // We need to check if the lookup should resolve to a definition in an implementation type | COMMENT |
| LOW | source/slang/slang-check-constraint.cpp | 3953 | // If they refer to different declarations, we need to check if one type's super type | COMMENT |
| LOW | source/slang/slang-serialize-fossil.cpp | 1268 | // Now we need to check if we've previously read in | COMMENT |
| LOW | source/slang/slang-emit-spirv.cpp | 6218 | // we need to check if we actually write to it. | COMMENT |
| LOW | source/slang/slang-emit-spirv.cpp | 11134 | // First we need to check if the debug variable has a backing ordinary | COMMENT |
| LOW | source/slang/slang-ir-entry-point-uniforms.cpp | 203 | // If the base cases above failed, we need to check if we are dealing with | COMMENT |
| LOW⚡ | extras/update-spirv-tools.sh | 41 | # Step 1: Synchronize and update submodules | COMMENT |
| LOW⚡ | extras/update-spirv-tools.sh | 46 | # Step 2: Fetch and resolve the commit hash | COMMENT |
| LOW⚡ | extras/update-spirv-tools.sh | 65 | # Step 3: Create a branch for the update | COMMENT |
| LOW⚡ | extras/update-spirv-tools.sh | 72 | # Step 4: Update the SPIRV-Tools submodule to the specified version | COMMENT |
| LOW⚡ | extras/update-spirv-tools.sh | 76 | # Step 5: Build spirv-tools to generate files | COMMENT |
| LOW | extras/update-spirv-tools.sh | 97 | # Step 6: Update SPIRV-Headers to what SPIRV-Tools uses | COMMENT |
| LOW | extras/update-spirv-tools.sh | 114 | # Step 7: Copy the generated files from spirv-tools/build-generated/ to spirv-tools-generated/ | COMMENT |
| LOW | extras/update-spirv-tools.sh | 136 | # Step 8: Stage the changes | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 81 | # Step 1: Verify Slang Debug Build | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 101 | # Step 2: Clone dxvk-remix | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 127 | # Step 3: Comment out Slang in packman-external.xml | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 163 | # Step 4: Download packman dependencies (excluding Slang) | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 175 | # Step 5: Create Slang directory with our Debug build | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 220 | # Step 6: Build shaders | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 253 | # Step 7: Verify shader compilation output | COMMENT |
| LOW | extras/scaler/deploy/setup-scaler-host.sh | 57 | # Step 1: Create VM if it doesn't exist | COMMENT |
| LOW⚡ | extras/scaler/deploy/setup-scaler-host.sh | 78 | # Step 2: Create scaler user and directories on VM | COMMENT |
| LOW⚡ | extras/scaler/deploy/setup-scaler-host.sh | 87 | # Step 3: Upload binary and config | COMMENT |
| LOW | extras/scaler/deploy/setup-scaler-host.sh | 104 | # Step 4: Upload and install systemd services | COMMENT |
| LOW | extras/scaler/deploy/setup-scaler-host.sh | 130 | # Step 5: Start Windows scaler (Linux scaler needs its image first) | COMMENT |
| LOW | extras/scaler/internal/gcp/startup.sh | 102 | # Step 0: Remove any pre-existing runner service from the base image. | COMMENT |
| LOW | extras/scaler/internal/gcp/startup.sh | 301 | # Step 1: Read JIT config from GCP instance metadata | COMMENT |
| LOW⚡ | extras/scaler/internal/gcp/startup.sh | 321 | # Step 2: Log GPU and system info | COMMENT |
| LOW⚡ | extras/scaler/internal/gcp/startup.sh | 326 | # Step 3: Run the GitHub Actions runner as the correct user | COMMENT |
| LOW⚡ | extras/scaler/internal/gcp/startup.sh | 335 | # Step 4: Shut down the VM | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/coverage-html/slang-coverage-merge.py | 177 | CODE | |
| LOW | tools/coverage-html/slang-coverage-html.py | 1033 | CODE | |
| LOW | tools/coverage-html/lcov_io.py | 523 | CODE | |
| LOW | tools/shader-coverage/slang-coverage-to-lcov.py | 160 | CODE | |
| LOW | tools/shader-coverage/slang-coverage-to-lcov.py | 203 | CODE | |
| LOW | tools/compile-perf/breakdown.py | 259 | CODE | |
| LOW | tools/compile-perf/track.py | 44 | CODE | |
| LOW | tools/compile-perf/track.py | 170 | CODE | |
| LOW | tools/compile-perf/trend.py | 694 | CODE | |
| LOW | tools/compile-perf/trend.py | 951 | CODE | |
| LOW | tools/compile-perf/bench.py | 85 | CODE | |
| LOW | tools/compile-perf/fetch_releases.py | 105 | CODE | |
| LOW | tools/compile-perf/daily_movers.py | 59 | CODE | |
| LOW | tools/compile-perf/sweep.py | 62 | CODE | |
| LOW | tools/compile-perf/test_sampling.py | 227 | CODE | |
| LOW | tools/compile-perf/report.py | 174 | CODE | |
| LOW | tools/compile-perf/report.py | 270 | CODE | |
| LOW | tools/compile-perf/lib/analyze.py | 271 | CODE | |
| LOW | tools/compile-perf/lib/analyze.py | 332 | CODE | |
| LOW | .claude/hooks/stop.py | 9 | CODE | |
| LOW | .claude/hooks/stop.py | 61 | CODE | |
| LOW | …slang-review-post-github/scripts/post_github_review.py | 175 | CODE | |
| LOW | …slang-review-post-github/scripts/post_github_review.py | 424 | CODE | |
| LOW | extras/verify-user-skills-package.py | 247 | CODE | |
| LOW | extras/insttrace.py | 20 | CODE | |
| LOW | extras/ci-gpu-stress-loop.py | 284 | CODE | |
| LOW | extras/ci-gpu-stress-loop.py | 351 | CODE | |
| LOW | extras/ci-gpu-stress-loop.py | 627 | CODE | |
| LOW | extras/split-ir-dump.py | 55 | CODE | |
| LOW | extras/extract-spirv-sources.py | 452 | CODE | |
| LOW | extras/extract-spirv-sources.py | 165 | CODE | |
| LOW | extras/extract-spirv-sources.py | 323 | CODE | |
| LOW | extras/extract-spirv-sources.py | 167 | CODE | |
| LOW | extras/ci/gh_api.py | 91 | CODE | |
| LOW | extras/ci/ci-queue-status.py | 108 | CODE | |
| LOW | extras/ci/ci-queue-status.py | 266 | CODE | |
| LOW | extras/ci/ci-queue-status.py | 404 | CODE | |
| LOW | extras/ci/ci-queue-status.py | 460 | CODE | |
| LOW | extras/ci/analytics/ci_job_collector.py | 205 | CODE | |
| LOW | extras/ci/analytics/ci_job_collector.py | 435 | CODE | |
| LOW | extras/ci/analytics/ci_post_status.py | 228 | CODE | |
| LOW | extras/ci/analytics/ci_visualization.py | 341 | CODE | |
| LOW | extras/ci/analytics/ci_visualization.py | 653 | CODE | |
| LOW | extras/ci/analytics/ci_visualization.py | 663 | CODE | |
| LOW | extras/ci/analytics/ci_health.py | 485 | CODE | |
| LOW | extras/ci/analytics/ci_health.py | 1302 | CODE | |
| LOW | extras/ci/analytics/ci_health.py | 1547 | CODE | |
| LOW | extras/ci/analytics/ci_hosted_runner_usage.py | 124 | CODE | |
| LOW | extras/ci/analytics/pr_collector.py | 80 | CODE | |
| LOW | extras/ci/analytics/tests/test_ci_analytics.py | 290 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | source/core/core_lldb.py | 34 | # Check if a pointer is nullptr | COMMENT |
| LOW | .claude/hooks/stop.py | 24 | # Check if this is an assistant message with TodoWrite tool use | COMMENT |
| LOW | .claude/hooks/stop.py | 48 | # Check if all todos are completed | COMMENT |
| LOW | .claude/hooks/stop.py | 84 | # Check if validation returned a tuple (incomplete todos found) | COMMENT |
| LOW | docs/scripts/release-note.sh | 101 | # Check if the PR is marked as a breaking change | COMMENT |
| LOW | .github/workflows/release.yml | 204 | # Check if symlink exists | COMMENT |
| LOW | .github/workflows/release.yml | 218 | # Check if resolved file exists | COMMENT |
| LOW | .github/workflows/ci-slang-sanitizer.yml | 347 | # Check if all findings in this log are expected. | COMMENT |
| LOW | .github/workflows/ci-slang-sanitizer.yml | 369 | # Check if any Direct leak block matches an expected pattern. | COMMENT |
| LOW | .github/workflows/ci-materialx-regression-test.yml | 211 | # Check if shader was created | COMMENT |
| LOW | .github/actions/common-test-setup/action.yml | 102 | # Check if the output contains "llvm" (case-insensitive) | COMMENT |
| LOW | extras/verify-documented-compiler-version.sh | 9 | # Check if required files exist | COMMENT |
| LOW | extras/verify-documented-compiler-version.sh | 124 | # Check if current version matches any expected version | COMMENT |
| LOW | extras/split-ir-dump.py | 138 | # Check if we're reading from stdin or a file | COMMENT |
| LOW | extras/install-git-hooks.sh | 40 | # Check if hook already exists | COMMENT |
| LOW | extras/update-spirv-tools.sh | 30 | # Check if we're in the repository root | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 135 | # Check if file exists | COMMENT |
| LOW⚡ | extras/repro-remix.sh | 145 | # Check if Slang section is already commented out | COMMENT |
| LOW | extras/check-inst-version-changes.sh | 14 | # Check if running in GitHub Actions | COMMENT |
| LOW | extras/check-inst-version-changes.sh | 32 | # Check if slang-ir.h was modified and if the version constants were changed | COMMENT |
| LOW | extras/check-inst-version-changes.sh | 34 | # Check if either version constant was modified | COMMENT |
| LOW | extras/check-inst-version-changes.sh | 49 | # Check if the serialization version constant was modified | COMMENT |
| LOW | extras/check-inst-version-changes.sh | 108 | # Check if we need to add warnings | COMMENT |
| LOW | extras/check-inst-version-changes.sh | 110 | # Check if the version constants have already been updated | COMMENT |
| LOW | extras/check-inst-version-changes.sh | 134 | # Check if the serialization version has already been updated | COMMENT |
| LOW | extras/check-inst-version-changes.sh | 175 | # Set output to indicate artifact was created | COMMENT |
| LOW | extras/check-inst-version-changes.sh | 184 | # Set output to indicate no artifact was created | COMMENT |
| LOW | extras/ci/analytics/ci_post_status.py | 178 | # Check if there are changes | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .github/workflows/check-doc-gaps.yml | 3 | # Reports the doc gaps the agentic test suite has found in the generated | COMMENT |
| MEDIUM | .github/workflows/check-doc-gaps.yml | 21 | # agentic-tests nightly, which needs a full slang build and would make the | COMMENT |
| MEDIUM | .github/workflows/check-doc-gaps.yml | 27 | # 05:00 UTC, an hour after ci-agentic-tests-nightly's 04:00 slot, so the | COMMENT |
| MEDIUM | .github/workflows/pr-board-sync.yml | 8 | # on the event-driven happy path, | COMMENT |
| MEDIUM | .github/workflows/pr-board-sync.yml | 42 | # This is the event-driven half of the PR maintenance state machine; sweep mode | COMMENT |
| MEDIUM | .github/workflows/nightly-slang-test.yml | 5 | # This is Phase B2 of the agentic-tests framework — the suite is | COMMENT |
| MEDIUM | .github/workflows/nightly-slang-test.yml | 144 | # `OpSource Unknown`. The agentic suite was generated against | COMMENT |
| MEDIUM | .github/workflows/nightly-slang-test.yml | 245 | # than in-job steps) is required because the agentic-tests job ends with | COMMENT |
| MEDIUM | .github/workflows/ci-slang-coverage-test.yml | 303 | # --with-agentic-tests rolls the doc-anchored bundles under | COMMENT |
| MEDIUM | .github/workflows/ci-slang-coverage-test.yml | 307 | # agentic pass uses the same gate as nightly-slang-test.yml | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .claude/hooks/stop.py | 88 | # Create a detailed message about incomplete todos | COMMENT |
| MEDIUM | .github/workflows/ci-slang-build.yml | 322 | # Create a staging directory for artifacts with config-specific subdirectory | COMMENT |
| MEDIUM | .github/workflows/ci-slang-build-container.yml | 173 | # Create a staging directory for artifacts with config-specific subdirectory | COMMENT |
| MEDIUM | extras/split-ir-dump.py | 115 | # Create an index file | COMMENT |
| MEDIUM⚡ | extras/repro-remix.sh | 182 | # Create the directory (packman didn't create it since we commented it out) | COMMENT |
| MEDIUM⚡ | extras/ci/analytics/tests/test_ci_analytics.py | 1372 | # Create a monthly file and a non-monthly file | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/coverage-html/slang-coverage-merge.py | 38 | CODE | |
| LOW | tools/coverage-html/slang-coverage-html.py | 38 | CODE | |
| LOW | tools/coverage-html/lcov_io.py | 20 | CODE | |
| LOW | tools/coverage-html/tests/test_merge.py | 11 | CODE | |
| LOW | tools/compile-perf/breakdown.py | 33 | CODE | |
| LOW | tools/compile-perf/breakdown.py | 42 | CODE | |
| LOW | tools/compile-perf/breakdown.py | 42 | CODE | |
| LOW | tools/compile-perf/breakdown.py | 42 | CODE | |
| LOW | tools/compile-perf/breakdown.py | 42 | CODE | |
| LOW | tools/compile-perf/sweep_report.py | 17 | CODE | |
| LOW | tools/compile-perf/ladder_scaling.py | 16 | CODE | |
| LOW | tools/compile-perf/daily_movers.py | 25 | CODE | |
| LOW | tools/compile-perf/compare_repro.py | 15 | CODE | |
| LOW | …slang-review-post-github/scripts/post_github_review.py | 8 | CODE | |
| LOW | …-review-post-github/scripts/test_post_github_review.py | 4 | CODE | |
| LOW | extras/verify-user-skills-package.py | 4 | CODE | |
| LOW | extras/split-ir-dump.py | 25 | CODE | |
| LOW | extras/extract-spirv-sources.py | 21 | CODE | |
| LOW | extras/ci/analyze-ci-parallelization.py | 32 | CODE | |
| LOW | extras/ci/ci-queue-status.py | 26 | CODE | |
| LOW | extras/tests/test_verify_user_skills_package.py | 4 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/gfx-unit-test/gfx-test-texture-util.cpp | 165 | // TODO: Add testing support for BC formats | COMMENT |
| LOW | tools/slang-fiddle/slang-fiddle-template.cpp | 417 | // TODO: implement the important stuff... | COMMENT |
| LOW | tools/gfx/immediate-renderer-base.cpp | 708 | // TODO: implement fence signal. | COMMENT |
| LOW | tools/gfx/cuda/cuda-command-queue.cpp | 45 | // TODO: implement fence. | COMMENT |
| LOW | source/slang/slang-parser.cpp | 112 | // TODO: implement two pass parsing for file reference and struct type recognition | COMMENT |
| LOW | source/slang/slang-compile-request.cpp | 848 | // TODO: implement the logic to output generated documents to target directory/zip file. | COMMENT |
| LOW | source/slang/slang-ir-legalize-types.cpp | 359 | // TODO: implement legalization of non-simple return types | COMMENT |
| LOW | source/slang/slang-ir-legalize-types.cpp | 455 | // TODO: implement legalization of non-simple return types | COMMENT |
| LOW | source/slang/slang-ir-legalize-types.cpp | 555 | // TODO: implement legalization of non-simple return types | COMMENT |
| LOW | source/slang/slang-ir-legalize-types.cpp | 689 | // TODO: implement legalization of non-simple return types | COMMENT |
| LOW | source/slang/slang-reflection-api.cpp | 254 | // TODO: implement more helpers here | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | source/slang/slang-ast-decl.h | 308 | // we have auto-generated code for things like dumping and serialization | COMMENT |
| HIGH | source/slang/slang-ir-insts.h | 3479 | // Keep the 1,2,3,4 parameter helper methods as requested | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | source/compiler-core/slang-spirv-core-grammar.h | 70 | // Adding to this? Don't forget to update the embedding generator | COMMENT |
| LOW | source/compiler-core/slang-perfect-hash.cpp | 42 | // If you change this, don't forget to also sync the version below in | COMMENT |
| MEDIUM | source/slang/slang-ir-legalize-varying-params.cpp | 805 | // As discussed above, sometimes `varLayout` will refer to an | COMMENT |
| MEDIUM | source/slang/slang-ir-synthesize-active-mask.cpp | 1567 | // As discussed above, we only process the first `case` with | COMMENT |
| LOW | source/slang/slang-lower-to-ir.cpp | 15761 | // that if we have obfuscation enabled we don't forget to obfuscate. | COMMENT |
| LOW | external/bump-glslang.sh | 234 | echo "Please also don't forget to push the new commits in external/glslang and" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/coverage-html/tests/test_renderer.py | 501 | out_dir = os.path.join(self.tmp, "placeholder") | CODE |
| LOW⚡ | tools/slang-unit-test/unit-test-crypto.cpp | 50 | const String str("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod " | CODE |
| LOW⚡ | tools/slang-unit-test/unit-test-crypto.cpp | 50 | const String str("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod " | CODE |
| LOW⚡ | tools/slang-unit-test/unit-test-crypto.cpp | 60 | const String str1("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod " | CODE |
| LOW⚡ | tools/slang-unit-test/unit-test-crypto.cpp | 60 | const String str1("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod " | CODE |
| LOW | tools/slang-unit-test/unit-test-crypto.cpp | 74 | const String str("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod " | CODE |
| LOW | tools/slang-unit-test/unit-test-crypto.cpp | 74 | const String str("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod " | CODE |
| LOW | tests/spvdb/tests/unit/test_module.cpp | 38 | SUCCEED("placeholder"); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | examples/shader-coverage-tutorial/run-tutorial.sh | 11 | # Usage: | COMMENT |
| LOW | extras/falcor.sh | 38 | # Usage: | COMMENT |
| LOW | extras/compile-sascha-willems-shaders.sh | 11 | # Usage: | COMMENT |
| LOW | extras/repro-remix.sh | 10 | # Usage: | COMMENT |
| LOW | extras/scaler/deploy/update-scaler.sh | 6 | # Usage: | COMMENT |
| LOW | extras/scaler/deploy/setup-scaler-host.sh | 12 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/user-guide/06-interfaces-generics.md | 21 | Slang's syntax for defining interfaces is similar to `interface`s in C# and `protocol`s in Swift. In this example, the ` | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …-review-post-github/scripts/test_post_github_review.py | 23 | CODE |