Skip to content

fix: mvslink final link should default to max_rc=0 #22

@mgrossmann

Description

@mgrossmann

Problem

The final linkedit step (mvslink) currently defaults to max_rc=4, which
means a link that completes with RC=4 (warnings) is treated as a success.
This masks real linker warnings (e.g. IEW0241 doubly-defined symbols) that
should be investigated.

The NCAL link step inside asm-step.jcl correctly uses max_rc=4 — RC=4 is
expected there because unresolved externals are normal in NCAL mode.

The final link (make link) produces the finished load module and should be
held to RC=0. Any warning (RC=4) from the final link indicates a real problem.

Fix

Change the default max_rc for mvslink (final link) from 4 to 0.

The NCAL link inside the ASM step template is separate and unaffected.

Optional

Allow max_rc to be overridden per [[link.module]] in project.toml for
cases where a specific module is known to produce unavoidable warnings.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions