#include #include void func(int in); struct Foo { int x; [[clang::noinline]] void bar(char **argv); }; int main(int argc, char **argv) { Foo f{.x = 5}; std::printf("%p\n", &f.x); f.bar(argv); return f.x; } void Foo::bar(char **argv) { std::printf("%p %p\n", argv, this); std::abort(); /// 'this' should be still accessible } void func(int in) { printf("%d\n", in); }