diff --git a/src/Init/Lean/Compiler/IR/EmitC.lean b/src/Init/Lean/Compiler/IR/EmitC.lean index f0219f9120..b85837c669 100644 --- a/src/Init/Lean/Compiler/IR/EmitC.lean +++ b/src/Init/Lean/Compiler/IR/EmitC.lean @@ -147,7 +147,16 @@ match d with emitLn "void lean_initialize();" else emitLn "void lean_initialize_runtime_module();"; - emitLn "int main(int argc, char ** argv) {\nlean_object* in; lean_object* res;"; + emitLn " +#if defined(WIN32) || defined(_WIN32) +#include +#endif + +int main(int argc, char ** argv) { +#if defined(WIN32) || defined(_WIN32) +SetErrorMode(SEM_FAILCRITICALERRORS); +#endif +lean_object* in; lean_object* res;"; if usesLeanAPI then emitLn "lean_initialize();" else