AI Slop Code Risk Monitor

ghc/ghc

SlopCodeMonitor badge for ghc/ghc Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

Mirror of the Glasgow Haskell Compiler. Please submit issues and patches to GHC's Gitlab instance (https://gitlab.haskell.org/ghc/ghc). First time contributors are encouraged to get started with the newcomers info (https://gitlab.haskell.org/ghc/ghc/wikis/contributing).

3.6 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for ghc/ghc, a Haskell project with 3,275 GitHub stars. SynthScan examined 259,785 lines of code across 1260 source files, recording 874 pattern matches distributed across 17 syntactic categories. The legacy adjusted pattern signal is 3.6 (Low 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.

3.6
Adjusted Signal
3.6
Raw Pattern Score
100%
Time Factor
2026-10-31
Last Push
3.3K
Stars
Haskell
Language
259.8K
Lines of Code
1.3K
Files
874
Pattern Hits
2026-10-31
Scan Date
0.01
HC Hit Rate

Risk Review · Payload v1

Use each vector to guide manual verification of the underlying findings.

Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.

Cognitive Ownership Risk 12.8/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 740 finding(s).

Hallucinated Dependency & Supply Chain Risk 0.9/100 · LOW

Are imports declared and package/API names verified? 50 finding(s).

Agent Over-Engineering Ratio 3.8/100 · LOW

Are wrappers, guards, and repeated structures necessary? 123 finding(s).

PR Review Velocity Impact 17.9/100 · LOW

Which changes need focused human review? 874 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

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.

Severity Breakdown

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.

CRITICAL 0HIGH 10MEDIUM 49LOW 815

Directory Score Breakdown

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.

Pattern Findings

The scanner identified 874 distinct pattern matches across 17 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.

Over-Commented Block626 hits · 592 pts
SeverityFileLineSnippetContext
LOW.gitlab-ci.yml41 # Makes ci.sh isolate CABAL_DIRCOMMENT
LOW.gitlab-ci.yml81# across all of the platforms which we support. In addition, we pushCOMMENT
LOW.gitlab-ci.yml101#COMMENT
LOW.gitlab-ci.yml201#COMMENT
LOW.gitlab-ci.yml221# though. The interruptible flag is *per job*, but once a pipeline has runCOMMENT
LOW.gitlab-ci.yml801# pipeline.COMMENT
LOWhie.yaml1# This is a IDE configuration file which tells IDEs such as `ghcide` howCOMMENT
LOW.gitlab/ci.sh261 git config user.email "ghc-ci@gitlab-haskell.org"COMMENT
LOW.gitlab/rel_eng/upload.sh1#!/usr/bin/env nix-shellCOMMENT
LOW.gitlab/rel_eng/upload.sh21#COMMENT
LOWhadrian/stack.yaml1# This is a Stack project-level configuration file. It allows Stack to build theCOMMENT
LOWhadrian/hie.yaml1# This is a IDE configuration file which tells IDEs such as `ghcide` howCOMMENT
LOWrts/Weak.c1/* -----------------------------------------------------------------------------COMMENT
LOWrts/Weak.c121 }COMMENT
LOWrts/IOManager.h61#endifCOMMENT
LOWrts/IOManager.h81 #define IOMGR_ENABLED_WIN32_LEGACYCOMMENT
LOWrts/IOManager.h101#elif defined(IOMGR_DEFAULT_NON_THREADED_SELECTBIS)COMMENT
LOWrts/IOManager.h121 #define IOMGR_ENABLED_STR_SELECT ""COMMENT
LOWrts/IOManager.h161#if defined(IOMGR_ENABLED_SELECT)COMMENT
LOWrts/PathUtils.h21#define open wopenCOMMENT
LOWrts/xxhash.h321 */COMMENT
LOWrts/xxhash.h361# undef XXH32COMMENT
LOWrts/xxhash.h381# undef XXH3_64bitsCOMMENT
LOWrts/xxhash.h421# define XXH_IPREF(Id) XXH_NAMESPACE ## IdCOMMENT
LOWrts/xxhash.h441 * Stable APICOMMENT
LOWrts/xxhash.h461# define XXH_NAME2(A,B) XXH_CAT(A,B)COMMENT
LOWrts/xxhash.h481# define XXH64_canonicalFromHash XXH_NAME2(XXH_NAMESPACE, XXH64_canonicalFromHash)COMMENT
LOWrts/xxhash.h501# define XXH3_128bits XXH_NAME2(XXH_NAMESPACE, XXH3_128bits)COMMENT
LOWrts/xxhash.h521COMMENT
LOWrts/xxhash.h1701 XXH32_hash_t reserved32; /*!< Reserved field, needed for padding anyways*/COMMENT
LOWrts/xxhash.h2301# define XXH_FORCE_MEMORY_ACCESS 1COMMENT
LOWrts/xxhash.h2321# define XXH_FORCE_ALIGN_CHECK 1COMMENT
LOWrts/xxhash.h2421# define XXH_NO_INLINE staticCOMMENT
LOWrts/xxhash.h2441# define XXH_STATIC staticCOMMENT
LOWrts/xxhash.h2481# elseCOMMENT
LOWrts/xxhash.h2541***************************************/COMMENT
LOWrts/xxhash.h2781 * @p x and @p r may be evaluated multiple times.COMMENT
LOWrts/xxhash.h2901 */COMMENT
LOWrts/xxhash.h3821#if (defined(__GNUC__) && (__GNUC__ >= 3)) \COMMENT
LOWrts/xxhash.h3841#endifCOMMENT
LOWrts/xxhash.h3981 || (defined(__BYTE_ORDER__) && __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) \COMMENT
LOWrts/xxhash.h4001/* __ARM_FEATURE_SVE is only supported by GCC & Clang. */COMMENT
LOWrts/xxhash.h4021# elif XXH_VECTOR == XXH_SSE2 /* sse2 */COMMENT
LOWrts/xxhash.h4221# pragma push_macro("vector")COMMENT
LOWrts/xxhash.h4241typedef __vector unsigned xxh_u32x4;COMMENT
LOWrts/xxhash.h4341# if XXH_SIZE_OPT >= 1COMMENT
LOWrts/xxhash.h4861/* ======= Long Keys ======= */COMMENT
LOWrts/xxhash.h5921typedef void (*XXH3_f_accumulate)(xxh_u64* XXH_RESTRICT, const xxh_u8* XXH_RESTRICT, const xxh_u8* XXH_RESTRICT, size_t)COMMENT
LOWrts/xxhash.h5941COMMENT
LOWrts/xxhash.h5961#elif (XXH_VECTOR == XXH_SVE)COMMENT
LOWrts/RetainerProfile.c281 timesAnyObjectVisited++;COMMENT
LOWrts/Task.h121 Condition cond; // used for sleeping & waking up this taskCOMMENT
LOWrts/Task.h201// Create a new Task for a bound thread. This Task must be releasedCOMMENT
LOWrts/Task.h221void freeMyTask(void);COMMENT
LOWrts/Task.h241#if defined(THREADED_RTS)COMMENT
LOWrts/Task.h261COMMENT
LOWrts/Task.h301// and in practice on some platforms it is a pointer type.COMMENT
LOWrts/StablePtr.h41#if defined(THREADED_RTS)COMMENT
LOWrts/STM.c81#include "RtsFlags.h"COMMENT
LOWrts/STM.c281 // otherwise.COMMENT
566 more matches not shown…
Decorative Section Separators27 hits · 87 pts
SeverityFileLineSnippetContext
MEDIUM.gitlab/common.sh2# ----------------------COMMENT
MEDIUMrts/sm/Sanity.c254 * Root ────→ │ Just │ ╭───→ │ Weak# │ ←─────── weak_ptr_listCOMMENT
MEDIUMrts/sm/Sanity.c299 * ╰───→ │ Weak# │ ←─────┤ │COMMENT
MEDIUMtestsuite/driver/testglobals.py10# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testglobals.py285# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testglobals.py350# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/perf_notes.py885 # --------------------------------------------COMMENT
MEDIUM⚡testsuite/driver/testlib.py1172# ----------------------------------------------------------------COMMENT
MEDIUM⚡testsuite/driver/testlib.py3417# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py120# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py1471# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py1504# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py1916# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py1937# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py1967# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py2140# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py2273# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py2402# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py2508# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py2622# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py3299# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py3584# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/testlib.py3597# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/runtests.py72# -----------------------------------------------------------------------------COMMENT
MEDIUMtestsuite/driver/runtests.py340# -----------------------------------------------------------------------------COMMENT
MEDIUM⚡utils/completion/ghc.bash1# ========================================COMMENT
MEDIUM⚡utils/completion/ghc.bash3# ========================================COMMENT
Unused Imports48 hits · 46 pts
SeverityFileLineSnippetContext
LOW.gitlab/rel_eng/upload_ghc_libs.py19CODE
LOW.gitlab/rel_eng/upload_ghc_libs.py23CODE
LOW.gitlab/rel_eng/upload_ghc_libs.py23CODE
LOW.gitlab/rel_eng/mk-ghcup-metadata/mk_ghcup_metadata.py27CODE
LOW.gitlab/rel_eng/mk-ghcup-metadata/mk_ghcup_metadata.py27CODE
LOW.gitlab/rel_eng/mk-ghcup-metadata/mk_ghcup_metadata.py28CODE
LOW.gitlab/rel_eng/mk-ghcup-metadata/mk_ghcup_metadata.py29CODE
LOW.gitlab/rel_eng/mk-ghcup-metadata/mk_ghcup_metadata.py31CODE
LOW.gitlab/rel_eng/mk-ghcup-metadata/mk_ghcup_metadata.py31CODE
LOW.gitlab/rel_eng/mk-ghcup-metadata/mk_ghcup_metadata.py31CODE
LOW.gitlab/rel_eng/mk-ghcup-metadata/mk_ghcup_metadata.py31CODE
LOW.gitlab/rel_eng/mk-ghcup-metadata/mk_ghcup_metadata.py32CODE
LOW.gitlab/rel_eng/mk-ghcup-metadata/mk_ghcup_metadata.py33CODE
LOW.gitlab/rel_eng/mk-ghcup-metadata/mk_ghcup_metadata.py34CODE
LOW.gitlab/rel_eng/mk-ghcup-metadata/mk_ghcup_metadata.py35CODE
LOWrts/gen_event_types.py6CODE
LOWtestsuite/driver/my_typing.py11CODE
LOWtestsuite/driver/my_typing.py12CODE
LOWtestsuite/driver/my_typing.py21CODE
LOWtestsuite/driver/testglobals.py5CODE
LOWtestsuite/driver/testglobals.py7CODE
LOWtestsuite/driver/testglobals.py8CODE
LOWtestsuite/driver/cpu_features.py3CODE
LOWtestsuite/driver/cpu_features.py4CODE
LOWtestsuite/driver/perf_notes.py14CODE
LOWtestsuite/driver/perf_notes.py22CODE
LOWtestsuite/driver/perf_notes.py29CODE
LOWtestsuite/driver/testlib.py18CODE
LOWtestsuite/driver/testlib.py26CODE
LOWtestsuite/driver/testlib.py31CODE
LOWtestsuite/driver/testlib.py32CODE
LOWtestsuite/driver/testlib.py36CODE
LOWtestsuite/driver/junit.py1CODE
LOWtestsuite/driver/testutil.py5CODE
LOWtestsuite/driver/testutil.py8CODE
LOWtestsuite/driver/_elffile.py33CODE
LOWtestsuite/driver/runtests.py15CODE
LOWtestsuite/driver/runtests.py38CODE
LOWtestsuite/driver/runtests.py38CODE
LOWtestsuite/driver/runtests.py279CODE
LOWtestsuite/tests/linters/regex-linters/linter.py5CODE
LOWtestsuite/tests/linters/regex-linters/linter.py11CODE
LOWtestsuite/tests/linters/regex-linters/linter.py11CODE
LOWutils/haddock/doc/conf.py3CODE
LOWutils/haddock/doc/conf.py4CODE
LOWutils/haddock/doc/conf.py5CODE
LOWdocs/users_guide/conf.py14CODE
LOWdocs/users_guide/utils.py3CODE
Empty Error Handlers9 hits · 45 pts
SeverityFileLineSnippetContext
HIGHhadrian/bootstrap/bootstrap.py298except:CODE
HIGHtestsuite/driver/cpuinfo.py353except ImportError:CODE
HIGHtestsuite/driver/cpuinfo.py611except Exception as err:CODE
HIGHtestsuite/driver/cpuinfo.py1781except Exception:CODE
HIGHtestsuite/driver/cpuinfo.py1769except Exception:CODE
HIGHtestsuite/driver/testlib.py2721except Exception:CODE
HIGHtestsuite/driver/testutil.py122except:CODE
HIGHtestsuite/driver/runtests.py522except KeyboardInterrupt:CODE
HIGHtestsuite/tests/linters/regex-linters/linter.py87except UnicodeDecodeError as e:CODE
Excessive Try-Catch Wrapping48 hits · 42 pts
SeverityFileLineSnippetContext
LOW.gitlab/rel_eng/fetch-gitlab-artifacts/fetch_gitlab.py149 except Exception as e:CODE
MEDIUMtestsuite/driver/cpuinfo.py461def _to_decimal_string(ticks):CODE
MEDIUMtestsuite/driver/cpuinfo.py491def _hz_short_to_full(ticks, scale):CODE
MEDIUMtestsuite/driver/cpuinfo.py510def _hz_friendly_to_full(hz_string):CODE
MEDIUMtestsuite/driver/cpuinfo.py532def _hz_short_to_friendly(ticks, scale):CODE
MEDIUMtestsuite/driver/cpuinfo.py690def _parse_dmesg_output(output):CODE
LOWtestsuite/driver/cpuinfo.py394 except Exception:CODE
LOWtestsuite/driver/cpuinfo.py452 except Exception:CODE
LOWtestsuite/driver/cpuinfo.py488 except Exception:CODE
LOWtestsuite/driver/cpuinfo.py507 except Exception:CODE
LOWtestsuite/driver/cpuinfo.py529 except Exception:CODE
LOWtestsuite/driver/cpuinfo.py563 except Exception:CODE
LOWtestsuite/driver/cpuinfo.py611 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py779 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py1604 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py1717 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py1769 except Exception:CODE
LOWtestsuite/driver/cpuinfo.py1781 except Exception:CODE
LOWtestsuite/driver/cpuinfo.py1814 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py1861 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py1958 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py2117 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py2205 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py2280 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py2362 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py2446 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py2552 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py2620 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py2654 except Exception as err:CODE
LOWtestsuite/driver/cpuinfo.py2797 except Exception as err:CODE
MEDIUMtestsuite/driver/testlib.py2225def report_stats(name, way, metric, gen_stat):CODE
LOWtestsuite/driver/testlib.py732 except Exception as e:CODE
LOWtestsuite/driver/testlib.py1714 except Exception as e:CODE
LOWtestsuite/driver/testlib.py1725 except Exception as e:CODE
LOWtestsuite/driver/testlib.py1733 except Exception as e:CODE
LOWtestsuite/driver/testlib.py2721 except Exception:CODE
LOWtestsuite/driver/testlib.py3296 except Exception:CODE
LOWtestsuite/driver/testlib.py3444 except Exception as e:CODE
LOWtestsuite/driver/testlib.py3455 except Exception as e:CODE
LOWtestsuite/driver/testlib.py3559 except Exception as e:CODE
LOWtestsuite/driver/runtests.py358except Exception as e:CODE
LOWtestsuite/driver/runtests.py471 except Exception as e:CODE
LOW…uite/tests/linters/regex-linters/check-rts-includes.py22 except Exception as e:CODE
LOW…uite/tests/linters/regex-linters/check-rts-includes.py52 except Exception as e:CODE
LOW…uite/tests/linters/regex-linters/check-rts-includes.py94 except Exception as e:CODE
LOWtestsuite/tests/linters/regex-linters/linter.py89 except Exception as e:STRING
MEDIUMtestsuite/tests/linters/checkUniques/check-uniques.py40 print("Error: check-uniques: run from wrong directory?")CODE
MEDIUMtestsuite/tests/linters/checkUniques/check-uniques.py44 print("Error: check-uniques: Found Unique conflict")CODE
Hyper-Verbose Identifiers38 hits · 26 pts
SeverityFileLineSnippetContext
LOWrts/gen_event_types.py157def generate_event_types_array() -> str:CODE
LOWrts/gen_event_types.py184def generate_event_types_defines() -> str:CODE
LOWtestsuite/driver/cpuinfo.py251 def sysctl_machdep_cpu_hw_cpufrequency():CODE
LOWtestsuite/driver/cpuinfo.py348def _read_windows_registry_key(key_name, field_name):CODE
LOWtestsuite/driver/cpuinfo.py638def _parse_cpu_brand_string_dx(cpu_string):CODE
LOWtestsuite/driver/cpuinfo.py892def _filter_dict_keys_with_empty_values(info, acceptable_values = {}):CODE
LOWtestsuite/driver/cpuinfo.py1100 def get_max_extension_support(self):CODE
LOWtestsuite/driver/cpuinfo.py1537def _get_cpu_info_from_cpuid_actual():CODE
LOWtestsuite/driver/cpuinfo.py1612def _get_cpu_info_from_cpuid_subprocess_wrapper(queue):CODE
LOWtestsuite/driver/cpuinfo.py1723def _get_cpu_info_from_proc_cpuinfo():CODE
LOWtestsuite/driver/cpuinfo.py1819def _get_cpu_info_from_cpufreq_info():CODE
LOWtestsuite/driver/cpuinfo.py1995def _get_cpu_info_from_ibm_pa_features():CODE
LOWtestsuite/driver/cpuinfo.py2122def _get_cpu_info_from_cat_var_run_dmesg_boot():CODE
LOWtestsuite/driver/cpuinfo.py2146def _get_cpu_info_from_sysctl():CODE
LOWtestsuite/driver/cpuinfo.py2210def _get_cpu_info_from_sysinfo():CODE
LOWtestsuite/driver/cpuinfo.py2451def _get_cpu_info_from_registry():CODE
LOWtestsuite/driver/cpuinfo.py2624def _get_cpu_info_from_platform_uname():CODE
LOWtestsuite/driver/perf_notes.py252def parse_allowed_perf_changes(commitMsg: strCODE
LOWtestsuite/driver/perf_notes.py538def get_commit_metric_value_str_or_none(gitNoteRef,CODE
LOW⚡testsuite/driver/testlib.py606def pre_cmd_timeout_multiplier( val: float ):CODE
LOW⚡testsuite/driver/testlib.py609def _pre_cmd_timeout_multiplier( name, opts, v ):CODE
LOW⚡testsuite/driver/testlib.py612def compile_timeout_multiplier( val: float ):CODE
LOW⚡testsuite/driver/testlib.py615def _compile_timeout_multiplier( name, opts, v ):CODE
LOW⚡testsuite/driver/testlib.py1182def collect_runtime_residency(tolerance_pct: float):CODE
LOW⚡testsuite/driver/testlib.py1188def collect_compiler_residency(tolerance_pct: float):CODE
LOW⚡testsuite/driver/testlib.py3406def exit_code_specific_message(exit_code: int) -> str:CODE
LOW⚡testsuite/driver/testlib.py3410def format_bad_exit_code_message(exit_code: int) -> str:CODE
LOWtestsuite/driver/testlib.py379def req_ghc_with_threaded_rts( name, opts ):CODE
LOWtestsuite/driver/testlib.py1044def have_fully_static_linking( ) -> bool:CODE
LOWtestsuite/driver/testlib.py1125def collect_compiler_perf_counters(counters: List[str], deviation: Optional[int] = None):CODE
LOWtestsuite/driver/testlib.py1133def _collect_compiler_perf_counters(counters: Set[str], deviation: Optional[int] = None):CODE
LOWtestsuite/driver/testlib.py1375def _normalise_whitespace_fun(name, opts, f):CODE
LOWtestsuite/driver/testlib.py1563def get_package_cache_timestamp() -> float:CODE
LOWtestsuite/driver/testutil.py95def residency_testing_metrics():CODE
LOW…hc-internal/tools/ucd2haskell/tests/check_test_data.py224def general_category_hash_with_salt(s: c_int, c: str):CODE
LOW…hc-internal/tools/ucd2haskell/tests/check_test_data.py227def general_category_hash_check(acc, c: str):CODE
LOW…hc-internal/tools/ucd2haskell/tests/check_test_data.py243def case_mapping_hash_with_salt(s: c_int, c: str):CODE
LOW…k/haddock-api/resources/html/js-src/details-helper.tsx374function putInstanceListsInDefaultState() {CODE
Deep Nesting36 hits · 24 pts
SeverityFileLineSnippetContext
LOW.gitlab/rel_eng/upload_ghc_libs.py213CODE
LOW.gitlab/rel_eng/mk-ghcup-metadata/mk_ghcup_metadata.py316CODE
LOW.gitlab/rel_eng/fetch-gitlab-artifacts/fetch_gitlab.py69CODE
LOWhadrian/bootstrap/bootstrap.py159CODE
LOWhadrian/bootstrap/bootstrap.py279CODE
LOWhadrian/bootstrap/bootstrap.py370CODE
LOWtestsuite/driver/cpuinfo.py406CODE
LOWtestsuite/driver/cpuinfo.py428CODE
LOWtestsuite/driver/cpuinfo.py510CODE
LOWtestsuite/driver/cpuinfo.py532CODE
LOWtestsuite/driver/cpuinfo.py638CODE
LOWtestsuite/driver/cpuinfo.py690CODE
LOWtestsuite/driver/cpuinfo.py785CODE
LOWtestsuite/driver/cpuinfo.py1623CODE
LOWtestsuite/driver/cpuinfo.py1723CODE
LOWtestsuite/driver/cpuinfo.py2220CODE
LOWtestsuite/driver/cpuinfo.py1388CODE
LOWtestsuite/driver/perf_notes.py286CODE
LOWtestsuite/driver/perf_notes.py397CODE
LOWtestsuite/driver/testlib.py664CODE
LOWtestsuite/driver/testlib.py741CODE
LOWtestsuite/driver/testlib.py1576CODE
LOWtestsuite/driver/testlib.py1736CODE
LOWtestsuite/driver/testlib.py2291CODE
LOWtestsuite/driver/testlib.py2607CODE
LOWtestsuite/driver/testlib.py2757CODE
LOWtestsuite/driver/testlib.py2814CODE
LOWtestsuite/driver/testlib.py3264CODE
LOWtestsuite/driver/testlib.py3337CODE
LOWtestsuite/driver/testlib.py3469CODE
LOWtestsuite/driver/testlib.py3587CODE
LOWtestsuite/driver/testlib.py3751CODE
LOWtestsuite/driver/testutil.py105CODE
LOW…uite/tests/linters/regex-linters/check-rts-includes.py40CODE
LOW…uite/tests/linters/regex-linters/check-rts-includes.py79CODE
LOWtestsuite/tests/linters/regex-linters/linter.py80CODE
Self-Referential Comments8 hits · 24 pts
SeverityFileLineSnippetContext
MEDIUMtestsuite/driver/cpuinfo.py3# This file is used in GHC's testsuite driver to determine the CPU featuresCOMMENT
MEDIUMtestsuite/driver/testlib.py692# Define a set of generic stat testsCOMMENT
MEDIUM⚡utils/completion/ghc.bash7# This file implements bash completion for both GHC and GHCi.COMMENT
MEDIUMdocs/users_guide/flags.py3# This file defines a Sphinx extension to document GHC flags.COMMENT
MEDIUMdocs/users_guide/flags.py502 # Create a flagprint nodeCOMMENT
MEDIUMdocs/users_guide/flags.py593 # Create a extensionprint nodeCOMMENT
MEDIUMdocs/users_guide/conf.py5# This file is execfile()d with the current directory set to itsCOMMENT
MEDIUMdocs/users_guide/conf.py153# The following functions parse flag declarations, and then have two jobs. FirstSTRING
AI Slop Vocabulary7 hits · 20 pts
SeverityFileLineSnippetContext
MEDIUMrts/sm/NonMovingSweep.c351// Helper for nonmovingSweepStableNameTable. Essentially nonmovingIsAlive,COMMENT
MEDIUMrts/include/rts/OSThreads.h76 // robust against system time changes and is likely cheaper to query.COMMENT
LOWtestsuite/driver/cpuinfo.py862 # Run the sestatus, and just return if it failed to runCOMMENT
MEDIUMtestsuite/driver/cpu_features.py8 # These aren't comprehensive; they are only CPU features that we care aboutCOMMENT
MEDIUMtestsuite/driver/perf_notes.py6# This file will be a utility to help facilitate the comparison of performanceCOMMENT
MEDIUMtestsuite/driver/perf_notes.py774 # Generates simple fake data. Likely not comprehensive enough to catch all edge cases.COMMENT
MEDIUMutils/llvm-targets/gen-data-layout.sh12# To utilize it run it asCOMMENT
Slop Phrases10 hits · 15 pts
SeverityFileLineSnippetContext
LOWrts/TraverseHeap.c1002 // and don't forget to follow the SRTCOMMENT
LOWrts/RtsAPI.c601 // current thread. Don't forget to release the cap first though.COMMENT
LOWrts/sm/Scav.c2019 // and don't forget to follow the SRTCOMMENT
LOWrts/sm/Compact.c941 // Don't forget to update the free ptr in the block descCOMMENT
LOWrts/sm/Evac.c425 /* Don't forget to set the gct->failed_to_evac flag if we didn't getCOMMENT
LOWrts/sm/Evac.c565 /* Don't forget to set the gct->failed_to_evac flag if we didn't getCOMMENT
LOWrts/sm/Evac.c582 /* Don't forget to set the gct->failed_to_evac flag if we didn't getCOMMENT
LOWrts/sm/NonMovingMark.c1215 // and don't forget to follow the SRTCOMMENT
LOWrts/sm/GC.c1791 // don't forget to fill it with zeros!COMMENT
LOWrts/include/rts/storage/ClosureTypes.h15 * If you add or delete any closure types, don't forget to update the following,COMMENT
Redundant / Tautological Comments5 hits · 7 pts
SeverityFileLineSnippetContext
LOW.gitlab/ci.sh394 # Check if the bindist has directory structureCOMMENT
LOWtestsuite/driver/perf_notes.py31# Check if "git rev-parse" can be run successfully.COMMENT
LOWtestsuite/driver/perf_notes.py45# Check if the worktree is dirty.COMMENT
LOWtestsuite/driver/perf_notes.py203# Check if a str is in a 40 character git commit hash.COMMENT
LOWtestsuite/driver/testlib.py2545 # Set stdout to be line-buffered to match the compiled environment.COMMENT
Overly Generic Function Names7 hits · 4 pts
SeverityFileLineSnippetContext
LOWtestsuite/driver/testlib.py470 def helper( name: TestName, opts ):CODE
LOWtestsuite/driver/testlib.py481 def helper( name: TestName, opts ):CODE
LOWtestsuite/driver/testlib.py489 def helper( name: TestName, opts ):CODE
LOWtestsuite/driver/testlib.py514 def helper( name, opts, bug=bug ):CODE
LOWtestsuite/driver/testlib.py525 def helper( name: TestName, opts ):CODE
LOWtestsuite/driver/testlib.py546 def helper( name: TestName, opts ):CODE
LOWtestsuite/driver/testlib.py566 def helper( name: TestName, opts ):CODE
Cross-Language Confusion1 hit · 2 pts
SeverityFileLineSnippetContext
HIGHtestsuite/driver/testlib.py3317 cd $working_dir && perf stat ... $cmdSTRING
Structural Annotation Overuse1 hit · 2 pts
SeverityFileLineSnippetContext
LOWrts/RtsMain.c41// NOTE: This function is marked as _noreturn_ in Main.hCOMMENT
Verbosity Indicators1 hit · 1 pts
SeverityFileLineSnippetContext
LOWrts/win32/AsyncWinIO.c403 because in principle we need to check if the capability work queue is nowCODE
Fake / Example Data1 hit · 1 pts
SeverityFileLineSnippetContext
LOWutils/haddock/html-test/ref/Bug546.html94 >lorem ipsum</ddCODE
AI Structural Patterns1 hit · 0 pts
SeverityFileLineSnippetContext
LOWtestsuite/driver/cpuinfo.py2779CODE