Arguments to attribute constructor style functions
问题 I've seen code like this: (Apple based code) __attribute__((constructor)) void do_action(int argc, const char **argv, const char **envp, const char **things, struct ProgramVars *) { // } Which is odd to be because I read that constructors style functions are supposed to be void. Where are those arguments coming from, can I choose what those parameters can be? Is this an Apple only thing for gcc/clang? This code is supposed to be used with DYLD_INSERT_LIBRARIES, (Linux's LD_PRELOAD). Is that a