summaryrefslogtreecommitdiff
path: root/docs/roadmap.md
diff options
context:
space:
mode:
authorCliff Click <cliffc@acm.org>2026-10-25 14:24:09 -0700
committerCliff Click <cliffc@acm.org>2026-10-25 14:24:09 -0700
commit0e7c50b22d7f900b9c3c8db3765f3b7af41e5dd1 (patch)
tree6bfc8e100d1e1a727fdeabbc8dcf0710d04ff29b /docs/roadmap.md
parent2d80a348bad4b1e3165bd955ceaff3e18a96e516 (diff)
downloadSimple-0e7c50b22d7f900b9c3c8db3765f3b7af41e5dd1.tar.gz
Simple-0e7c50b22d7f900b9c3c8db3765f3b7af41e5dd1.zip
Update incremental build checkmain
Diffstat (limited to 'docs/roadmap.md')
-rw-r--r--docs/roadmap.md22
1 files changed, 11 insertions, 11 deletions
diff --git a/docs/roadmap.md b/docs/roadmap.md
index 62c2e509..75ee8d54 100644
--- a/docs/roadmap.md
+++ b/docs/roadmap.md
@@ -34,17 +34,17 @@ signed and unsigned fields and compare ideal evaluation with generated code.
### Reliable incremental builds
-`CompUnit` checks source and dependency-object timestamps when a unit is
-discovered. It can accept A's saved IR before discovering that B, whose body
-was inlined into A, needs rebuilding. An unchanged public signature does not
-make A current: optimization imports bodies and constants too.
-
-Discover the dependency graph and propagate rebuild decisions to a fixed
-point before accepting saved IR. Handle cycles together, bundled source units,
-missing inputs, and objects resolved through library search paths. Record
-compiler/serialization versions, target, ABI, and relevant options; content
-hashes can cover preserved timestamps. Distinguish rebuildable source from
-incompatible source-free libraries.
+Chapter 28b now checks the reachable source-backed inputs before reusing saved
+IR, including transitive dependencies, bundled sources, and missing inputs.
+The remaining work is a build driver with recorded input identities, beyond
+those conservative timestamp checks. An unchanged public signature does not
+establish compatibility: optimization imports bodies and constants too.
+
+Record the actual resolved input paths and versions, compiler/serialization
+versions, target, ABI, and relevant options. Content hashes can cover preserved
+timestamps and changed library search paths. Distinguish rebuildable source
+from incompatible source-free libraries; their installation timestamps alone
+cannot validate a set of objects compiled against one another.
An unchanged build should do no compilation or linking. Publish outputs only
after successful compilation, and relink when an object or other link input