cplusplus / cplusplus/draft

[expr.prim.lambda.capture] p6 The specified behavior of an init-capture is incorrect

Open
#4,927 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

cwg not-editorial
Dominant language
TeX
Stars
221
Forks
813
Avg merge
16h 4m
Merged PRs (30d)
36

Description

An init-capture inhabits the scope of the lambda-expression's compound-statement. An init-capture without ellipsis behaves as if it declares and explicitly captures a variable of the form “auto init-capture ;”, except that:

  • [...]

Assume we have an init-capture x = x, the behavior would be as if it looks like

auto x = x;

According to [basic.scope.pdecl] p1 and [dcl.spec.auto.general] p11, the specified behavior is ill-formed.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Locate the [expr.prim.lambda.capture], [basic.scope.pdecl], and [dcl.spec.auto.general] sections in the draft sources and compare their wording. Confirm how the init-capture example conflicts with the cited rules, then update the specification so the intended behavior is stated consistently and verify the generated draft text.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers, documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.