Skip to content

[Proposal] Literal expressions#3258

Draft
artemcm wants to merge 2 commits into
swiftlang:mainfrom
artemcm:LiteralExpressions
Draft

[Proposal] Literal expressions#3258
artemcm wants to merge 2 commits into
swiftlang:mainfrom
artemcm:LiteralExpressions

Conversation

@artemcm
Copy link
Copy Markdown
Contributor

@artemcm artemcm commented Apr 22, 2026

No description provided.

@rjmccall rjmccall added LSG Contains topics under the domain of the Language Steering Group new proposal Adds a new proposal document labels May 4, 2026
artemcm added 2 commits May 6, 2026 11:37
- Add Int128 and UInt128 supported types.
- Add wrapping arithmetic operators (&+, &-, &*) and masking shift operators (&<<, &>>) to the supported binary operator set.
- Add unary + to the supported prefix operators.
- Add a paragraph on operator resolution, specifying that ordinary Swift name lookup is used and the fold is rejected when the chosen operator is not a standard library operator on a standard library integer type.
- Variable references: extend eligibility list to cover @objc and @c let bindings.
- Variable references: forbid references to public, package, and open let bindings to preserve the proposal's no-ABI-impact position; mention that lifting this restriction is deferred to a
  future opt-in mechanism.
- Source compatibility: expand into two named subsections covering generic-argument-list disambiguation (Foo<(a < b, c > .d)>(x)) and value-bindings shadowing type names (let Int = 0; Array<(Int)>).
- Alternatives considered: expand the naming rationale.
@artemcm artemcm force-pushed the LiteralExpressions branch from 634847e to 12f9ff2 Compare May 8, 2026 13:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

LSG Contains topics under the domain of the Language Steering Group new proposal Adds a new proposal document

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants