Skip to content

Guidelines for implementation-specific rules #2040

@ehuss

Description

@ehuss

I think the authoring guide should have guidelines for how to handle implementation-specific rules. Should they ever be allowed? Where does the line get drawn?

Some current examples:

  • Is the filesystem layout part of the language or part of the implementation?
  • All the various notes we currently have regarding rustc and cargo.

In the past, there has been a sentiment from some in the project to never allow that. I largely agree with that. However, I think there will be gray areas that will be difficult to navigate with such a prohibition.

Unspecified is slightly different which is noted in #2026. This is more related to the C-style "implementation-defined behavior — unspecified behavior where each implementation documents how the choice is made".

Note that there is another category of this that is "target-specific" behavior, though I think we have resolved that in rust-lang/spec#58 which is now in the authoring guide.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Authoring guideIssues for the authoring guide and style guidelinesMetaNon-content issues (procedure, tooling, website, etc.)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions