https://issues.dlang.org/show_bug.cgi?id=17747
--- Comment #8 from Steven Schveighoffer <[email protected]> --- (In reply to anonymous4 from comment #7) > C abi is requested with extern(C) here, sure they are different. Essentially, what I'm saying is: mod1.d: int x; extern(C) static this() { x = 5; } mod2.d: import mod1; int y; extern(C) static this() { y = x + 1; // should be 6, but could be 1 if executed in the wrong order } Druntime knows how to make this work. C does not. You are changing the semantic meaning of static this() by putting an extern(C) on it, and I don't think it's a good idea. People are used to this "just working". You also likely will break code, as I think there are many files with extern(C): at the top, for which this would change the semantics. --
