[PATCH] D153536: [Clang] Implement P2169 A nice placeholder with no name
Hubert Tong via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Wed Jul 5 12:59:36 PDT 2023
hubert.reinterpretcast added inline comments.
================
Comment at: clang/test/SemaCXX/cxx2c-placeholder-vars.cpp:2
+// RUN: %clang -cc1 -fsyntax-only -verify -std=c++2c -Wunused-parameter -Wunused %s
+
+void static_var() {
----------------
hubert.reinterpretcast wrote:
> Can we have tests for:
> ```
> struct { int _, _; } a = { ._ = 0 };
> ```
>
> and
>
> ```
> struct A {
> A();
> int _, _;
> };
>
> A::A() : _(0) {}
> ```
Codegen test for
```
static union { int _ = 42; };
int &ref = _;
int foo() { return 13; }
static union { int _ = foo(); };
int main(void) { return ref; }
```
might be interesting.
I suspect that this case was missed in the committee discussion of the paper @cor3ntin.
================
Comment at: clang/test/SemaCXX/cxx2c-placeholder-vars.cpp:2
+// RUN: %clang -cc1 -fsyntax-only -verify -std=c++2c -Wunused-parameter -Wunused %s
+
+void static_var() {
----------------
hubert.reinterpretcast wrote:
> hubert.reinterpretcast wrote:
> > Can we have tests for:
> > ```
> > struct { int _, _; } a = { ._ = 0 };
> > ```
> >
> > and
> >
> > ```
> > struct A {
> > A();
> > int _, _;
> > };
> >
> > A::A() : _(0) {}
> > ```
> Codegen test for
> ```
> static union { int _ = 42; };
> int &ref = _;
> int foo() { return 13; }
> static union { int _ = foo(); };
> int main(void) { return ref; }
> ```
> might be interesting.
>
> I suspect that this case was missed in the committee discussion of the paper @cor3ntin.
Less controversial tests to consider:
```
struct A {
int _;
union { int _; };
};
struct B { union { int _, _; }; };
```
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D153536/new/
https://reviews.llvm.org/D153536
More information about the cfe-commits
mailing list