SIGN IN SIGN UP

docs: fix EXPECTED_MAJOR to match the draft major; scope supported toolchains

Round-5 review: Codex and Kimi both requested the same one-value fix — the §4
Python FFI example set `EXPECTED_MAJOR = 1`, but the draft header is
`SW_API_VERSION_MAJOR 0u` (v0.1.0). The inline comment says it must match the
header, so a copy/paste against this declaration-only ABI would wrongly reject a
matching library. Set it to `EXPECTED_MAJOR = 0` and note it tracks the header's
major (0 for the 0.1.0 draft).

Also add a "Supported Toolchains" section to docs/C_ABI.md to scope the
portability commitment (the header is broadly portable, but support is bounded):
- MSVC (cl / clang-cl) on Windows is the primary, first-class target.
- Clang and GCC (incl. MinGW) are secondary for dev/bindings/CI.
- Exotic compilers, ABI-altering flags (e.g. -fshort-enums), and pre-C99 /
  pre-C++98 modes are out of scope -- the static_asserts exist to fail loudly
  under those, not to promise support.

Docs-only. Header unchanged; uv run pytest -> 42 passed; git diff --check clean.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
C
Claude Coder committed
f1d3369c1b779e6063fbdea6bd7e4c8b8c694245
Parent: 94dda48