cplusplus / cplusplus/draft

[conv.array] Missing Core UB

Open
#9,284 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

[conv.array] contains UB

An expression E of type “array of N T” or “array of unknown bound of T” can be converted to a prvalue of type “pointer to T”. If E is a prvalue, the temporary materialization conversion ([conv.rval]) is applied. If the result of E (possibly converted) is an object whose type is similar to the type of E, the result is a pointer to the first element of the array; otherwise, the behavior is undefined.

There is neither a reference to Annex F nor a Note or Footnote explaining why ignoring it.

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

Start by locating the [conv.array] wording in the draft source and read the surrounding clauses on Annex F references and notes. Determine whether the missing explanation needs a cross-reference or a note, and consider the issue complete when the concern about the undefined behavior is addressed consistently in the standard text.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
documentation
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.