Skip to content

Conversation

@tlively
Copy link
Member

@tlively tlively commented Feb 11, 2026

We started validating that shared-everything is enabled when we defined shared types in #8298, but this missed the case where a non-shared
type definition used a shared abstract heap type, which has no definition. Update the validation to check that the used types are allowed by the enabled feature set as well. Refactor the validation logic into several functions to avoid duplication of logic.

We started validating that shared-everything is enabled when we defined shared types in #8298, but this missed the case where a non-shared
type definition used a shared abstract heap type, which has no definition. Update the validation to check that the used types are allowed by the enabled feature set as well. Refactor the validation logic into several functions to avoid duplication of logic.
@tlively tlively requested a review from kripken February 11, 2026 23:31
return TypeBuilder::ErrorReason::InvalidSharedType;
}
}
return std::nullopt;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
return std::nullopt;
return {};

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Below as well.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We had a rash of CI issues a while ago that were fixed by replacing {} with std::nullopt, so now I generally use the latter.

@tlively tlively enabled auto-merge (squash) February 12, 2026 00:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants