Split the README reference material into docs/
The README was 794 lines: the summary, the design rationale, the whole macro reference, the threading contract, the build internals and the exit-status specification in one file. It is now 178 lines -- summary, installation, quickstart, and an index -- and the reference material lives in docs/, one file per topic: architecture, usage, status-codes, uncaught-errors, exit-status, thread-safety, building. The prose moved as written. Inbound references followed it: UPGRADING.md, TODO.md, include/akerror.tmpl.h and tests/err_threads_handoff.c now name the docs/ file that owns the text they cite, and AGENTS.md says where new documentation goes so the README does not grow back. Five factual errors fixed in the moved text: - Both NULL-pointer examples inverted their test. FAIL_ZERO_* fails when the expression is zero, so `(somePointer == NULL)` failed on a *valid* pointer. They now read `(somePointer != NULL)`. - AKERROR_NOIGNORE, four times including the #define, is AKERR_NOIGNORE. - FINISH_NORExbTURN is FINISH_NORETURN. - "functiions" is "functions". - The architecture link pointed at include/akerror.h, which is generated and not in the tree; it points at include/akerror.tmpl.h. The quickstart is new text. It compiles under -Wall -Wextra -Werror and was run through all three of its paths: handled usage error exits 0, unhandled IO error prints a trace and exits with the status, success exits 0. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -21,8 +21,8 @@
|
||||
*
|
||||
* 1 The error pool and the status registry are mutex protected, and the
|
||||
* per-thread state below is thread local. Every entry point may be called
|
||||
* from any thread. See "Thread safety" in README.md for what that does and
|
||||
* does not cover.
|
||||
* from any thread. See docs/thread-safety.md for what that does and does
|
||||
* not cover.
|
||||
* 0 The library was built -DAKERR_THREADS=none for a single-threaded
|
||||
* process: no locking, no thread-local storage, and calling it from more
|
||||
* than one thread is undefined.
|
||||
|
||||
Reference in New Issue
Block a user