Skip to content

add #[unstable] or #[experimental] to std::{reflect, repr} #10239

Closed
@thestinger

Description

@thestinger

Reflection prevents using Rust to write a dynamic library with a stable ABI. There is simply no way to hide implementation details of a type, since priv isn't strictly enforced for reads.

I think we'll end up regarding allowing walking arbitrary types in release builds as a mistake, even if there currently isn't consensus that it's a bad idea. There's no problem with this functionality existing for debugging, but there are certainly drawbacks to having it as a supported general purpose feature.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions