Lean 4 fork for HoTT-compatible kernel extensions (Path types, transport, HITs). Maintained against upstream leanprover/lean4.
Find a file
Cameron Zwarich 24cbd4efbe
fix: correctly handle never_extract attribute in LCNF CSE (#8952)
This PR fixes the handling of the `never_extract` attribute in the
compiler's CSE pass. There is an interesting debate to be had about
exactly how hard the compiler should try to avoid duplicating anything
that transitively uses `never_extract`, but this is the simplest form
and roughly matches the check in the old compiler (although due to
different handling of local function decls in the two compilers, the
consequences might be slightly different).

This gets half of the way to #8944.
2025-06-23 23:03:10 +00:00
.github chore: CI: temporarily disable .olean cache 2025-06-18 11:12:56 +09:00
doc chore: improvements to release checklist and scripts (#8586) 2025-06-10 22:56:06 +00:00
images
nix
releases_drafts
script chore: remove old LEAN_AUTO_THREAD_FINALIZATION workaround (#8885) 2025-06-20 08:52:17 +00:00
src fix: correctly handle never_extract attribute in LCNF CSE (#8952) 2025-06-23 23:03:10 +00:00
stage0 chore: update stage0 2025-06-23 20:40:08 +02:00
tests fix: correctly handle never_extract attribute in LCNF CSE (#8952) 2025-06-23 23:03:10 +00:00
.gitattributes
.gitignore chore: allow module in tests (#8881) 2025-06-21 02:49:22 +00:00
.gitpod.Dockerfile
.gitpod.yml
.ignore
CMakeLists.txt
CMakePresets.json
CODEOWNERS chore: add @zwarich to the compiler CODEOWNERS (#8305) 2025-05-12 18:42:54 +00:00
CONTRIBUTING.md
flake.lock
flake.nix
lean-toolchain
lean.code-workspace
LICENSE
LICENSES
README.md chore: remove old documentation site (#7974) 2025-05-14 14:31:33 +00:00
RELEASES.md

This is the repository for Lean 4.

About

Installation

See Setting Up Lean.

Contributing

Please read our Contribution Guidelines first.

Building from Source

See Building Lean.