Skip to content

WIP: [std] Add Annex for undefined and IFNDR behavior #7826

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 23 commits into
base: main
Choose a base branch
from
Draft
Changes from 1 commit
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
51fa9ff
[std] Add Annex for undefined and IFNDR behavior
jensmaurer Apr 5, 2025
b2784ee
[class.cdtor] Remove duplicate UB labels
jensmaurer Apr 5, 2025
bc71c7e
[expr.delete] Remove duplicate UB label
jensmaurer Apr 11, 2025
0443f94
[conv.fpint] Remove duplicate UB label
jensmaurer Apr 11, 2025
2a90993
[ifndr.lex] Replace C++ with \Cpp
jensmaurer Apr 5, 2025
4976a9e
[ub,ifndr] Fix column alignment of comments
jensmaurer Apr 5, 2025
84d6ca1
[ifndr] Fix cross-references
jensmaurer Apr 5, 2025
28374ea
[ub] Replace non-ASCII chars
jensmaurer Apr 5, 2025
16dc9f9
[check] Handle ub/ifndr labels
jensmaurer Apr 6, 2025
8693380
[check] Exclude [ub] and [ifndr] from sibling checking for now
jensmaurer Apr 11, 2025
d06ddfe
[ub.cpp.concat] Remove universal-character-name formation from ##; no…
jensmaurer Apr 5, 2025
593a974
[ifndr] Use codeblocktu
jensmaurer Apr 6, 2025
59246eb
Rename label expr.ass.overlap to expr.assign.overlap
jensmaurer Apr 13, 2025
08d14dd
[ub.basic.stc.dynamic] Fix typo
jensmaurer Apr 14, 2025
4449b11
[ub] Fix some formatting (#7828)
jensmaurer Apr 22, 2025
8fccd0e
Remove class.dtor.not.class.type (#7835)
jensmaurer Apr 23, 2025
7eed563
Remove incorrect class.union.assignment.not.start.lifetime (#7833)
jensmaurer Apr 23, 2025
fa7976d
[ub.general,ifndr.general] Avoid hanging paragraphs by introducing 'G…
jensmaurer May 4, 2025
5e3a3df
[ub] Add many missing entries to UB annex (#7864)
notadragon May 14, 2025
9f9fcad
[conv.fpint] Remove unreferenced \ubdef that causes an undefined symb…
jensmaurer May 16, 2025
422e12b
[ub] small fixes to examples (#7890)
notadragon May 28, 2025
f4c513f
[ub] Added all missing ubdefs to bring UB annex in line with P3100R2 …
timuraudio Jun 21, 2025
925968d
[ub] Adjust to undefined behavior removed by P2621R2
jensmaurer Jul 26, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
[ub.cpp.concat] Remove universal-character-name formation from ##; no…
…w well-defined
  • Loading branch information
jensmaurer committed Jul 26, 2025
commit d06ddfe7df3a79ce40da337734a35af9adc22bb7
15 changes: 0 additions & 15 deletions source/ub.tex
Original file line number Diff line number Diff line change
Expand Up @@ -1660,21 +1660,6 @@

\rSec2[ub.cpp.concat]{The \#\# operator}

\pnum
\ubxref{cpp.concat.universal.char} \\
If a character sequence that matches the syntax of a \grammarterm{universal-character-name}
is produced by token concatenation \iref{cpp.concat}, the behavior is undefined.

\pnum
\begin{example}
\begin{codeblock}
#define GUARD_NAME ï ## _GUARD // undefined behavior, character sequence produced contains
// a \grammarterm{universal-character-name}
#define COLUMN ï ##_column // undefined behavior, character sequence produced contains
// a \grammarterm{universal-character-name}
\end{codeblock}
\end{example}

\pnum
\ubxref{cpp.concat.invalid.preprocessing.token} \\
If an invalid preprocessing token results from using the concat operator the behavior is undefined.
Expand Down
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy