Skip to content

"This for-loop is missing ... in its where clause" (E0038, E0039) #1376

@mndrix

Description

@mndrix

As of moon 0.1.20260110 (0e584ac 2026-01-10), I see the warnings missing_reason and missing_invariant for many for loops. The --explain output says "No longer emitted". The relevant for loops have no where clause at all, so I assume these warnings are mistaken; or is it the intention that every for loop have a where clause with invariants? If the latter, maybe the error message should just say "This for-loop is missing a where clause"

Environment

Operating System: Linux

moon 0.1.20260110 (0e584ac 2026-01-10) ~/conf/vendor/moonbit/build/bin/moon
moonc v0.7.1+adb125543 (2026-01-10) ~/conf/vendor/moonbit/build/bin/moonc
moonrun 0.1.20260110 (0e584ac 2026-01-10) ~/conf/vendor/moonbit/build/bin/moonrun
moon-pilot unknown-df92511 (2026-01-10) ~/conf/vendor/moonbit/build/bin/moon-pilot

Feature flags enabled: rupes_recta
-> You're currently using the experimental build graph generator "Rupes Recta". If you encounter a problem, please verify whether it also reproduces with the legacy build (by setting NEW_MOON=0).

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingpending-triageThis issue is not confirmed yet, and/or hasn't been checked for priority

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions