Skip to content

Conversation

@lanza
Copy link
Member

@lanza lanza commented Nov 16, 2025

Stack from ghstack (oldest at bottom):

This patch implements support for five straightforward C++ expression
types that can be directly ported from traditional CodeGen:

  1. SizeOfPackExpr - C++11 variadic template pack size operator
  2. FixedPointLiteral - Embedded fixed-point arithmetic literals
  3. MaterializeTemporaryExpr - Temporary lifetime extension for const refs
  4. ConceptSpecializationExpr - C++20 concept satisfaction checks
  5. RequiresExpr - C++20 requires expression evaluation

All implementations follow the same pattern as CGExprScalar.cpp,
generating compile-time constant values where appropriate. Each
feature includes comprehensive test coverage.

These are simple additions that increase C++ language coverage
without introducing new high-level CIR abstractions.

[ghstack-poisoned]
lanza added a commit that referenced this pull request Nov 16, 2025
This patch implements support for five straightforward C++ expression
types that can be directly ported from traditional CodeGen:

1. SizeOfPackExpr - C++11 variadic template pack size operator
2. FixedPointLiteral - Embedded fixed-point arithmetic literals
3. MaterializeTemporaryExpr - Temporary lifetime extension for const refs
4. ConceptSpecializationExpr - C++20 concept satisfaction checks
5. RequiresExpr - C++20 requires expression evaluation

All implementations follow the same pattern as CGExprScalar.cpp,
generating compile-time constant values where appropriate. Each
feature includes comprehensive test coverage.

These are simple additions that increase C++ language coverage
without introducing new high-level CIR abstractions.


ghstack-source-id: 1a523d0
Pull-Request: #1987
Copy link
Member

@bcardosolopes bcardosolopes left a comment

Choose a reason for hiding this comment

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

LGTM, thanks

lanza added a commit that referenced this pull request Nov 18, 2025
This patch implements support for five straightforward C++ expression
types that can be directly ported from traditional CodeGen:

1. SizeOfPackExpr - C++11 variadic template pack size operator
2. FixedPointLiteral - Embedded fixed-point arithmetic literals
3. MaterializeTemporaryExpr - Temporary lifetime extension for const refs
4. ConceptSpecializationExpr - C++20 concept satisfaction checks
5. RequiresExpr - C++20 requires expression evaluation

All implementations follow the same pattern as CGExprScalar.cpp,
generating compile-time constant values where appropriate. Each
feature includes comprehensive test coverage.

These are simple additions that increase C++ language coverage
without introducing new high-level CIR abstractions.


ghstack-source-id: 1a523d0
Pull-Request: #1987
@lanza lanza deleted the branch gh/lanza/2/base November 18, 2025 05:53
@lanza lanza deleted the gh/lanza/2/head branch November 18, 2025 05:53
@lanza lanza closed this Nov 18, 2025
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.

3 participants