https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82633
--- Comment #6 from Martin Liška <marxin at gcc dot gnu.org> --- And yes LLVM does it as one would expect: removed.cpp: 1| |class MyClass2 2| |{ 3| | public: 4| 0| void iterate() { a = 5; } 5| | 6| | int a; 7| |}; 8| | 9| |void foo() 10| 0|{ 11| 0|} 12| | 13| |int main() 14| 1|{ 15| 1| MyClass2 a; 16| 1| return 0; 17| 1|}