/*
 * akglapp -- a complete program, brought up headless and run.
 *
 * This is the prelude behind `c run=akglapp`, and it is the reason the harness
 * links at all. -fsyntax-only proves a call typechecks; it does not prove the
 * startup order works, that the sprite loads, or that an ATTEMPT block gives
 * back what it took. A run= block proves those, and an `output` block below it
 * pins what the reader will actually see.
 *
 * The block supplies the body. Anything it prints on stdout is the example's
 * output; libakgl's own registry chatter goes to stderr and is not compared.
 *
 * The startup here is the same sequence tests/sprite.c and tools/docs_screenshot.c
 * use, and it is the sequence chapter 07 documents: error registry, renderer
 * backend, SDL, window, bind, heap, registries, camera. A host that owns its own
 * window does exactly this rather than calling akgl_game_init().
 */
#include <docs_prelude.h>

akerr_ErrorContext AKERR_NOIGNORE *docs_example(void);

akerr_ErrorContext *docs_example(void)
{
    PREPARE_ERROR(errctx);
