Nothing landed today in the Cx language project, making it a perfect opportunity to delve into something that's been lurking in the background: the merge gap between submain and main. This isn't just a gap; it's the biggest structural challenge we're facing right now.
The Merge Gap
Submain sits 21 commits ahead of main. And these aren't trivial updates. These commits incorporate crucial updates: Phases 10 and 11 of the IR backend covering while/for/loop/break/continue lowering, unary expression transitions, a reworked error model with Result, integer overflow enforcement, optional semicolons throughout the language, comprehensive audits on parser/semantic/interpreter agreement as well as memory boundary soundness, a diagnostics readability pass, and the version bump for the roadmap to v5.0—with all 9 hard blockers resolved.
Main is still at version 4.8 with 8 hard blockers hanging overhead. Test data paints the same picture: main holds at 78/78 tests, whereas submain runs ahead with 117/117. Merging these would address a significant 39-test disparity in one swift action.
Every daily log over the past week has identified "merge submain into main" as a critical next step. Yet, the merge isn't happening. It's not a crisis at this moment, but the longer submain stays diverged, the more complex merging will become if new work gets added to either branch independently.






