| #include <cstdio> | |
| #include <cstdlib> | |
| 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); } |