-
Notifications
You must be signed in to change notification settings - Fork 6
feature - layout repr and calling-convention metadata v0 #688
Copy link
Copy link
Open
Labels
featureNew feature or requestNew feature or requestincan compilerSuggestions, features, or bugs related to the Compiler (frontend/backend/codegen)Suggestions, features, or bugs related to the Compiler (frontend/backend/codegen)incan language semanticsSuggestions, features, or bugs related to the Incan Language itself (syntax and semantics)Suggestions, features, or bugs related to the Incan Language itself (syntax and semantics)runtime / core cratesSuggestions, features, or bugs related to the `incan-core`, `incan-stdlib`, 'incan-derive` cratesSuggestions, features, or bugs related to the `incan-core`, `incan-stdlib`, 'incan-derive` cratestoolingSuggestions, features, or bugs related to the Tooling (CLI/formatter/test runner)Suggestions, features, or bugs related to the Tooling (CLI/formatter/test runner)
Milestone
Metadata
Metadata
Assignees
Labels
featureNew feature or requestNew feature or requestincan compilerSuggestions, features, or bugs related to the Compiler (frontend/backend/codegen)Suggestions, features, or bugs related to the Compiler (frontend/backend/codegen)incan language semanticsSuggestions, features, or bugs related to the Incan Language itself (syntax and semantics)Suggestions, features, or bugs related to the Incan Language itself (syntax and semantics)runtime / core cratesSuggestions, features, or bugs related to the `incan-core`, `incan-stdlib`, 'incan-derive` cratesSuggestions, features, or bugs related to the `incan-core`, `incan-stdlib`, 'incan-derive` cratestoolingSuggestions, features, or bugs related to the Tooling (CLI/formatter/test runner)Suggestions, features, or bugs related to the Tooling (CLI/formatter/test runner)
Type
Fields
Give feedbackNo fields configured for Feature.
Area
Problem statement
Freestanding targets, ABI-visible exports, Rust-facing packages, C/extern boundaries, boot protocols, and memory-mapped structures need explicit representation facts. Ordinary Incan types can remain layout-opaque, but low-level and boundary-facing code needs a way to say which layout, alignment, representation, and calling-convention facts are intentional.
The design work belongs to #683, but 0.8 also needs an implementation tracker for the first metadata and lowering slice after the RFC direction is accepted.
Proposed solution
Implement experimental layout/repr/calling-convention metadata v0 for ABI-visible declarations once the RFC direction is clear.
The first implementation should focus on metadata flow and validation before promising a stable public ABI:
IncanTypeand ABI metadata facts for explicit representation choices;Alternatives considered
Scope / acceptance criteria