Files
v/thirdparty
3e77bb6a44 tccbin: derive the Windows patch count, fix gcc>=14 provenance types, keep the vc c3063f8 bootstrap working (#31062)
* tccbin: derive the Windows patch count, fix gcc>=14 provenance types, keep vc c3063f8 bootstrapping

- contract.v: replace the hard-coded patch-0001..patch-0013 / orders 1..15 expectation
  with validate_windows_patch_sequence: contiguous patch-0001..patch-NNNN, at least nine,
  orders exactly 1..(patches + transforms); transforms expected at patches+1/+2. Fixture
  grows to the real sixteen patches; new tests cover 9/16/17 passing and short, gapped,
  misnamed and wrong-order sequences failing. hygiene_files 106 -> 108 (#30939 added two files).
- provenance_windows.c.v: ReadFile takes &C.DWORD; _get_osfhandle results cast via voidptr(),
  so gcc >= 14 compiles the generated C with plain -w.
- vc bootstrap compat after ffc38ada48: spell Type(alias.base_type) via unalias_type in
  monomorphize.v / checker.v (the snapshot emitted a pointer-to-pointer), and return the
  literal nil on a cached_expr_type_ref miss (the snapshot heap-copies &Type returns and
  segfaulted on memdup(NULL) in stage 3).

Co-Authored-By: WOZCODE <contact@withwoz.com>

* tccbin: build the 17-patch and gap test manifests structurally

Parse the Windows fixture, mutate its patches, transforms and probes as JSON values
and re-encode, instead of chaining replace_once over fixture text. The multi-line
string literal compiled and passed, but the structural form does not depend on
fixture formatting and also covers an eighteen-patch manifest.

Co-Authored-By: WOZCODE <contact@withwoz.com>

---------

Co-authored-by: Richard Wheeler <18647491+PythonWillRule@users.noreply.github.com>
Co-authored-by: WOZCODE <contact@withwoz.com>
2026-10-24 11:29:39 -04:00
..
2026-04-02 06:13:52 +03:00