Skip to content

Preserve aggregate initializer temporary lifetimes - #458

Draft
71iq wants to merge 3 commits into
edgcpp:mainfrom
71iq:fix/edg-29057-aggregate-temporary-lifetime
Draft

71iq wants to merge 3 commits into
edgcpp:mainfrom
71iq:fix/edg-29057-aggregate-temporary-lifetime

Conversation

@71iq

@71iq 71iq commented Nov 1, 2026

Copy link
Copy Markdown

Keep aggregate initializer elements within the full expression of the complete initialization. Preserve that state when parsing an initializer list resumes, and avoid duplicating partial cleanups already handled for an inner lifetime.

Related discussion: #294
Previously accepted by Mike Herrick as issue EDGcpfe/29057.

Adds runtime checks for local aggregates, return-value initialization, arrays, and nested aggregate initializers. The regression program exits 0 with GCC 13.

EDG build, regression testing, and test recordings are pending because the Docker development environment is unavailable. This PR is a draft until those checks are completed.

@coderabbitai

coderabbitai Bot commented Nov 1, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

@edgcpp-bot

Copy link
Copy Markdown
Collaborator

AcknowlEDG review results updated for da14753e667c:

CI other.

This branch has not been deployed

No deployments
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