multiply defined symbols
Currently, the header contains symbols like thread_id
, which need to be defined exactly once in a linked executable. If the header is included in more than one translation unit, these symbols become multiply defined, and the executable won't link.
I have a fix for this, but since it is part of a larger rework, a merge request will take a few more days.