Example program: --- extern(C) void main(double[] foo) @safe { import std.stdio; writeln(foo); // undefined behavior } --- To avoid this, the compiler should check the signature of a @safe extern(C) main function for conformance to the C standard.
Fixed by https://github.com/dlang/dmd/pull/13749 *** This issue has been marked as a duplicate of issue 22831 ***