diff --git a/stage0/src/stdlib.make.in b/stage0/src/stdlib.make.in index eec6aa614c..e5dccb3e87 100644 Binary files a/stage0/src/stdlib.make.in and b/stage0/src/stdlib.make.in differ diff --git a/stage0/stdlib/Lean/Compiler/IR.c b/stage0/stdlib/Lean/Compiler/IR.c index e61e09c41f..fe40079800 100644 Binary files a/stage0/stdlib/Lean/Compiler/IR.c and b/stage0/stdlib/Lean/Compiler/IR.c differ diff --git a/stage0/stdlib/Lean/Compiler/IR/AddExtern.c b/stage0/stdlib/Lean/Compiler/IR/AddExtern.c index b43eafd178..e6de9bac20 100644 Binary files a/stage0/stdlib/Lean/Compiler/IR/AddExtern.c and b/stage0/stdlib/Lean/Compiler/IR/AddExtern.c differ diff --git a/stage0/stdlib/Lean/Compiler/IR/EmitC.c b/stage0/stdlib/Lean/Compiler/IR/EmitC.c deleted file mode 100644 index 4343d4c500..0000000000 Binary files a/stage0/stdlib/Lean/Compiler/IR/EmitC.c and /dev/null differ diff --git a/stage0/stdlib/Lean/Compiler/IR/EmitLLVM.c b/stage0/stdlib/Lean/Compiler/IR/EmitLLVM.c index 125cc3b92b..152b63343b 100644 Binary files a/stage0/stdlib/Lean/Compiler/IR/EmitLLVM.c and b/stage0/stdlib/Lean/Compiler/IR/EmitLLVM.c differ diff --git a/stage0/stdlib/Lean/Compiler/IR/SimpCase.c b/stage0/stdlib/Lean/Compiler/IR/SimpCase.c deleted file mode 100644 index e39c628c70..0000000000 Binary files a/stage0/stdlib/Lean/Compiler/IR/SimpCase.c and /dev/null differ diff --git a/stage0/stdlib/Lean/Compiler/LCNF/Basic.c b/stage0/stdlib/Lean/Compiler/LCNF/Basic.c index ecf8b829ca..da3e7e0a88 100644 Binary files a/stage0/stdlib/Lean/Compiler/LCNF/Basic.c and b/stage0/stdlib/Lean/Compiler/LCNF/Basic.c differ diff --git a/stage0/stdlib/Lean/Compiler/LCNF/EmitC.c b/stage0/stdlib/Lean/Compiler/LCNF/EmitC.c new file mode 100644 index 0000000000..b7cb3860ca Binary files /dev/null and b/stage0/stdlib/Lean/Compiler/LCNF/EmitC.c differ diff --git a/stage0/stdlib/Lean/Compiler/LCNF/EmitUtil.c b/stage0/stdlib/Lean/Compiler/LCNF/EmitUtil.c new file mode 100644 index 0000000000..2975d8f4c5 Binary files /dev/null and b/stage0/stdlib/Lean/Compiler/LCNF/EmitUtil.c differ diff --git a/stage0/stdlib/Lean/Compiler/LCNF/Internalize.c b/stage0/stdlib/Lean/Compiler/LCNF/Internalize.c index 47b80e38d4..6092557bf0 100644 Binary files a/stage0/stdlib/Lean/Compiler/LCNF/Internalize.c and b/stage0/stdlib/Lean/Compiler/LCNF/Internalize.c differ diff --git a/stage0/stdlib/Lean/Compiler/LCNF/Passes.c b/stage0/stdlib/Lean/Compiler/LCNF/Passes.c index 82efe5ca65..c1a4bec84a 100644 Binary files a/stage0/stdlib/Lean/Compiler/LCNF/Passes.c and b/stage0/stdlib/Lean/Compiler/LCNF/Passes.c differ diff --git a/stage0/stdlib/Lean/Compiler/LCNF/PhaseExt.c b/stage0/stdlib/Lean/Compiler/LCNF/PhaseExt.c index fc875f8f4d..9e1add4d61 100644 Binary files a/stage0/stdlib/Lean/Compiler/LCNF/PhaseExt.c and b/stage0/stdlib/Lean/Compiler/LCNF/PhaseExt.c differ diff --git a/stage0/stdlib/Lean/Compiler/LCNF/PublicDeclsExt.c b/stage0/stdlib/Lean/Compiler/LCNF/PublicDeclsExt.c index e408a9671c..6a560f5eca 100644 Binary files a/stage0/stdlib/Lean/Compiler/LCNF/PublicDeclsExt.c and b/stage0/stdlib/Lean/Compiler/LCNF/PublicDeclsExt.c differ diff --git a/stage0/stdlib/Lean/Compiler/LCNF/SimpCase.c b/stage0/stdlib/Lean/Compiler/LCNF/SimpCase.c index a0b9b691c7..a14beef7d0 100644 Binary files a/stage0/stdlib/Lean/Compiler/LCNF/SimpCase.c and b/stage0/stdlib/Lean/Compiler/LCNF/SimpCase.c differ diff --git a/stage0/stdlib/Lean/Compiler/LCNF/SplitSCC.c b/stage0/stdlib/Lean/Compiler/LCNF/SplitSCC.c index df829d6995..98a2bfbce9 100644 Binary files a/stage0/stdlib/Lean/Compiler/LCNF/SplitSCC.c and b/stage0/stdlib/Lean/Compiler/LCNF/SplitSCC.c differ diff --git a/stage0/stdlib/Lean/Compiler/LCNF/Toposort.c b/stage0/stdlib/Lean/Compiler/LCNF/Toposort.c index 9d4ee4a436..10f1b34212 100644 Binary files a/stage0/stdlib/Lean/Compiler/LCNF/Toposort.c and b/stage0/stdlib/Lean/Compiler/LCNF/Toposort.c differ diff --git a/stage0/stdlib/Lean/Elab/Tactic/Do/Attr.c b/stage0/stdlib/Lean/Elab/Tactic/Do/Attr.c index 8c5ead98b2..d52b69b0ac 100644 Binary files a/stage0/stdlib/Lean/Elab/Tactic/Do/Attr.c and b/stage0/stdlib/Lean/Elab/Tactic/Do/Attr.c differ diff --git a/stage0/stdlib/Lean/Elab/Tactic/Do/VCGen.c b/stage0/stdlib/Lean/Elab/Tactic/Do/VCGen.c index 6427f8433f..8f11bbd6d8 100644 Binary files a/stage0/stdlib/Lean/Elab/Tactic/Do/VCGen.c and b/stage0/stdlib/Lean/Elab/Tactic/Do/VCGen.c differ diff --git a/stage0/stdlib/Lean/Elab/Tactic/Do/VCGen/Basic.c b/stage0/stdlib/Lean/Elab/Tactic/Do/VCGen/Basic.c index c3e4d5f539..7a6225412f 100644 Binary files a/stage0/stdlib/Lean/Elab/Tactic/Do/VCGen/Basic.c and b/stage0/stdlib/Lean/Elab/Tactic/Do/VCGen/Basic.c differ diff --git a/stage0/stdlib/Lean/Elab/Tactic/Do/VCGen/SuggestInvariant.c b/stage0/stdlib/Lean/Elab/Tactic/Do/VCGen/SuggestInvariant.c index 347def491b..687b91e34c 100644 Binary files a/stage0/stdlib/Lean/Elab/Tactic/Do/VCGen/SuggestInvariant.c and b/stage0/stdlib/Lean/Elab/Tactic/Do/VCGen/SuggestInvariant.c differ diff --git a/stage0/stdlib/Lean/Meta/Tactic/Cbv/BuiltinCbvSimprocs/Array.c b/stage0/stdlib/Lean/Meta/Tactic/Cbv/BuiltinCbvSimprocs/Array.c new file mode 100644 index 0000000000..eea0ffc1c1 Binary files /dev/null and b/stage0/stdlib/Lean/Meta/Tactic/Cbv/BuiltinCbvSimprocs/Array.c differ diff --git a/stage0/stdlib/Lean/Meta/Tactic/Cbv/Main.c b/stage0/stdlib/Lean/Meta/Tactic/Cbv/Main.c index 7f8502a44a..64091135f9 100644 Binary files a/stage0/stdlib/Lean/Meta/Tactic/Cbv/Main.c and b/stage0/stdlib/Lean/Meta/Tactic/Cbv/Main.c differ diff --git a/stage0/stdlib/Lean/Shell.c b/stage0/stdlib/Lean/Shell.c index 6001359e9d..681f0140a2 100644 Binary files a/stage0/stdlib/Lean/Shell.c and b/stage0/stdlib/Lean/Shell.c differ diff --git a/stage0/stdlib/Std/Do/Triple/SpecLemmas.c b/stage0/stdlib/Std/Do/Triple/SpecLemmas.c index e6c36dc18c..a7e52bfedf 100644 Binary files a/stage0/stdlib/Std/Do/Triple/SpecLemmas.c and b/stage0/stdlib/Std/Do/Triple/SpecLemmas.c differ diff --git a/stage0/stdlib/Std/Tactic/Do/Syntax.c b/stage0/stdlib/Std/Tactic/Do/Syntax.c index b6f8c480cb..01f3a5c358 100644 Binary files a/stage0/stdlib/Std/Tactic/Do/Syntax.c and b/stage0/stdlib/Std/Tactic/Do/Syntax.c differ