Skip to content

consider rejecting negative lengths #67

Open
@japaric

Description

rust-lld will happily link memory.x files that contain lines like these

RAM : ORIGIN = 0x20020000, LENGTH = 1K - 2K

or even

RAM : ORIGIN = 0x20020000, LENGTH = -1K

it seems the behavior is that the value overflows because linking works even if .bss is 1MiB in size.

we could either reject these indicating that there may be a problem in the linker script or that negative lengths are not supported.

if we want to support them then I'm not sure what flip-link behavior should be. transforming either of the above to

RAM : ORIGIN = 0x20020000 - 1K, LENGTH = 1K

does not produce the same binary with a single linker pass

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    status: needs designThis feature needs design work to move forward

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions