Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.brim-lang.com/llms.txt

Use this file to discover all available pages before exploring further.

Type Check diagnostics

  • Total in this phase: 54
  • Errors: 50 | Warnings: 4 | Bugs: 0
  • Prefix: /diagnostics/<code>
  • Common tags: arrays, async, borrow, calls, casts, coercion, copy, dyn

Common fixes in this phase

  • implement trait
  • adjust generics (seen in 2 diagnostics)
  • annotate types (seen in 2 diagnostics)
  • remove extras (seen in 2 diagnostics)
  • use defaults

Codes

  • E3000 - type mismatch (Error)
  • E3001 - cannot unify types (Error)
  • E3002 - occurs check failure (Error)
  • E3003 - ambiguous inference (Error)
  • E3004 - unsolved type variables (Error)
  • E3005 - argument arity mismatch (Error)
  • E3006 - generic arity mismatch (Error)
  • E3007 - trait bound not satisfied (Error)
  • E3008 - missing trait implementation (Error)
  • E3009 - associated type projection failure (Error)
  • E3010 - invalid cast (Error)
  • E3011 - match arms incompatible (Error)
  • E3012 - non-exhaustive patterns (Error)
  • E3013 - unreachable pattern (Warning)
  • E3014 - overlapping patterns (Error)
  • E3015 - missing field init (Error)
  • E3016 - unknown field (Error)
  • E3017 - mutability mismatch (Error)
  • E3018 - borrow conflict at type level (Error)
  • E3019 - cannot coerce (Error)
  • E3020 - diverging type misuse (Error)
  • E3021 - async future type mismatch (Error)
  • E3022 - await outside async fn (Error)
  • E3023 - indexing requires Slice trait (Error)
  • E3024 - binary operator unsupported (Error)
  • E3025 - unary operator unsupported (Error)
  • E3026 - method resolution ambiguity (Error)
  • E3027 - Sized bound failure (Error)
  • E3028 - copy semantics violated (Error)
  • E3029 - send/sync boundary (Error)
  • E3030 - const generic mismatch (Error)
  • E3031 - type alias recursion (Error)
  • E3032 - literal type unsupported (Error)
  • E3033 - field privacy at type layer (Error)
  • E3034 - enum payload arity mismatch (Error)
  • E3035 - refutable pattern in binding (Error)
  • E3036 - guard expression not bool (Error)
  • E3037 - range pattern invalid type (Error)
  • E3038 - array length mismatch (Error)
  • E3039 - tuple projection out of range (Error)
  • E3040 - variadic ABI misuse (Error)
  • E3041 - generic constraint cycle (Error)
  • E3042 - implicit Sized not relaxed (Error)
  • E3043 - trait object invalid (Error)
  • E3044 - higher-ranked mismatch (Error)
  • E3045 - effect mismatch (Error)
  • E3046 - panic type in non-throwing context (Error)
  • E3047 - comparison trait missing (Error)
  • E3048 - pointer provenance mismatch (Error)
  • E3049 - alignment requirement violated (Error)
  • E3050 - vtable layout mismatch (Error)
  • W1003 - unreachable pattern warning (Warning)
  • W1008 - overflowing literal (warn) (Warning)
  • W1010 - irrefutable let pattern warning (Warning)
Back to Diagnostics index. Canonical phase route: /diagnostics/phases/type-check