[clang-tools-extra] [clangd] Extract to function: Suppress pure forwarding wrappers (PR #232654)

Aleksandr Platonov via cfe-commits cfe-commits at lists.llvm.org
Mon Oct 19 20:24:53 PDT 2026


https://github.com/ArcsinX requested changes to this pull request.

I found that the following examples doesn't work right:

```cpp
struct St {};
void f(St S, void (St::*table[2])(int), int I, int A) {
  [[(S.*table[I])(A);]] // extraction unavailable
}
```

```cpp
struct S {
   void foo(int);
   void bar(int A) {
     [[foo(A);]] // extraction is available, but should not
   }
};
```

```cpp
void foo(int A, int B = 0);
void bar(int A) {
  [[foo(A);]] // extraction is available, but should not
}
```

```cpp
int foo(int);    
int bar(int A) {
  [[return (foo(A));]] // extraction is available, but should not
}
```

```cpp
void foo(int A, int B);
void bar(int A, int B) {
  [[foo(A, A);]] // extraction is unavailable
  [[foo(B, A);]] // extraction is unavailable
}
```



https://github.com/llvm/llvm-project/pull/232654


More information about the cfe-commits mailing list