- TDP-2-001accepted
Fixes in diagnostics without --smart
Let the compiler print a concrete, validated fix with an error whenever it is sure of one, in every build and without a model.
- TDP-2-002accepted
Checked arithmetic and auto-vectorization
Keep integer overflow trapping by default, remove more of the checks by proof, and give hot loops an explicit way to ask for wrapping.
- TDP-2-003accepted
Lint levels, deprecation and the 2.x compatibility contract
Give every diagnostic code a level you can set, add a way to deprecate an API, and enforce the 2.x promise with a frozen test corpus and a code registry.
- TDP-2-004accepted
Machine-readable diagnostics and applying fixes
Add a JSON form of every diagnostic, with its fix as data, and a command that applies only validated fixes on request.
- TDP-2-005accepted
Type arguments at the use site
Let a program name a generic type's or function's type arguments where it uses them, with
List<int>::default()andf::<int>(x). - TDP-2-006accepted
Tests in source files
Let a function marked
@testlive beside the code it checks, and run it withturf test. - TDP-2-007accepted
Analysis warnings for unsafe code, loops, recursion and leaks
Add a family of warnings that find mistakes in unsafe code, infinite loops, infinite recursion, manual-heap leaks, precision loss, dead code and raw-receiver calls, without rejecting any program that compiles today.
- TDP-2-008accepted
Measured suggestions: the Fix Score and the benchmark
Replace the binary confidence of model suggestions with a decomposed, calibrated score, and measure the assistant against a larger benchmark with a rules-only baseline.