#include <stdio.h>

struct Point {
  int x;
  int y;
};

#define $r (_r)
#define fork(expr, f) ({ typeof(expr) _r = (expr); if(1) f; _r; })

int main() {
  Point p;
  Point q = fork(p, { 
    $r.x = 1; 
  });
  printf("%i", q.x);
  return 0;
}