The library is an "stb-style" header-only library, so the header has two modes: when you define CR_TASK_IMPL, it includes the implementation (starting from line 20), otherwise it just includes declarations (the first 19 lines). The implementation should only be included in one translation unit, but the declarations can be included in multiple units.
rkaehn|2 years ago
dc-programmer|2 years ago
salamander014|2 years ago
Sometimes, functions may call other functions in the same code file.
This required that functions be declared before they are referenced so C knew it existed.
You can also see this on lines 84-92.