struct S { int x; };

int main() {
  S s0; // okay
  {
    void ?{}(S * s, int i) { s->x = i*2; }
    void ?{}(S *s) { }
//    void ^?{}(S *s ) { }
    S s1; // error
  }
  S s2; // okay
}
