@kemona_halftau I love compiling something and having it continue to work fine after a system update (thanks to RPATH), but then months later I delete old generations and guix gc to free up disk space and everything breaks and I have to delete the build directory and start again because cmake resolves symlinks and hardcodes all the paths (which no longer exist)
char decoded[640*480]; // FIXME: is the stack always large enough??
unfortunately, I don’t think anything can be done about this (except handling the SIGSEGV when you run out of stack space using sigaltstack). getrlimit can be used to get the maximum stack size, but although there is a ru_isrss field in the rusage struct, linux doesn’t actually use it (see getrusage(2))
@kemona_halftau why do you put the * next to the type rather than next to the variable name? I don’t know if you already know this but a declaration like int* a, b; will result in a being of type int* and b being of type int, which is why usually people put the * next to the variable name (otherwise declarations like that are confusing, because written like that it looks like they should both be int*)
Have you ever tried to eat a starch-based packing peanut (the forbidden corn snacks)
(Repost for sample size!)