I just adjusted my testproject to use the new inits and it works perfectly.
Good job peq! I really like the new init rules, strict but simple. Here is a "deliver" penguin for you:
However about "init all globals with zero or null to avoid init crashes (commit: 4f7a483cee08cab32063c802a93cea86b0e4fc81)":
Im not sure if i like the idea of all globals getting initialized automatically. When all globals are initialized automatically its harder to spot bugs in the initialization order as accessing non-initialized globals wont crash the entire init thread anymore but instead just gives wrong results (if the desired user-defined init value differs from the default one). Sometimes a crashing initthread is very helpful because it tells you that you did something wrong instead of covering it up :>
Good job peq! I really like the new init rules, strict but simple. Here is a "deliver" penguin for you:

However about "init all globals with zero or null to avoid init crashes (commit: 4f7a483cee08cab32063c802a93cea86b0e4fc81)":
Im not sure if i like the idea of all globals getting initialized automatically. When all globals are initialized automatically its harder to spot bugs in the initialization order as accessing non-initialized globals wont crash the entire init thread anymore but instead just gives wrong results (if the desired user-defined init value differs from the default one). Sometimes a crashing initthread is very helpful because it tells you that you did something wrong instead of covering it up :>