chore remove unused Diagnostic module

No code references it after parse_with_diagnostics was removed. Can be reintroduced when diagnostic reporting is actually wired through the parsing pipeline.

Commit
664ab007790f910f08794b0ebf2fb80e3f53f3c3
Author
Kiro (high) <noreply@kiro.dev>
Author date
Committer
Marius Peter <dev@marius-peter.com>
Committer date
lib/diagnostic.ml
index 7dca7959..00000000 100644..000000
@@ -1,52 +0,0 @@
1 Removed: (** Diagnostic reporting for recoverable parse issues.
2 Removed:
3 Removed: Diagnostics are lightweight reports (severity + line + message)
4 Removed: that indicate recoverable issues encountered during parsing.
5 Removed: They do not halt parsing — the parser always produces a
6 Removed: best-effort AST. *)
7 Removed:
8 Removed: (** Severity levels for diagnostics. *)
9 Removed: type severity =
10 Removed: | Warning (** Recoverable issue, structure was inferred *)
11 Removed: | Error (** Significant structural issue *)
12 Removed:
13 Removed: (** A single diagnostic. *)
14 Removed: type t = {
15 Removed: severity : severity;
16 Removed: line : int; (** 1-based line number, 0 if unknown *)
17 Removed: message : string;
18 Removed: }
19 Removed:
20 Removed: (** Create a warning diagnostic. *)
21 Removed: let warning ?(line = 0) message = { severity = Warning; line; message }
22 Removed:
23 Removed: (** Create an error diagnostic. *)
24 Removed: let error ?(line = 0) message = { severity = Error; line; message }
25 Removed:
26 Removed: (** A mutable diagnostic collector.
27 Removed: Passed through parsing phases to accumulate diagnostics. *)
28 Removed: type collector = {
29 Removed: mutable diagnostics : t list;
30 Removed: }
31 Removed:
32 Removed: (** Create a new empty collector. *)
33 Removed: let create_collector () = { diagnostics = [] }
34 Removed:
35 Removed: (** Add a diagnostic to the collector. *)
36 Removed: let add collector diag =
37 Removed: collector.diagnostics <- diag :: collector.diagnostics
38 Removed:
39 Removed: (** Add a warning to the collector. *)
40 Removed: let warn collector ?(line = 0) message =
41 Removed: add collector (warning ~line message)
42 Removed:
43 Removed: (** Get all diagnostics collected, in order. *)
44 Removed: let to_list collector = List.rev collector.diagnostics
45 Removed:
46 Removed: (** Format a diagnostic as a human-readable string. *)
47 Removed: let to_string diag =
48 Removed: let sev = match diag.severity with Warning -> "warning" | Error -> "error" in
49 Removed: if diag.line > 0 then
50 Removed: Printf.sprintf "%s (line %d): %s" sev diag.line diag.message
51 Removed: else
52 Removed: Printf.sprintf "%s: %s" sev diag.message